SFTP TrueNAS: Настройка, подключение, безопасность | Гайд 2024 | AdminWiki
Timeweb Cloud — сервера, Kubernetes, S3, Terraform. Лучшие цены IaaS.
Попробовать

Настройка SFTP на TrueNAS: Полное руководство по безопасному файловому обмену

24 февраля 2026 7 мин. чтения #sftp #truenas #truenas core #truenas scale #безопасная передача файлов #настройка sftp #файловый сервер

Представь ситуацию: тебе нужно безопасно передавать файлы между серверами, но обычный FTP не подходит из-за отсутствия шифрования. Или ты хочешь организовать доступ к файлам на своём NAS для удалённой команды. Решение — SFTP (SSH File Transfer Protocol). Давай разберём, как настроить SFTP сервер на TrueNAS — мощной платформе для хранения данных.

Что такое SFTP и зачем он нужен в TrueNAS

SFTP — это протокол передачи файлов, работающий поверх SSH. В отличие от FTP, все данные (включая логины и пароли) передаются в зашифрованном виде. В контексте TrueNAS, настройка SFTP даёт тебе:

  • Безопасный доступ к файлам из любой точки мира
  • Интеграцию с существующей системой пользователей TrueNAS
  • Возможность использовать SSH ключи вместо паролей
  • Доступ через стандартные клиенты (FileZilla, WinSCP, команда sftp в Linux)
Важно: SFTP уже встроен в TrueNAS через SSH сервер. Тебе не нужно устанавливать дополнительное ПО — только правильно настроить существующие службы.

Подготовка TrueNAS к работе с SFTP

Перед настройкой SFTP на TrueNAS убедись, что у тебя есть:

  • Работающая система TrueNAS (Core или Scale)
  • Доступ к веб-интерфейсу с правами администратора
  • Созданный dataset или папка для SFTP доступа
  • Пользователь (не root) для подключения

Шаг 1: Активация SSH службы

Поскольку SFTP работает через SSH, сначала нужно включить SSH сервер:

  1. Зайди в веб-интерфейс TrueNAS
  2. Перейди в Система → Службы
  3. Найди службу SSH и включи её
  4. Нажми на шестерёнку (настройки) рядом с SSH
webui
# Альтернативно можно включить через CLI:
systemctl start sshd
systemctl enable sshd

Шаг 2: Настройка параметров SSH для SFTP

В настройках SSH службы обрати внимание на важные параметры:

Параметр Рекомендуемое значение Объяснение
Разрешить root логин ❌ НЕТ Безопасность прежде всего
Порт TCP 22 (или свой) Стандартный порт SSH
Разрешить парольную аутентификацию ✅ ДА (или только ключи) Для удобства или максимальной безопасности
Внимание: Если ты открываешь доступ из интернета, обязательно смени порт с 22 на другой (например, 2222) и рассмотри возможность использования только SSH ключей.

Создание пользователя и настройка прав для SFTP

Шаг 3: Создание пользователя TrueNAS для SFTP

Создадим специального пользователя с ограниченными правами:

  1. Перейди в Учетные записи → Пользователи → Добавить
  2. Заполни основные данные (имя пользователя, пароль)
  3. В поле "Домашний каталог" укажи путь к папке для SFTP
  4. Установи группу пользователей (например, создай группу "sftp-users")

Шаг 4: Настройка chroot для безопасности

Чтобы пользователь не мог выйти за пределы своей папки, настроим chroot jail. Отредактируй конфиг SSH:

config
# Подключись к TrueNAS через SSH (или используй Shell в веб-интерфейсе)
# Отредактируй файл /etc/ssh/sshd_config

# Добавь в конец файла:
Match Group sftp-users
    ChrootDirectory /mnt/tank/sftp/%u
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no
    PermitTunnel no

Где /mnt/tank/sftp/%u — путь к домашней директории пользователя. %u автоматически подставит имя пользователя.

Настройка папок и прав доступа

Шаг 5: Создание структуры каталогов

bash
# Создаём основную папку для SFTP
mkdir -p /mnt/tank/sftp

# Создаём папку для конкретного пользователя
mkdir -p /mnt/tank/sftp/username

# Важно: владельцем корневой папки chroot должен быть root
chown root:root /mnt/tank/sftp/username

# Внутри создаём папку для загрузок, которой будет владеть пользователь
mkdir /mnt/tank/sftp/username/uploads
chown username:sftp-users /mnt/tank/sftp/username/uploads
chmod 755 /mnt/tank/sftp/username/uploads

Шаг 6: Настройка SSH ключей (рекомендуется)

Для большей безопасности настрой аутентификацию по ключам:

bash
# На клиенте создай ключ (если нет)
ssh-keygen -t ed25519 -f ~/.ssh/truenas_sftp_key

# Скопируй публичный ключ на TrueNAS
ssh-copy-id -i ~/.ssh/truenas_sftp_key.pub username@truenas-ip

# Или создай файл вручную:
mkdir -p /mnt/tank/sftp/username/.ssh
cat публичный_ключ.pub >> /mnt/tank/sftp/username/.ssh/authorized_keys
chmod 600 /mnt/tank/sftp/username/.ssh/authorized_keys
chown -R username:sftp-users /mnt/tank/sftp/username/.ssh

Подключение к SFTP серверу TrueNAS

Из Linux/macOS (терминал)

bash
# Подключение с паролем
sftp username@truenas-ip

# Подключение с ключом
sftp -i ~/.ssh/truenas_sftp_key username@truenas-ip

# Если изменили порт
sftp -P 2222 username@truenas-ip

Из Windows (FileZilla)

  1. Открой FileZilla
  2. Меню: Файл → Менеджер сайтов → Новый сайт
  3. Хост: IP адрес TrueNAS
  4. Порт: 22 (или ваш кастомный)
  5. Протокол: SFTP - SSH File Transfer Protocol
  6. Тип входа: Нормальный
  7. Пользователь: ваш username
  8. Пароль: пароль пользователя

Проверка и диагностика подключения

Если подключение не работает, проверь:

bash
# 1. Проверь, работает ли SSH служба
systemctl status sshd

# 2. Проверь логи SSH
tail -f /var/log/auth.log
# Или в TrueNAS: Система → Логи → SSH

# 3. Проверь подключение через SSH (без SFTP)
ssh -v username@truenas-ip

# 4. Проверь права на папки
ls -la /mnt/tank/sftp/username/

# 5. Перезагрузи SSH службу
systemctl restart sshd

Частые проблемы и решения

Проблема Решение
"Permission denied" при подключении Проверь права на папку chroot (должна принадлежать root) и вложенные папки
Пользователь не может загружать файлы Убедись, что у пользователя есть права на запись в папку uploads
Подключение обрывается по таймауту Проверь фаервол и проброс портов на роутере

Расширенные настройки SFTP на TrueNAS

Ограничение скорости передачи

Чтобы SFTP не забирал всю пропускную способность:

config
# В /etc/ssh/sshd_config добавь:
Match Group sftp-users
    # Ограничение в 10 МБ/с
    ForceCommand internal-sftp -l 10240

Автоматическое монтирование SFTP как сетевого диска

В Linux можно монтировать SFTP через SSHFS:

bash
# Установи sshfs
sudo apt install sshfs  # Debian/Ubuntu

# Создай точку монтирования
mkdir ~/truenas-sftp

# Смонтируй
sshfs username@truenas-ip:/uploads ~/truenas-sftp

# Для автоматического монтирования при загрузке добавь в /etc/fstab:
username@truenas-ip:/uploads /mnt/truenas fuse.sshfs defaults 0 0
Производительность: Для больших файлов или частых операций рассмотри возможность использования NFS или SMB. SFTP лучше подходит для удалённого доступа через интернет благодаря шифрованию.

Настройка SFTP на TrueNAS — это баланс между удобством и безопасностью. Начни с базовой настройки, протестируй подключение, а затем добавь дополнительные меры безопасности (изменение порта, SSH ключи, chroot jail).

Помни: после любых изменений в sshd_config нужно перезагружать SSH службу. И всегда проверяй логи при возникновении проблем.

Поделиться:
Сохранить гайд? В закладки браузера