SeaFile
Настройка Дебиан
- download
apt install sudo
Установка на Debian 9 https://www.linuxcloudvps.com/blog/how-to-install-seafile-on-debian-9/
Seafile - это личное облачное хранилище для хранения данных в стиле Dropbox.
Сегодня мы развернём это хранилище на виртуальном сервере. В качестве гипервизора у нас ProxMox
Seafile для безопасности запустим под отдельным пользователем. В качестве БД используем MySQL 8 на отдельном сервере. Никто не мешает поднять отдельный MySQL на том же сервере, просто у меня уже есть настроенный MySQL, использую его. Дополнительно поднимем и настроим Nginx на том же сервере в качестве вторичного фронтенда. Дополнительно настроим IIS на отдельном сервере в качестве реверс-прокси сервера, первичного фронтенда и SSL терминатора. Можно и Nginx настроить с поддержкой SSL, и снова у меня уже есть IIS с настроенным получением сертификатов LetsEncrypt. Ссылки Для удобства все использованные в статье ссылки собраны здесь.
https://www.seafile.com/en/download/
Установка Ubuntu Server 18.04.2 LTS на виртуальную машину VMware
VMware - подключение нового диска в ubuntu
IIS как обратный прокси-сервер (reverse proxy)
IIS - SSL сертификат Let's Encrypt
IIS - редирект с HTTP на HTTPS плюс убираем WWW
Мануал:
Для тех кто хочет обойтись без IIS и настроиль SSL на Nginx. Плюс настройка MySQL на том же сервере:
https://www.howtoforge.com/tutorial/seafile-on-ubuntu-with-nginx/
Установка SeaFile на Debian
- download
apt-get update apt-get upgrade
Шаг 2. Установка необходимых пакетов. Установка Seafile для хранения требует некоторые модули Python, которые должны быть установлены на сервере:
- download
apt-get install python2.7 libpython2.7 python-setuptools python-imaging python-ldap python-urllib3 ffmpeg python-pip python-mysqldb python-memcache python-requests python-simplejson sqlite3 pip install pillow moviepy
Шаг 3. Установка MySql.
- download
apt-get install mysql-server
Шаг 4. Настройка MySQL
- download
sudo mysql_secure_installation - Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
Install and configure HTTP server.
- download
sudo apt-get install nginx
- download
# nano /etc/nginx/sites-enabled/default server { listen 443 ssl; server_name private.example.org ssl on; ssl_certificate certs/private.pem; ssl_certificate_key certs/private.key; ssl_dhparam dhparams.pem; proxy_set_header X-Forwarded-For $remote_addr; location / { deny all; } location /private/seafile { fastcgi_pass 127.0.0.1:8000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param HTTPS on; fastcgi_param HTTP_SCHEME https; access_log /var/log/nginx/seahub.access.log; error_log /var/log/nginx/seahub.error.log; fastcgi_read_timeout 36000; } location /seafhttp { rewrite ^/seafhttp(.*)$ $1 break; proxy_pass http://127.0.0.1:8082; client_max_body_size 0; proxy_connect_timeout 36000s; proxy_read_timeout 36000s; proxy_send_timeout 36000s; send_timeout 36000s; } location /private/seafile-media/ { alias /srv/seafile/seafile-server-latest/seahub/media/; } }
Шаг 5. Установка Seafile.
Первое, что нужно сделать, это перейти на страницу загрузки Seafile и скачать последнюю стабильную версию Seafile.
- download
mkdir /opt/seafile cd /op/seafile wget https://download.seadrive.org/seafile-server_7.0.4_x86-64.tar.gz
Распакуйте архив документа Seafile в корневой каталог на сервере:
- download
tar -xzf seafile-server_7.0.4_x86-64.tar.gz
Переходим в каталог и запускаем скрипт, который создаст необходимые базы данных и каталоги на сервере Seafile, отвечаем на все вопросы, используя свои параметры конфигурации, после того, как скрипт проверит наличие всех необходимых модулей Python:
- download
cd seafile-server-* ./setup-seafile-mysql.sh
- download
What is the name of the server? It will be displayed on the client. 3 - 15 letters or digits [ server name ] my-server What is the ip or domain of the server? For example: www.mycompany.com, 192.168.1.101 [ This server's ip or domain ] my-seafile.com Where do you want to put your seafile data? Please use a volume with enough free space [ default "/opt/seafile-data" ] Which port do you want to use for the seafile fileserver? [ default "8082" ]
После завершения установки выполните следующие команды для запуска сервера Seafile и настройте учетную запись пользователя с правами администратора:
- download
sudo ./seafile.sh start sudo ./seahub.sh start
Сервер стартовал, для того чтобы зайти на сервер зайдите по адресу http://your_domain_or_ip.com:8000 под админской учеткой, которую только то создали
Шаг 6. Правила брандмауэра. Настройка для Seafile.
Вы должны изменить правила брандмауэра, используя следующие команды:
- download
sudo firewall-cmd --zone=public --permanent --add-port=8082/tcp sudo firewall-cmd --zone=public --permanent --add-port=8000/tcp sudo firewall-cmd --reload
iptables
- download
[...] -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8000 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8082 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 10001 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 12001 -j ACCEPT [...]
Шаг 7. Получение доступа к Seafile. Seafile будет доступен по HTTP на порту 8000 по умолчанию. Откройте ваш любимый браузер и перейти на страницу http://yourdomain.ru:8000 или HTTP: сервер-IP: 8000. Введите электронную почту администратора и пароль для входа в систему, которые вы создали во время установки. Если вы используете брандмауэр, необходимо открыть порт 8000, чтобы обеспечить доступ к панели управления. Как установить Seafile на CentOS Наши поздравления! Вы успешно установили Seafile. Спасибо за использование этого учебника для установки Seafile Secure Cloud Storage на систему CentOS 7. Для получения дополнительной помощи или полезной информации, мы рекомендуем вам проверить официальный веб – сайт Seafile.