TrueNAS HTTPS настройка: как включить SSL/TLS и перейти с HTTP | AdminWiki

Настройка HTTPS в TrueNAS: Полное руководство по переходу с HTTP на безопасное соединение

14 января 2026 7 мин. чтения #HTTP #https #ssl #truenas #безопасность #веб-интерфейс #настройка #сертификаты
Содержание статьи

Представь, что твой TrueNAS сервер — это крепость с данными. По умолчанию ворота (веб-интерфейс) открыты по HTTP — это как оставить ключ под ковриком. Любой, кто перехватит трафик в твоей сети, сможет увидеть логины, пароли и управлять твоим хранилищем. Давай разберем, как превратить эти уязвимые ворота в защищенный HTTPS портал с шифрованием и доверенными сертификатами.

Зачем переходить с HTTP на HTTPS в TrueNAS?

Когда ты впервые устанавливаешь TrueNAS, веб-интерфейс доступен только по HTTP. Это создает несколько проблем:

  • Перехват учетных данных — пароли передаются в открытом виде
  • Отсутствие шифрования — все данные сессии видны как на ладони
  • Предупреждения браузера — Chrome и Firefox ругаются на небезопасное соединение
  • Невозможность удаленного доступа — многие сервисы блокируют HTTP
Внимание! Если ты используешь TrueNAS в публичной сети или открываешь доступ из интернета, переход на HTTPS — не рекомендация, а необходимость. Без него твои данные могут быть скомпрометированы за считанные минуты.

Подготовка: что нужно знать перед настройкой HTTPS

Прежде чем мы начнем, давай определимся с терминами:

Термин Описание Важность для TrueNAS
SSL/TLS Протоколы шифрования Основа безопасного соединения
Сертификат Цифровой паспорт сервера Подтверждает подлинность TrueNAS
Порт 443 Стандартный порт HTTPS Через него работает защищенный доступ

Шаг 1: Создание SSL-сертификата для TrueNAS

Есть три основных варианта сертификатов. Выбери подходящий:

Вариант A: Самоподписанный сертификат (быстро и для локальной сети)

Идеально для домашнего использования, где ты доверяешь своему серверу:

bash
# Войди в оболочку TrueNAS (Shell)
# Создаем приватный ключ и самоподписанный сертификат
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
  -keyout /mnt/tank/certs/truenas.key \
  -out /mnt/tank/certs/truenas.crt \
  -subj "/C=RU/ST=Moscow/L=Moscow/O=HomeLab/CN=truenas.local"
Замени /mnt/tank/certs/ на путь к твоему пулу данных и truenas.local на доменное имя или IP твоего сервера. Параметр -days 365 устанавливает срок действия на год.

Вариант B: Сертификат от Let's Encrypt (бесплатно и доверенный)

Если у тебя есть доменное имя и ты можешь подтвердить владение им:

bash
# Установи certbot если его нет
pkg install py39-certbot

# Получаем сертификат (DNS или HTTP challenge)
certbot certonly --standalone \
  -d nas.tvoi-domain.ru \
  --email admin@tvoi-domain.ru \
  --agree-tos \
  --non-interactive

Шаг 2: Настройка HTTPS в веб-интерфейсе TrueNAS

Теперь, когда у тебя есть сертификат, давай применим его:

  1. Зайди в System Settings → General

    В разделе "GUI" найди поля для сертификата:

  2. Загрузи сертификат и ключ

    Нажми "Upload" рядом с "SSL Certificate" и выбери твой .crt файл. Повтори для "Private Key" с .key файлом.

  3. Настрой порты

    Убедись, что:

    • WebUI HTTP Port: 80 (или другой, если занят)
    • WebUI HTTPS Port: 443 (стандартный для HTTPS)

  4. Включи HTTPS редирект

    Отметь "WebUI HTTP -> HTTPS Redirect" — это автоматически перенаправит все HTTP запросы на защищенное соединение.

  5. Сохрани и перезагрузи веб-интерфейс

    Нажми "Save", затем "Restart Web Service". Теперь твой TrueNAS доступен по https://IP-адрес:443

Шаг 3: Решение частых проблем с HTTPS в TrueNAS

Проблема 1: Браузер не доверяет самоподписанному сертификату

Решение — добавить сертификат в доверенные:

bash
# Для Linux (Ubuntu/Debian)
sudo cp truenas.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates

# Для Windows
# Дважды кликни на .crt файл → "Установить сертификат"
# Выбери "Поместить все сертификаты в следующее хранилище"
# → "Доверенные корневые центры сертификации"

Проблема 2: Ошибка "SSL_ERROR_BAD_CERT_DOMAIN"

Сертификат выдан для одного имени, а ты обращаешься по другому. Решения:

  • Используй в адресной строке именно то имя, которое указано в сертификате (CN)
  • Создай новый сертификат с правильным именем
  • Используй wildcard сертификат (*.tvoi-domain.ru)

Проблема 3: Не работает редирект с HTTP на HTTPS

Проверь конфигурацию nginx, который используется в TrueNAS:

config
# Проверь конфиг nginx
cat /usr/local/etc/nginx/nginx.conf | grep -A5 -B5 "redirect"

# Или посмотри логи
tail -f /var/log/nginx/access.log

Дополнительные настройки безопасности

Настройка HSTS (HTTP Strict Transport Security)

Чтобы браузеры всегда использовали HTTPS, добавь заголовок HSTS:

bash
# Создай или отредактируй кастомный конфиг nginx
echo 'add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;' \
  > /usr/local/etc/nginx/custom/hsts.conf

Автоматическое обновление Let's Encrypt сертификатов

Настрой cron задачу для автоматического обновления:

bash
# Создай скрипт обновления
cat > /root/renew_cert.sh << 'EOF'
#!/bin/bash
certbot renew --quiet
# Перезагрузи nginx чтобы применить новый сертификат
service nginx reload
EOF

chmod +x /root/renew_cert.sh

# Добавь в cron (каждые 2 месяца)
echo "0 3 1 */2 * /root/renew_cert.sh" | crontab -

Сравнение HTTP и HTTPS в TrueNAS

Параметр HTTP (по умолчанию) HTTPS (после настройки)
Безопасность Низкая, данные открыты Высокая, шифрование TLS
Порт 80 443
Браузер Предупреждение "Небезопасно" Замок в адресной строке
Производительность Немного быстрее Незначительные накладные расходы
Производительность: Современные процессоры имеют аппаратное ускорение для AES (шифрование в TLS), поэтому разница в скорости между HTTP и HTTPS практически незаметна, особенно в домашних условиях.

Частые вопросы (FAQ) по HTTPS в TrueNAS

Можно ли использовать HTTPS и HTTP одновременно?

Да, TrueNAS может слушать оба порта одновременно. Но рекомендуется включить редирект с HTTP на HTTPS, чтобы все соединения были защищены.

Что делать, если я забыл пароль и не могу войти по HTTPS?

Подключись напрямую к серверу (клавиатура+монитор или IPMI) и выполни в консоли: midclt call auth.reset_password \"{\"username\": \"root\", \"password\": \"новый_пароль\"}"

Нужно ли настраивать HTTPS для SMB/NFS shares?

Нет, HTTPS настраивается только для веб-интерфейса TrueNAS. Для файловых протоколов (SMB, NFS, AFP) используются другие механизмы аутентификации и шифрования.

Как проверить, что HTTPS работает правильно?

Используй онлайн-инструменты типа SSL Labs Test или выполни команду: openssl s_client -connect truenas.local:443 -servername truenas.local. Убедись, что в выводе есть "Verify return code: 0 (ok)".

Заключение

Настройка HTTPS в TrueNAS — это не просто "галочка" в настройках безопасности. Это фундаментальное улучшение защиты твоих данных. Потратив 30 минут сегодня на настройку SSL/TLS, ты предотвращаешь потенциальные утечки данных в будущем.

Помни: даже если твой TrueNAS находится в локальной сети, переход на HTTPS защищает от атак "человек посередине" (MITM) и повышает общий уровень безопасности. А с бесплатными сертификатами от Let's Encrypt этот переход вообще не требует финансовых затрат.

Финальный совет: После настройки HTTPS обязательно протестируй доступ с разных устройств и браузеров. Убедись, что автоматический редирект работает, закладки обновлены, и все сервисы, которые обращаются к API TrueNAS, используют новый HTTPS адрес.
Поделиться:
Сохранить гайд? В закладки браузера