Zyxel Network-Attached Storage NAS - Как импортировать или сгенерировать сертификат на хранилище Zyxel NAS

Еще есть вопросы? Отправить запрос
В этой статье представлен краткий учебник по созданию новых самоподписанных сертификатов на NAS для устранения ошибок, связанных с SSL, а также руководство по генерации и импорту глобально доверенных сертификатов Let's Encrypt в Arch Linux для избежания ошибок «Соединение не защищено», обеспечивая беспрепятственный и безопасный доступ к WebGUI.

Уведомление о прекращении поддержки продукта: С сожалением сообщаем, что продукт "Устройства Zyxel NAS" достиг конца своего жизненного цикла. В связи с этим техническая поддержка данного устройства может быть ограничена. Пожалуйста, имейте в виду, что любое вмешательство или использование устройства, уже вышедшего из эксплуатации, осуществляется на ваш собственный риск. Список устаревших устройств, включая даты их снятия с производства и окончания поддержки, вы можете найти по ссылке ниже. На этой странице также доступна последняя обновлённая версия для вашего устройства: End of Life

Генерация оригинальных самоподписанных сертификатов на Zyxel NAS

Откройте командную строку. Для подключения используйте следующую команду с адресом вашего NAS и подтвердите соединение, если будет запрос.

$ ssh root@192.168.1.33

Выполните следующие команды для восстановления репозитория сертификатов к настройкам по умолчанию (пропустите первую строку, чтобы только сгенерировать новые сертификаты). Вас попросят ввести информацию о сертификате. Значения по умолчанию подходят, поэтому просто нажимайте Enter, пока не вернётесь к командной строке.

# find /etc/zyxel/cert -type f -delete
# openssl req -newkey rsa:2048 -nodes -keyout /etc/zyxel/cert/key/default_key.cer -x509 -days 3650 -out /etc/zyxel/cert/default.cer

Вот и всё! Можете выйти из командной строки. Возможно, потребуется перезагрузить NAS для применения изменений.

# exit

Создание сертификатов Let's Encrypt для Zyxel NAS

Примечание: Пожалуйста, имейте в виду, что это обходной путь, и у него есть небольшой побочный эффект: при нажатии на вкладку SSL в Панели управления WebUI блокируется с ошибкой 500. Если это случится, вы можете обновить страницу и продолжить работу. Поскольку эта вкладка не предоставляет функционала, необходимого при использовании данного руководства, это довольно незначительный недостаток по сравнению с преимуществами использования сертификата Let's Encrypt. 

Убедитесь, что ваш Arch обновлён до последней версии:

$ sudo pacman -Syu
  • Установите certbot — клиент ACME, который автоматизирует процесс создания сертификата:
$ sudo pacman -S certbot
  • Убедитесь, что ваш Arch может принимать соединения на порт 80, при необходимости настройте переадресацию порта 80 на вашу машину. Создайте сертификат с помощью следующей команды:
$ sudo certbot certonly --standalone --preferred-challenges http -d [yournasaddress.zyxel.me]

Примечание: если вы сталкиваетесь с ошибкой «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!

sftp> exit

После перезагрузки войдите и проверьте результат. Убедитесь, что SSL включён в Панели управления > Сеть > TCP/IP > Веб-конфигуратор. При желании вы можете принудительно включить использование HTTPS на этой вкладке.
secure_NAS.png

Обновление сертификатов 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 Community)​​ (Zyxel Community)
  • Появляется ошибка "challenge failed" для домена [mydomain]!
    Эта ошибка обычно означает, что сервер CA не может достучаться до вашего Arch для проверки подлинности. Проверьте, что порт 80 переадресован на вашу машину Arch и что на порту 80 не запущен другой сервис (например, Apache).
  • Я импортировал сертификаты, теперь мой NAS не отвечает ни по http, ни по https!
    Это указывает на проблему с запуском веб-сервера NAS, скорее всего, вы ошиблись при загрузке сертификатов на NAS. Однако паниковать не нужно, доступ по SSH/SFTP должен сохраняться.
  • Я не очень хочу использовать терминал для работы с файлами, есть другие варианты?
    Если вам удобнее, вы можете использовать файловый менеджер Gnome Nautilus для запуска сессии SFTP с NAS для копирования файлов.
    nautilus.png
    Если у вас не установлен Gnome (возможно, вы используете Live CD Arch), есть терминальный файловый менеджер с поддержкой SFTP — Midnight Commander, который должен работать даже на минимальной установке Arch. Чтобы установить и запустить его с правами root, введите:

    $ sudo pacman -S mc
    $ sudo mc

Внимание: Устройства Zyxel NAS достигли конца периода поддержки. Мы понимаем, что это может быть неудобно, поэтому для вашей помощи посетите наш форум или изучите раздел NAS в нашей базе знаний для получения всей информации. Также вы можете найти список устаревших устройств и сроки их поддержки по ссылке ниже.

Большое спасибо за ваше понимание и терпение!

Статьи в этом разделе

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 1 из 5
Поделиться

Комментарии

0 комментариев

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