Важное уведомление: |
Создание сертификатов Let's Encrypt для Zyxel NAS
Примечание: Пожалуйста, имейте в виду, что это обходной путь, и поэтому у него есть один небольшой побочный эффект: когда вы переходите на вкладку SSL в панели управления, WebUI блокируется с ошибкой 500. В этом случае вы можете обновить страницу и продолжить работу. Поскольку эта вкладка не предлагает никаких функций, необходимых при использовании данного руководства, это довольно незначительный недостаток по сравнению с преимуществами использования сертификата Let's Encrypt.
Имейте в виду: Запуск Arch Linux или другой среды ОС на базе Linux (команды могут немного отличаться, если вам удобнее работать с Ubuntu, например, вы можете получить подсказку в этой статье, где описан аналогичный подход для USG, поскольку и Ubuntu, и Raspbian основаны на Debian). Установка среды Linux не входит в рамки этой статьи, обратитесь к руководству по установке дистрибутива по вашему выбору. Однако в случае с Arch вам будет достаточно просто загрузить Live CD и начать работу прямо с ramdisk.
Убедитесь, что ваш Arch работает в актуальном режиме:
$ sudo pacman -Syu
- Установите certbot, клиент ACME, который автоматизирует процесс создания сертификатов:
$ sudo pacman -S certbot
- Убедитесь, что ваш Arch может слушать порт 80, если необходимо, пробросьте порт 80 на вашу машину. Создайте сертификат с помощью следующей команды:
Примечание: если вы столкнулись с ошибкой "challenge failed for domain", серверы Let's Encrypt не могут связаться с вашей машиной. Пожалуйста, проверьте, что переадресация портов включена, и убедитесь, что ни одна служба не запущена на порту 80 вашего Arch. Вы можете временно остановить соответствующую службу с помощью команды:
$ sudo systemctl stop httpd
- После этого не стесняйтесь включить его снова
$ sudo systemctl start httpd
- Теперь вы можете перенаправить порт 80 на NAS, а также порт 443, если вы его еще не установили.
Загрузка сертификатов Let's Encrypt для Zyxel NAS
Ваш сертификат готов к загрузке в NAS, в этом примере мы будем использовать SFTP-клиент на основе оболочки. Однако существует широкий набор инструментов для достижения этой цели, если вы предпочитаете более наглядный подход, смотрите раздел Устранение неполадок, где описаны другие варианты работы с SFTP в Arch. Пожалуйста, помните, что если вы решили переместить сертификаты из защищенного хранилища, убедитесь, что они удалены или защищены после этого! Никогда не передавайте свой закрытый ключ!
Подключитесь к NAS с правами root, здесь мы будем использовать sudo, иначе мы не сможем прочитать сертификаты из защищенного хранилища:
$ sudo sftp root@[yournasaddress.zyxel.me]
Выполните следующие команды, чтобы скопировать сертификаты в соответствующее место. В процессе мы будем делать резервные копии, чтобы вы могли восстановить оригинальные сертификаты, если что-то пойдет не так. Пожалуйста, будьте внимательны, вы работаете под правами root, и любая команда будет обработана без запроса. Дважды проверьте опечатки. Вы также можете завершать имена файлов и каталогов, нажимая Tab после первых нескольких букв, это также поможет вам избежать опечаток. Также помните, что имена чувствительны к регистру как в NAS, так и в Arch или любом другом Linux!
sftp> rename /etc/zyxel/cert/default.cer /etc/zyxel/cert/default.cer.bak
sftp> put /etc/letsencrypt/live/[yournasaddress.zyxel.me]/cert.pem /etc/zyxel/cert/default.cer
sftp> rename /etc/zyxel/cert/key/default_key.cer /etc/zyxel/cert/key/default_key.cer.bak
sftp> put /etc/letsencrypt/live/[yournasaddress.zyxel.me]/privkey.pem /etc/zyxel/cert/key/default_key.cer
Вот и все! Вы можете выйти из SFTP с помощью команды exit и перезагрузить NAS!
# find /etc/zyxel/cert -type f -delete0
# openssl req -newkey rsa:2048 -nodes -keyout /etc/zyxel/cert/key/default_key.cer -x509 -days 3650 -out /etc/zyxel/cert/default.cer
После перезагрузки вы можете войти в систему и проверить результаты. Убедитесь, что SSL включен в Панели управления > Сеть > TCP/IP > Веб-конфигуратор. При желании на этой вкладке можно принудительно включить использование HTTPS.
Обновление сертификатов Let's Encrypt для Zyxel NAS
По своей конструкции сертификаты Let's Encrypt довольно недолговечны. Сертификаты действительны в течение 90 дней со дня выдачи. Чтобы обновить сертификат, необходимо снова пробросить порты в Arch Linux, повторно выполнить команду certbot и снова загрузить его в NAS.
Устранение неполадок
- Общие проблемы и их решения: Некоторые пользователи столкнулись с проблемой, когда при попытке импортировать сертификат NAS выдавал сообщение "500 Internal Server Error". Решения включали проверку формата сертификата и правильное размещение всех необходимых файлов в каталоге NAS. Другие специалисты предлагали проверить конфигурацию Apache и вручную перезапустить веб-сервер, чтобы решить эти проблемы (Zyxel Community) (Zyxel Community).
- Автоматизация обновления сертификатов: Автоматизация обновления сертификатов Let's Encrypt была еще одной часто обсуждаемой темой. Пользователи поделились сценариями, которые автоматически копируют обновленные сертификаты в NAS и перезапускают веб-службы. Это предполагает настройку энергонезависимого хранилища для корневого каталога и конфигурирование SSH-ключей для неинтерактивного входа в систему (Zyxel Community).
- Самоподписанные сертификаты: Некоторые пользователи, полагающиеся на самоподписанные сертификаты, столкнулись с проблемами доступа к веб-интерфейсу NAS после включения HTTPS. Часто рекомендуется временно отключить HTTPS с помощью команд SSH, если вы не можете получить доступ к веб-интерфейсу, как подробно описано в разделе об изменении конфигурационных файлов Apache (Zyxel Community).
-
Установка и управление сертификатами: Многие пользователи столкнулись с проблемой установки SSL-сертификатов на устройствах Zyxel NAS. Распространенной проблемой является возврат NAS к самоподписанному сертификату после перезагрузки. Чтобы решить эту проблему, пользователи предложили удалить файл
CA.cerв каталоге/etc/zyxel/cert, что заставит NAS использовать вместо него файлdefault.cer. Это помогло пользователям успешно применять сертификаты от таких авторитетов, как Let's Encrypt (Сообщество Zyxel) (Сообщество Zyxel) -
Я получаю сообщение "challenge failed" для домена [mydomain]!
Эта ошибка обычно означает, что ваш Arch не может быть достигнут сервером ЦС для проверки подлинности. Пожалуйста, проверьте, перенаправлен ли порт 80 на вашу машину Arch и не запущена ли какая-либо служба на порту 80 (apache?). -
Я импортировал сертификаты, но теперь мой NAS не отвечает ни на http, ни на https!
Это указывает на то, что веб-сервер NAS столкнулся с проблемой во время запуска, скорее всего, вы что-то перепутали при загрузке сертификатов в NAS. Однако не стоит паниковать, SSH/SFTP должен работать. Если вам не удается добиться рабочих условий, обратитесь к этой статье. -
Мне не очень хочется использовать Терминал для работы с файлами, есть другие предложения?
Если вам так удобнее, вы можете использовать файловый проводник Nautilus из Gnome для запуска SFTP-сессии с NAS для копирования файлов.
Если у вас не установлен Gnome (возможно, вы находитесь на Live CD Arch), есть Terminal orthodox commander с поддержкой SFTP под названием Midnight Commander, который должен работать даже на довольно пустой установке Arch, чтобы установить и запустить от имени root, введите:
# find /etc/zyxel/cert -type f -delete
1
# openssl req -newkey rsa:2048 -nodes -keyout /etc/zyxel/cert/key/default_key.cer -x509 -days 3650 -out /etc/zyxel/cert/default.cer
Просто предупреждение: Устройства Zyxel NAS достигли конца периода поддержки. Мы понимаем, что это может быть неудобно, поэтому, чтобы помочь вам, пожалуйста, посетите наш форум или изучите раздел NAS в нашей базе знаний, чтобы узнать все подробности. Список устаревших устройств и сроки их поддержки вы также можете найти по ссылке ниже.
- Конец срока службы (EOL/EoL) / конец поддержки (EOS/EoS)
- Форум сообщества Персональное облачное хранилище
Большое спасибо за ваше понимание и терпение!

Комментарии
0 комментариевВойдите в службу, чтобы оставить комментарий.