File Browser TrueNAS: Установка, настройка, Docker и ручной монтаж | AdminWiki
Timeweb Cloud — сервера, Kubernetes, S3, Terraform. Лучшие цены IaaS.
Попробовать

File Browser в TrueNAS: Полное руководство по установке и настройке веб-файлового менеджера

08 февраля 2026 9 мин. чтения #docker #file browser #nas #truenas #веб-интерфейс #настройка #файловый менеджер
Содержание статьи

Представь, что тебе нужно управлять файлами на твоём NAS через браузер, но встроенный файловый менеджер TrueNAS слишком простой или его нет. File Browser — это мощное решение, которое превращает твой сервер в полноценный облачный файловый менеджер. Давай разберем, как установить и настроить его на TrueNAS Scale и Core.

Что такое File Browser и зачем он нужен в TrueNAS?

File Browser — это легковесный веб-файловый менеджер с поддержкой множества пользователей, ролей, загрузки файлов, просмотра изображений, видео и даже редактирования текстовых файлов. В отличие от стандартных методов доступа (SMB/NFS), он работает через браузер и не требует установки дополнительного ПО на клиенте.

Ключевые преимущества: Веб-интерфейс, мультипользовательская система, поддержка Docker, простые разрешения, просмотр медиафайлов прямо в браузере.

Сравнение методов установки File Browser

Метод TrueNAS Scale TrueNAS Core Сложность
Официальное приложение ✅ Поддерживается ❌ Не поддерживается Низкая
Docker контейнер ✅ Рекомендуется ⚠️ Через Jail Средняя
Ручная установка ⚠️ Возможно ⚠️ Сложно Высокая

Установка File Browser на TrueNAS Scale через Docker

Это самый простой и рекомендуемый способ. TrueNAS Scale основан на Linux и имеет встроенную поддержку Docker через систему приложений.

Шаг 1: Подготовка dataset для File Browser

Сначала создай отдельный dataset для хранения конфигурации и данных File Browser:

bash
# Путь к dataset (пример)
/mnt/pool/apps/filebrowser
/mnt/pool/data/filebrowser_data
Важно: Настрой правильные разрешения (ACL). Для простоты можно установить владельца apps (UID 568) и группу apps (GID 568).

Шаг 2: Установка через TrueNAS Apps

  1. Перейди в AppsDiscover Apps
  2. Найди File Browser в каталоге или используй ручную установку
  3. Нажми Install и заполни конфигурацию:
yaml
# Пример конфигурации docker-compose для TrueNAS
version: '3.8'
services:
  filebrowser:
    image: filebrowser/filebrowser:latest
    container_name: filebrowser
    restart: unless-stopped
    ports:
      - "8080:80"  # Внешний порт:внутренний
    volumes:
      - /mnt/pool/data:/srv      # Твои данные
      - /mnt/pool/apps/filebrowser/database.db:/database.db
      - /mnt/pool/apps/filebrowser/filebrowser.json:/config/filebrowser.json
    environment:
      - FB_BASEURL=/filebrowser  # Если используешь reverse proxy

Шаг 3: Настройка File Browser после установки

После запуска контейнера открой браузер и перейди по адресу http://truenas-ip:8080. Первый вход:

  • Логин: admin
  • Пароль: admin (сразу поменяй!)
  • Укажи корневой путь к файлам (например, /srv)

Ручная установка File Browser на TrueNAS Core

На TrueNAS Core (FreeBSD) Docker недоступен напрямую, но можно использовать Jail или ручную сборку.

Способ 1: Установка в Jail (рекомендуется)

bash
# Создай Jail
# Через веб-интерфейс: Jails → Add
# Или через CLI:
iocage create -n "filebrowser" -r 13.2-RELEASE ip4_addr="vnet0|192.168.1.100/24"

# Зайди в Jail
iocage console filebrowser

# Установи необходимые пакеты
pkg update && pkg upgrade -y
pkg install nano wget

# Скачай и установи File Browser
# Для FreeBSD/amd64:
wget https://github.com/filebrowser/filebrowser/releases/download/v2.23.0/freebsd-amd64-filebrowser.tar.gz
tar -xzf freebsd-amd64-filebrowser.tar.gz
mv filebrowser /usr/local/bin/
chmod +x /usr/local/bin/filebrowser

Способ 2: Настройка через конфигурационный файл

json
{
  "port": 8080,
  "baseURL": "",
  "address": "0.0.0.0",
  "log": "stdout",
  "database": "/config/database.db",
  "root": "/mnt/data",
  "allowCommands": true,
  "allowEdit": true,
  "allowNew": true,
  "commands": [
    "git",
    "svn"
  ]
}

Создай systemd сервис для автозапуска:

ini
[Unit]
Description=File Browser
After=network.target

[Service]
User=filebrowser
Group=filebrowser
ExecStart=/usr/local/bin/filebrowser -c /path/to/config/filebrowser.json
Restart=on-failure

[Install]
WantedBy=multi-user.target

Настройка безопасности и reverse proxy

Никогда не оставляй File Browser доступным напрямую без защиты. Вот как настроить безопасность:

1. Настройка аутентификации в File Browser

bash
# Смена пароля администратора
filebrowser users update admin --password новый_сложный_пароль

# Создание нового пользователя
filebrowser users add user1 --password пароль --perm.create --perm.delete --perm.download

# Ограничение доступа к определенным папкам
filebrowser users update user1 --scope "/mnt/data/user1,/mnt/data/shared"

2. Настройка Nginx как reverse proxy

nginx
server {
    listen 443 ssl http2;
    server_name files.yourdomain.com;
    
    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;
    
    location /filebrowser/ {
        proxy_pass http://localhost:8080/;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        
        # Для правильной работы WebSocket
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
    
    # Блокировка прямого доступа к порту 8080
    location = / {
        return 301 https://$server_name/filebrowser;
    }
}

3. Настройка fail2ban для защиты от брутфорса

bash
# Создай фильтр для fail2ban
cat > /etc/fail2ban/filter.d/filebrowser.conf << EOF
[Definition]
failregex = ^.*Username or password incorrect.* ip=
ignoreregex =
EOF

# Добавь jail конфигурацию
cat >> /etc/fail2ban/jail.local << EOF
[filebrowser]
enabled = true
port = http,https,8080
filter = filebrowser
logpath = /var/log/filebrowser.log
maxretry = 5
bantime = 3600
EOF

Интеграция с SMB/NFS shares TrueNAS

Чтобы File Browser видел твои общие папки TrueNAS, нужно правильно смонтировать их в контейнере или Jail:

docker-compose
services:
  filebrowser:
    # ... остальная конфигурация
    volumes:
      - /mnt/pool/smb_share:/srv/smb
      - /mnt/pool/nfs_share:/srv/nfs
    # Для правильных разрешений в Linux контейнере
    environment:
      - PUID=1000
      - PGID=1000
    # Или запусти от root (небезопасно!)
    # user: "root"
Проблема с permissions: Если файлы в SMB/NFS shares принадлежат другим пользователям, используй force user в настройках SMB TrueNAS или настрой правильные UID/GID в контейнере.

Автоматическое резервное копирование конфигурации

Не теряй настройки пользователей! Настрой автоматический бэкап:

bash
#!/bin/bash
# backup-filebrowser.sh
BACKUP_DIR="/mnt/pool/backups/filebrowser"
CONFIG_DIR="/mnt/pool/apps/filebrowser"
DATE=$(date +%Y%m%d_%H%M%S)

# Создай бэкап базы данных и конфига
cp $CONFIG_DIR/database.db $BACKUP_DIR/database_$DATE.db
cp $CONFIG_DIR/filebrowser.json $BACKUP_DIR/filebrowser_$DATE.json

# Сожми и удали старые бэкапы (храни 30 дней)
tar -czf $BACKUP_DIR/filebrowser_backup_$DATE.tar.gz $BACKUP_DIR/*_$DATE.*
find $BACKUP_DIR -name "*.db" -mtime +30 -delete
find $BACKUP_DIR -name "*.json" -mtime +30 -delete
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete

# Добавь в crontab: 0 2 * * * /path/to/backup-filebrowser.sh

Оптимизация производительности File Browser

  • Кэширование: Включи кэш в настройках File Browser для больших директорий
  • Лимиты: Установи лимиты на размер загружаемых файлов в конфиге
  • База данных: Регулярно выполняй VACUUM для SQLite базы
  • Ресурсы Docker: Ограничь CPU/RAM для контейнера в настройках TrueNAS
json
{
  "port": 8080,
  "cache": {
    "enable": true,
    "duration": 300,
    "maxSize": 100
  },
  "upload": {
    "maxSize": 1073741824,  # 1GB
    "chunkSize": 10485760   # 10MB
  }
}

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

Проблема 1: "Permission denied" при доступе к файлам

Решение: Проверь UID/GID контейнера и владельца файлов:

bash
# В контейнере:
id
# На хосте:
ls -la /mnt/pool/data
# Синхронизируй UID/GID через переменные окружения PUID/PGID

Проблема 2: File Browser не видит вложенные папки

Решение: Проверь точки монтирования в Docker и права рекурсивно:

bash
# Рекурсивно смени владельца
chown -R 568:568 /mnt/pool/data
# Или добавь ACL
setfacl -R -m u:568:rx /mnt/pool/data

Проблема 3: Медленная работа с большими директориями

Решение: Включи кэширование и увеличь лимиты:

bash
filebrowser config set --cache.enable true
filebrowser config set --cache.duration 600
filebrowser config set --cache.maxSize 500

Альтернативы File Browser для TrueNAS

Если File Browser не подходит, рассмотри эти варианты:

  • Nextcloud: Полноценное облако с календарем, контактами
  • Seafile: Оптимизирован для синхронизации файлов
  • Pydio Cells: Корпоративное решение с аудитом
  • FileRun: Коммерческий продукт с расширенными функциями
  • Встроенный файловый менеджер TrueNAS: Базовый функционал в разделе Datasets
Итог: File Browser — идеальный баланс между простотой и функциональностью для домашнего использования и малого бизнеса. На TrueNAS Scale установка занимает 10 минут через Docker, на Core потребуется немного больше времени через Jail.

Часто задаваемые вопросы (FAQ)

Можно ли установить File Browser на TrueNAS Core без Jail?

Технически да, но это сложно и не рекомендуется. FreeBSD не имеет нативной поддержки Docker, а ручная сборка потребует компиляции Go и зависимостей. Jail обеспечивает изоляцию и безопасность, используй его.

Как обновить File Browser в Docker контейнере?

В TrueNAS Scale: Apps → Installed Applications → выбери File Browser → Update. Или через CLI: docker-compose pull && docker-compose up -d. Не забудь сделать бэкап database.db перед обновлением.

File Browser тормозит при работе с тысячами файлов. Что делать?

1) Включи кэширование в настройках. 2) Увеличь ресурсы контейнера (CPU/RAM). 3) Разбей большие директории на подпапки. 4) Рассмотри использование более производительного решения типа Seafile для очень больших коллекций.

Как настроить автоматическую загрузку файлов по расписанию?

File Browser не имеет встроенного планировщика. Используй cron на хосте TrueNAS или внутри контейнера: crontab -e и добавь задание для wget/curl, которое загружает файлы в директорию, доступную File Browser.

Безопасно ли открывать File Browser в интернет?

Только с дополнительной защитой: 1) Обязательно используй HTTPS (через reverse proxy с Let's Encrypt). 2) Включи fail2ban. 3) Используй сложные пароли и 2FA если возможно. 4) Ограничь доступ по IP. 5) Регулярно обновляй.

Теперь у тебя есть полное руководство по установке и настройке File Browser на TrueNAS. Начни с Docker на Scale — это самый быстрый путь к удобному веб-доступу к твоим файлам. Не забывай про безопасность и регулярные бэкапы!

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