Как самохостить File Browser: Полный гайд по веб-файловому менеджеру
Настройка File Browser для самостоятельного хостинга. Пошаговая инструкция по установке через Docker, конфигурации прав доступа, интеграции с Nexcloud и PLEX, а также безопасности на базе вашей домашней серверной.
Обновление системы и установка утилит
Перед установкой File Browser необходимо обновить пакеты системы и установить базовые утилиты для загрузки файлов.
sudo apt update && sudo apt upgrade -y
sudo apt install curl wget git -yУстановка File Browser
Использование официального скрипта для автоматической установки, определения архитектуры и создания системного пользователя.
curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bashСоздание директорий для данных
Создание папок для хранения базы данных (конфигурации) и файлов, которые будут доступны через веб-интерфейс.
sudo mkdir -p /var/lib/filebrowser
sudo mkdir -p /srv/filebrowserНазначение владельца директорий
Предоставление прав пользователю 'filebrowser' (созданному скриптом установки) на управление созданными директориями.
sudo chown -R filebrowser:filebrowser /var/lib/filebrowser
sudo chown -R filebrowser:filebrowser /srv/filebrowserСоздание службы Systemd
Создание файла службы для управления File Browser (автозапуск, перезапуск при сбоях). Укажите путь к корневой папке файлов в параметре -r.
sudo tee /etc/systemd/system/filebrowser.service > /dev/null <<EOF
[Unit]
Description=File Browser Service
After=network.target
[Service]
User=filebrowser
Group=filebrowser
Type=simple
ExecStart=/usr/local/bin/filebrowser \
-d /var/lib/filebrowser/database.db \
-r /srv/filebrowser \
-a 0.0.0.0 \
-p 8080
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
EOFЗапуск службы File Browser
Перезагрузка конфигурации systemd, включение службы для автозапуска при загрузке системы и её запуск.
sudo systemctl daemon-reload
sudo systemctl enable filebrowser
sudo systemctl start filebrowserУстановка Nginx и настройка обратного прокси
Установка веб-сервера Nginx для маршрутизации трафика с домена на локальный порт File Browser (8080).
sudo apt install nginx -y
sudo tee /etc/nginx/sites-available/filebrowser > /dev/null <<EOF
server {
listen 80;
server_name ваш_домен.example.com;
location / {
proxy_pass http://127.0.0.1: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;
}
}
EOF
sudo ln -s /etc/nginx/sites-available/filebrowser /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginxУстановка Certbot и получение SSL-сертификата
Установка Certbot и плагина для Nginx для автоматического получения бесплатного SSL-сертификата Let's Encrypt.
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d ваш_домен.example.comПервоначальный вход и смена пароля
Вход в веб-интерфейс по адресу https://ваш_домен.example.com. Логин и пароль по умолчанию: admin/admin. Смена пароля обязательна для безопасности.
После входа перейдите в раздел Settings -> Users -> Найдите admin -> Change PasswordНастройка Public URL (опционально)
Если File Browser работает за обратным прокси, рекомендуется указать публичный URL в настройках, чтобы ссылки на скачивание работали корректно.
sudo filebrowser config set --public-url "https://ваш_домен.example.com" -d /var/lib/filebrowser/database.db