Как настроить FTP на Ubuntu 20.04 LTS

Как настроить FTP на Ubuntu 20.04 LTS Хостинг

Время от времени все мы сталкиваемся с необходимостью передачи файлов и каталогов со своего компьютера на виртуальный сервер. Ниже посмотрим, как можно организовать копирование файлов с локальной рабочей станции, используя VPS, работающий под управлением операционной системы семейства Windows Server.

Файлы, к которым можно обратиться из браузера (то есть которые должны быть видны и доступны в интернете), по умолчанию должны находиться в одной из папок вида /www/ваш_домен

Сразу после оформления и оплаты заказа на услуги хостинга будет создана такая папка — /www/ваш_домен , и все файлы, которые вы загрузите в нее, будут доступны всем по адресу http://ваш_домен/имя_файла.

В любом случае, если вы сомневаетесь, в какую папку выкладывать файлы, вы всегда можете посмотреть это в своей панели в разделе «WWW Домены» где вы увидите значение параметра «Директория». Там же вы можете добавить любой другой домен, который автоматически создаст соответствующую папку на сервере, куда в последствии вам и нужно будет закачать файлы, чтобы они были доступны в сети интернет.

Содержание
  1. Введение
  2. Скачать Pscp
  3. Установка Pscp
  4. Помощь и Настройки
  5. Скачать или загрузить файл с удаленного сервера
  6. Скачать или загрузить несколько файлов с удаленного сервера
  7. Загрузить или поместить файл на удаленный сервер
  8. Загрузить несколько файлов на удаленный сервер
  9. Скачать каталоги рекурсивно с удаленного сервера
  10. Загрузить каталоги  рекурсивно на удаленный сервер
  11. Как загрузить файлы на веб-сервер
  12. Сводка
  13. SFTP (Безопасный Протокол Передачи Файлов)
  14. Вход в систему
  15. Здесь и там: локальный и удалённый просмотр
  16. Загрузка на сервер
  17. Как узнать, что они online?
  18. Rsync
  19. Rsync GUI tools
  20. GitHub
  21. Other methods to upload files
  22. Загрузка файлов на сервер
  23. Как загрузить файлы на хостинг?
  24. Добавление файлов непосредственно через админ-панель.
  25. Используя ISPmanager
  26. Используя cPanel
  27. Добавление файлов через FTP-аккаунт
  28. Настройка FileZilla для работы с FTP на хостинге
  29. С помощью файлового менеджера хостинга c WordPress
  30. Тестирование функциональности синхронизации файлов и их совместного использования
  31. Что делать, если файл не загружается на хостинг или загрузился пустой?
  32. Настройка сервера Seafile
  33. Проверка подключения к FTP-серверу
  34. Как зайти на свой сайт по протоколу FTP через FTP-клиент?
  35. Копирование файлов через RDP-подключение
  36. Как мне распаковать архив на сервере?
  37. Настройка брандмауэра
  38. Обеспечение безопасности Apache с помощью Let’s Encrypt
  39. Установка зависимостей и загрузка Seafile
  40. Установка веб-сервера Apache
  41. Установка MariaDB
  42. С помощью FTP клиента
  43. Настройка учётной записи FTP-пользователя
  44. Создание баз данных для компонентов Seafile
  45. Как закачать файлы на сервер используя панель управления ISPmanager?
  46. Настройка веб-сервера Apache
  47. Установка FTP-сервера
  48. Активизация старта сервера Seafile при загрузке системы
  49. Как закачать файлы на сервер?
  50. Изменение конфигурации Seafile и запуск сервисов
  51. Защита передачи данных при помощи SSL/TLS
  52. Настройка виртуального хоста
  53. Заключение
  54. Заключение

Введение

Для того, чтобы залить на виртуалку данные с локальной рабочей станции, существует несколько простых методов.

Во-первых, вы можете скопировать необходимую информацию с использованием протокола FTP. Собственно, название данного протокола так и расшифровывается – протокол передачи файлов (File Transfer Protocol). То, как организовать передачу файлов по FTP, описано в посвящённой этому статье нашего справочника.

Во-вторых, для обмена файлами можно использовать разнообразные облачные хранилища. Но, к сожалению, данный способ в бесплатном исполнении подойдёт только для файлов, по размеру подпадающих под ограничения используемого облака в версии, не требующей оплаты. Но, в общем, способ передачи данных через облако используется довольно часто.

Как настроить FTP на Ubuntu 20.04 LTS

FTP – это протокол, который позволяет передавать файлы по сети от одного узла другому. Данный протокол является самым старым протоколом прикладного уровня, который появился намного раньше, чем HTTP или TCP/IP. С помощью протокола FTP могут быть организованы соединения с удаленными серверами для просмотра и передачи необходимых данных. При подключении к серверам и рабочим станциям при помощи протокола FTP необходимо использовать специальные приложения, которые именуются FTP-клиентами. Далее о том, как настроить работу с протоколом FTP на сервере, работающем под управлением Ubuntu 20.04 LTS.

Для того чтобы развернуть свой FTP-сервер на Ubuntu 20.04 LTS, необходимо:

  • установить FTP-сервер с поддержкой SSL для безопасного подключения;
  • настроить учетную запись FTP-пользователя;
  • проверить подключение к FTP-серверу.

В этом материале мы поговорим с вами о том, какие есть способы закачки файлов на свой сервер. Также мы разберем эти способы и вместе проанализируем.

И в конце мы узнаем, в каком случае лучше всего применять данный метод.  

Как вы думаете, для чего вообще нужна закачка файлов на свой сервер

Ну, во-первых, чтобы установить сам движок сайта. Некоторые хостинги сами могут закачать на сервер данный движок.

Однако они в свое распоряжение предоставляют далеко не все движки сайта и, наверное, не все сервисы осуществляют быструю установку нужного движка.

Вот именно в таких случаях и понадобится ручная закачка файлов CMS и его установка.

Во-вторых, в дальнейшем вам понадобится выкладывать на свой сайт какие-то фотографии, музыку, бонус-видео, книги, какие-то программки и так далее.

Чтобы выкладывать их на сайт, вам придется сначала загрузить нужные файлы на свой сервер.

Конечно, закачать файлы можно и с самого сайта, но, к сожалению CMS не может предоставить нам загрузку больших файлов.

Если только вы не увеличите максимальный допустимый размер на загрузку файлов.

Существует два способа закачки файлов на сервер. Давайте мы их с вами рассмотрим на примере сайта на движке WordPress.

Часто ли вам приходится пользоваться сайтами-файлообменниками? А хотите иметь свой собственный файлообменник? В этом руководстве мы изучим, как производится установка и настройка сервера Seafile для синхронизации и общего доступа к файлам на Ubuntu 20.04.

Seafile – это платформа с открытым исходным кодом, которая предназначена для предоставления доступа к файлам, хранящимся на вашем сервере. Данный сервис применяется для загрузки файлов на ваш общедоступный ресурс, синхронизации содержимого этого ресурса с библиотеками на локальных устройствах, а также, для предоставления доступа к выложенным файлам для всех или определённых вами пользователям в рамках предоставленных им полномочий.

В качестве СУБД на нашем сервере мы будем использовать MariaDB, а в качестве веб-сервера – Apache. Также, мы настроим доступ к нашему сайту по защищённому протоколу HTTPS.

Команда pscp – это реализация протокола SCP, в которой мы можем безопасно передавать и копировать файлы и папки по сети с помощью соединения SSH.

В этом уроке мы узнаем, как установить и использовать инструмент pscp в операционной системе Windows.

Скачать Pscp

Существуют разные типы установки.

pscp может быть установлен в автономном режиме или с пакетом установки putty.

Я предпочитаю установочный пакет Putty, где настройка конфигурации Пути также выполняется автоматически.

Как настроить FTP на Ubuntu 20.04 LTS

Как видим, есть 32- и 64-битные версии.

Я буду использовать 64 бит, потому что моя ОС Windows 64 битная соответственно 🙂 .

Установка Pscp

Мы установим скачанный 64-битный MSI-пакет putty в обычном стиле Windows Далее-> Далее.

Помощь и Настройки

Если нам нужно перечислить все доступные опции и справочную информацию, мы можем просто ввести команду pscp в командную строку или MSDOS, как показано ниже.

Как настроить FTP на Ubuntu 20.04 LTS

Скачать или загрузить файл с удаленного сервера

Мы начнем с простого примера, где мы будем загружать или получать один файл с удаленного сервера или системы.

Как указывалось ранее, мы будем использовать протокол SSH для подключения и передачи.

Мы также предоставим имя файла, который мы хотим сохранить локально.

Как настроить FTP на Ubuntu 20.04 LTS

Мы видим, что сначала мы подключимся к серверу, который нам нужен, чтобы утвердить ключ удаленного сервера.

Затем мы предоставляем пароль для пользователя ismail.

После успешной аутентификации передача файла успешно завершена.

Скачать или загрузить несколько файлов с удаленного сервера

В предыдущем примере мы загрузили или получили один файл с удаленного сервера.

Мы также можем загружать и получать несколько файлов из удаленной системы в соответствии с их путем или расширением.

В этом примере мы загрузим все gzip-файлы с расширением gz, которые находятся в /home/ismail.

. означает, что мы будем сохранять в текущий рабочий каталог.

 > pscp ismail@192.168.142.144:/home/ismail/*.gz . 

Как настроить FTP на Ubuntu 20.04 LTS

Загрузить или поместить файл на удаленный сервер

Мы также можем загрузить или поместить данный файл на удаленный SSH-сервер с помощью команды pscp.

 pscp FILE USER@IPADDRESS:/PATH/FILE
> pscp pass.txt ismail@192.168.142.144:/home/ismail/pass.txt 

Как настроить FTP на Ubuntu 20.04 LTS

Загрузить несколько файлов на удаленный сервер

Мы также можем поместить несколько файлов на удаленный сервер с помощью команды pscp.

Мы предоставим имена файлов перед удаленным сервером, информацию о пользователе.

В этом примере мы скопируем локальные файлы pass.txt, config.sys на удаленный сервер.

 pscp FILE1 FILE2 ... FILEN USER@IPADDRESS:/PATH/FILE
> pscp pass.txt config.sys ismail@192.168.142.144:/home/ismail/

Как настроить FTP на Ubuntu 20.04 LTS

Скачать каталоги рекурсивно с удаленного сервера

 > pscp -r ismail@192.168.142.144:/home/ismail/ . 

Загрузить каталоги  рекурсивно на удаленный сервер

Мы также можем отправлять или загружать локальные каталоги на удаленный сервер.

Мы снова будем использовать опцию -r.

 > pscp -r Downloads ismail@192.168.142.144:/home/ismail/Downloads/ 

Мы поместим каталог Downloads на удаленный сервер 192.168.142.144 и в папку /home/ismail/Downloads

Как загрузить файлы на веб-сервер

Данная статья покажет, как можно опубликовать сайт в Интернет с помощью инструментов передачи файлов(file transfer tools).

Научиться передавать файлы на сервер используя различные доступные инструменты передачи файлов(file transfer tools).

Сводка

Если вы создали простую веб-страницу (для примера смотрите Основы HTML), вы, вероятно, захотите отобразить её онлайн, на веб-сервере. В данной статье мы обсудим как сделать это, используя различные доступные настройки, такие как SFTP клиенты, RSync и GitHub.

SFTP (Безопасный Протокол Передачи Файлов)

Существуют различные варианты SFTP клиентов. В нашем примере мы будем использовать FileZilla, тк он бесплатен и подходит для Windows, macOS и Linux. Чтобы установить менеджер перейдите на страницу загрузки FileZilla downloads page, нажмите на кнопку загрузки, затем установите пакет из установочного файла обычным способом.

Примечание: Конечно, есть много других вариантов. Смотрите Publishing tools для других способов.

Откройте приложение FileZilla; вы должны увидеть что-то вроде этого:

Как настроить FTP на Ubuntu 20.04 LTS

Вход в систему

В этом примере мы предположим, что наш хостинг-провайдер (сервис, на котором находится наш HTTP веб сервер) является фиктивной компанией «Example Hosting Provider», чьи URL адреса выглядят следующим образом: mypersonalwebsite.examplehostingprovider.net .

Сейчас мы создали аккаунт и получили от хостинг-провайдера следующую информацию:

  • SFTP сервер: sftp://demozilla.examplehostingprovider.net
  • Имя пользователя: demozilla
  • Пароль: quickbrownfox
  • Порт: 5548
  • Для публикации в интернет, поместите ваши файлы в папку Public/htdocs .

Давайте сначала посмотрим на http://demozilla.examplehostingprovider.net/ — как вы можете видеть, то здесь пока ничего нет:

Our demozilla personal website, seen in a browser: it

Чтобы подключить SFTP клиент к удалённому серверу, выполните следующие действия:

  1. Выберите File > Site Manager. в главном меню.
  2. В окне Site Manager, нажмите кнопку New Site, затем введите название сайта как demozilla в предоставленном месте.
  3. Укажите SFTP-сервер вашего хоста в предоставленном поле: Host.
  4. В раскрывающемся списке Logon Type: выберите Normal, затем введите предоставленные имя пользователя и пароль в соответствующие поля.
  5. Введите правильный порт и другую информацию.

Ваше окно должно выглядеть как показано ниже:

Как настроить FTP на Ubuntu 20.04 LTS

Теперь нажмите Connect для подключения к SFTP-серверу.

Примечание: Убедитесь, что ваш хостинг-провайдер предлагает SFTP (безопасный FTP) подключение к вашему хостинговому пространству. FTP по своей сути небезопасен, и вам не следует его использовать.

Здесь и там: локальный и удалённый просмотр

После подключения ваш экран должен выглядеть примерно так (мы подключились к нашему собственному примеру, чтобы дать вам представление):Как настроить FTP на Ubuntu 20.04 LTS

Давайте посмотрим, что вы видите:

  • По центру левой панели вы можете видеть локальные файлы. Перейдите в каталог, в котором вы храните свой веб-сайт (например, mdn ).
  • По центру правой панели вы увидеть удалённые файлы. Мы вошли в наш удалённый корень FTP (в данном случае: users/demozilla )
  • Вы можете пока игнорировать нижнюю и верхнюю панели. Соответственно, это журнал сообщений, показывающий состояние соединения между вашим компьютером и SFTP-сервером, и журнал в реальном времени каждого взаимодействия между вашим SFTP-клиентом и сервером.
Читайте также:  Упрощенная установка phpMyAdmin в Fedora

Загрузка на сервер

Наш пример инструкций для хостинга указывает нам следующее: «Чтобы опубликовать в Интернете, поместите свои файлы в каталог: Public/htdocs .» Вам нужно перейти в указанный каталог на правой панели. Этот каталог фактически является корнем вашего веб-сайта, где находятся ваши index.html , откуда ваши файл и другие активы будут отправлены.

После того, как вы нашли правильный удалённый каталог для размещения файлов, чтобы загрузить файлы на сервер, вам необходимо переместить их с левой панели на правую.

Как узнать, что они online?

Пока все хорошо, но действительно ли файлы в сети? Вы можете перепроверить, перейдя на ваш сайт (например, http://demozilla.examplehostingprovider.net/ ) в вашем браузере:

Here we go: our website is live!

И вуаля! Наш сайт работает!

Rsync

Rsync (en-US) is a local-to-remote file synchronizing tool, which is generally available on most Unix-based systems (like macOS and Linux), but Windows versions exist too.

It is seen as a more advanced tool than SFTP, beause by default it is used on the command line. A basic command looks like so:

  • -options is a dash followed by a one or more letters, for example -v for verbose error messages, and -b to make backups. You can see the full list at the rsync man page (search for «Options summary»).
  • SOURCE is the path to the local file or directory that you want to copy files over from.
  • user@ is the credentials of the user on the remote server you want to copy files over to.
  • x.x.x.x is the IP address of the remote server.
  • DESTINATION is the path to the location you want to copy your directory or files to on the remote server.

You’d need to get such details from your hosting provider.

Of course, it is a good idea to use a secure connection, like with FTP. In the case of Rsync, you specify SSH details to make the connection over SSH, using the -e option. For example:

Rsync GUI tools

As with other command line tools, GUI tools also exist for Rsync, for those who are not as comfortable with using the command line. Acrosync is one such tool, and it is available for Windows and macOS.

Again, you would have to get the connection credentials from your hosting provider, but this way you’d have a GUI to enter them in.

GitHub

GitHub allows you to publish websites via GitHub pages (gh-pages).

We’ve covered the basics of using this in the Publishing your website article from our Getting started with the Web guide, so we aren’t going to repeat it all here.

However, it is worth knowing that you can also host a website on GitHub, but use a custom domain with it. See Using a custom domain with GitHub Pages for a detailed guide.

Other methods to upload files

The FTP protocol is one well-known method for publishing a website, but not the only one. Here are a few other possibilities:

Загрузка файлов на сервер

ФайлеЗилла - загрузка файлов на свой сайт, сервер или хостинг с помощью компьютера

Есть несколько способов загрузить файлы на сайт. Для этого необязательно использовать именно свой хостинг. Можно работать также и с другими бесплатными серверами, например «Deposit Files» или «Letitbit» и т.д. Однако в данной статье я хочу рассказать о том, как можно загрузить файлы именно на свой хостинг. Что такое хостинг? Если говорить коротко, то это место в Интернете, выделяемое специально для владельца сайта, где могут храниться файлы (по-другому называется сервер). Хостинг всегда имеет свои ограничения (например, общий вес файлов не более 2 Гб, загрузка одного файла не должна превышать 8 Мб и т.п.).

Итак, рассмотрим два примера добавления файлов на свой сайт.

1. Использование FTP-клиента FileZilla.
Выбираем раздел «Файл>Менеджер Сайтов» и нажимаем кнопку «Новый сайт». Справа в поле «Хост» следует прописать https://ftp.Ваш_домен.ru/. Переключаем «Тип входа» на «Нормальный» и вводим имя пользователя и пароль аккаунта.

FileZilla Добавление сайта в менеджер сайтов

FileZilla Корневая директория сайта

Это и есть Ваша корневая директория. Туда и попробуем перенести необходимый файл.

FileZilla Загрузка файлов на хостинг

Затем на странице сайта добавляем ссылку на этот файл (https://Ваш_домен.ru/Имя_файла/).

Доступ файла к загрузке

(Как правило, корневая директория сайта — это сам домен. Если скинуть файл Hello.doc в корневую директорию сайта fortran-new.ru, то путь к файлу будет таким: https://fortran-new.ru/Hello.doc/. Кроме корневой директории на сервере также можно создавать и свои папки. Если скинуть папку «fed» с вложенным файлом «Hello.doc» в корневую директорию хостинга, то путь к файлу будет следующим: https://fortran-new.ru/fed/Hello.doc).

2. Загрузка файлов с помощью средств WordPress.

Этот вариант немного проще, но если файл слишком большой, то он загружен не будет. На движке wordpress находим пункт «Медиафайлы>Добавить новый», выбираем файл и в окне высвечивается ссылка для публикации, которую необходимо скопировать и в будущем, при написании статьи выставить.

WordPress Загрузить новый файл

Точно так же во время написания статьи можно добавить файл («Загрузить/вставить») и нажать «Вставить в запись», но в этом случае ссылка на файл, который не распознается WordPress, автоматически добавится в запись, а тот файл, который распознается, откроется прямо в визуальном редакторе.

Если требуется загрузить на хостинг с поддержкой PHP/MySQL файлы формата *.exe, рекомендуется прежде их заархивировать.

Как загрузить файлы на хостинг?

Существует два варианта, как загрузить файлы на хостинг:

Добавление файлов непосредственно через админ-панель.

Используя ISPmanager

  1. Залогиньтесь в ISPmanager.
  2. Кликните на Менеджер файлов во вкладке Инструменты. 3
  3. Перейдите в нужную директорию.
  4. Кликните Закачать файл в текущую директорию.
  5. Выберите файл.
  6. Кликните Закачать.

Закачать файлы можно как с локального компьютера, так и с другого сервера, используя URL.

Используя cPanel

У нас есть отдельная статья, рассказывающая, как работать с файловым менеджером cPanel.

Добавление файлов через FTP-аккаунт

Настройка FileZilla для работы с FTP на хостинге

  1. Для быстрого соединения используйте следующие параметры: 1
    1. Хост: IP_сервера (например, 5.9.146.41)
    2. Имя пользователя: Логин FTP аккаунта
    3. Пароль: пароль от FTP аккаунта
    4. Порт: 21
    1. Вы можете вве с ти в поле Хо с т своё доменное имя или же IP адрес с ервера, на котором ра с положен ваш аккаунт ( на пример, 5.9.146.41). Для того, чтобы уз на ть, на каком с ервере ра с положен ваш аккаунт, достаточно по с мотреть на адре с , по которому Вы входите в панель управления хо с тингом (вида https://IP- с ервера/manager/ispmgr).
    2. В поле Тип сервера выбираете протокол F TP — File Transfer Protocol и порт 21.
    3. В поле Тип входа необходимо выбрать Нормальный.
    4. В поля Пользователь и Пароль вводите логин и пароль от FTP-аккаунта. Вы можете использовать уже существующий FTP-аккаунт администратора сайта (логин и пароль такие же, как и к панели ISPmanager) или Вы можете создать новый FTP-аккаунт с доступом к конкретной директории. 4
    5. На вкладке На с тройки передачи необходимо выбрать Режим передачиПа с с ивный.
    6. Рекомендуем включить опцию Ограничение одновременных подключений и вы с тавить в поле Мак с . чи с ло подключений з на чение 1.
      1. На хостинге действует лимит на количество одновременных FTP-подключений. Максимально возможное количество — 3, это связано с общим ограничением количества процессов клиента на сервере и необходимо для того, чтобы активная закачка файлов не влияла на доступность сайта).

      Чтобы подключить с я к с ерверу, выберите подключение в менеджере сайтов и нажмите кнопку С оединить с я.

С помощью файлового менеджера хостинга c WordPress

Для того чтобы осуществлялась закачка файлов на свой сервер, зайдите в панель управления хостингом.

Закачка файлов с помощью файлового менеджера хостинга

Найдите папку или строчку «Файловый менеджер».

Далее заходите в папку «domains», потом кликаете по домену (названию) своего блога или сайта и заходите в папку «public html».

В самой папке «public html» создайте новую папку с любым названием для закачки туда своих файлов.

Рекомендуется это для того, чтобы загруженные файлы не путались с системными и лежали все в отдельной папке.

После того, как вы создали новую папку, найдите кнопку типа «загрузить файл».

Далее нажимаете на ее и ищите в новом окне нужный вам файл для загрузки с компьютера.

Обратите внимание, что папка «public html» — это корневая папка сайта и именно туда нужно закидывать все свои необходимые файлы, чтобы в дальнейшем они могли взаимодействовать с вашим сайтом. Эти файлы потом можно будет раздавать своим читателям.

Как это сделать?

Например, у вас есть книга, которую вы можете дать своим читателям, если те подпишутся на рассылку. Эту книгу вы закачиваете на свой хостинг.

В папке «public html» создаете новую (например, «kniga») и закачиваете нужный файл туда (у меня этот файл будет, например, называться «Guide_Russian.pdf»).

После этого, вы уже можете предоставить ссылку на эту книгу своим подписчикам для скачивания.

Где взять ссылку?

На своем компьютере создаете новый документ, чтобы там записать свою ссылку. Сначала пишите полный адрес к своему сайту.

Это будет типа https://ваш домен.ru/.

Потом вы должны указать папку, куда вы закинули данный файл. Для себя я создал папку «kniga». В моем случае будет так https://домен.ru/kniga/.

После этого копируете название закачанного файла и вставляете его в ссылку. В итоге, получается ссылка такого типа https://ваш домен.ru/kniga/Guide_Russian.pdf.

Вот и все!

После этого копируете ссылку и вставляете в поисковую строку браузера. Если документ открылся или была предложена его загрузка, то значит, ссылка у вас прописана правильно.

Как правильно прописать ссылку на закачанный файл

Еще важный момент!

Если я вдруг скажем, не решил создавать папку «kniga», а просто закинул свой файл «Guide_Russian.pdf» в саму корневую папку «public html», то правильная ссылка на мою книгу получится следующая: https://ваш домен.ru/Guide_Russian.pdf.

Да потому что «public html» — это и есть ваш домен.ru.

Если вы пропишите https://ваш домен.ru/public html/Guide_Russian.pdf, то ссылка не будет работать!

Для работы с файлами хостинг предоставляет в использование свой файловый менеджер. К сожалению, его работа далека от идеала.

Таким менеджером не всегда удобно пользоваться. К тому же, чтобы закачать много файлов, каждый такой файл нужно добавлять в отдельный список открытия файлов.

Согласитесь, это неудобно и очень медленно. Можно было попытаться загрузить саму папку с вложенными файлами, но, к сожалению, с таким менеджером этого сделать нельзя.

Еще можно эти файлы добавить в архив RAR, с помощью программы WIN RAR на своем компьютере. Эта программа образует один архив с вложенными туда файлами.

К счастью этот архив можно закачать на хостинг. Файловый менеджер сервиса распознает его как один обычный файл с расширением rar и без труда закачает на хостинг.

В дальнейшем нам предстоит этот архив извлечь, чтобы получить несколько распакованных файлов в одной папке.

Однако тут есть еще одна проблема! Не на всех файловых менеджерах хостинга можно распаковать архив rar. Некоторые предоставляют такую возможность, а некоторые нет. Так что этим способом можно воспользоваться, если вам нужно закачать пару текстовых файлов или же если ваш файловый менеджер сможет разархивировать файл с разрешением rar.

Тестирование функциональности синхронизации файлов и их совместного использования

В этом разделе мы протестируем функционал нашего настроенного сервера, касающийся синхронизации и совместного использования файлов. Чтобы это осуществить, нужно будет установить клиентское приложение Seafile на отдельную рабочую станцию или мобильное устройство.

Перейдите на страницу загрузки Seafile и следуя инструкциям установите последнюю версию клиентской программы. Клиентское программное обеспечение Seafile доступно для различных дистрибутивов Linux, а также, MacOS, и Windows. При этом мобильный клиент также доступен для устройств, работающих на Android и IOS, и его можно загрузить из соответствующих магазинов приложений.

Читайте также:  Упрощенная настройка репозитория Asterisk для Debian: пошаговое руководство

Установив клиента, откройте его и примите дефолтное расположение каталога Seafile, нажмите Next.

В следующем окне нужно будет ввести адрес вашего сервера, имя пользователя и пароль, после чего нажать Login.

Далее, на стартовой странице правой кнопкой мыши нажмите на My Library и затем кликните Sync this library, либо Синхронизировать эту библиотеку. Примите дефолтное расположение библиотеки на вашем компьютере или устройстве.

Синхронизация библиотек

Добавьте какой-нибудь файл, например, документ или фотографию, в каталог My Library. Спустя какое-то время файл загрузится на сервер, и вы сможете увидеть его в папке My Libraries, подключившись в браузере к вашему серверу.

My Libraries
Общий доступ - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Что делать, если файл не загружается на хостинг или загрузился пустой?

Убедитесь, не превышена ли у вас квота «Дисковое пространство» в тарифе, который вы используете. Вы можете просмотреть её в своей контрольной панели в разделе «Статистика Используемые ресурсы».

Настройка сервера Seafile

Для своей работы сервер Seafile потребует от вас некоторой информации. Её необходимо предоставить сервису перед первым его запуском. Эта информация включает в себя такие данные как имя домена и настройки базы данных. Чтобы начать наполнение Seafile ответами на требуемые вопросы, вам нужно запустить на исполнение скрипт setup_seafile_mysql.sh, который входит в состав архива, распакованного на предыдущем шаге:

$ bash setup-seafile-mysql.sh
Запуск скрипта setup_seafile_mysql.sh

Для продолжения нажмите Enter.

Далее скрипт задаст вам несколько вопросов. Везде, где вы хотите использовать значения по умолчанию, просто нажимайте клавишу Enter не вводя никакой информации.

В качестве имени сервера здесь мы будем использовать Seafile-Server. Вы, конечно же, можете ввести другое:

Имя сервера Seafile

Далее, введите ваше имя домена:

Имя домена

Введите номер порта, который вы хотите использовать на своём файловом сервере. Для принятия значения по умолчанию нажмите Enter:

Номер порта

Далее, следует выбрать создание новых баз данных для Seafile или использование уже существующих. В нашем примере, выбор – пункт 2:

Базы данных Seafile

Оставшиеся вопросы относятся к СУБД MariaDB. Здесь вам нужно будет ввести имя и пароль пользователя MariaDB, который вы создали ранее. А также, примите значения по умолчанию в назначении хоста и порта для сервера mysql:

Настройки MariaDB для Seafile

Если пароль вашего пользователя принят, скрипт попросит вас набрать имена баз данных Seafile. В нашем руководстве эти базы мы назвали seahubdb, seafiledb и ccnetdb. Скрипт проверит корректность подключения к базам данных и отобразит на экране сводную информацию о начальной конфигурации:

Базы данных Seafile

Для подтверждения нажмите Enter:

Завершение работы скрипта

Поскольку вы будете запускать сервер Seafile, который по факту находится за Apache, то в брандмауэре нет необходимости открывать порты 8000 и 8082. Следовательно, вы можете игнорировать заключительную часть вывода.

Проверка подключения к FTP-серверу

Корректность произведённых настроек можно проверить через осуществление подключения к FTP-серверу. Для этой цели можно воспользоваться бесплатным FTP-клиентом FileZilla. После запуска приложения в FileZilla следует заполнить поля Хост и Имя пользователя. После нажатия кнопки Быстрое соединение система попросит ввести пароль учётной записи, под именем которой происходит подключение к FTP-серверу.

Как настроить FTP на Ubuntu 20.04 LTS

Подключение к серверу осуществлено успешно, значит произведенные настройки в конфигурационном файле корректны. В статусе подключения видно, что в данной сессии TLS соединение установлено, значит передача данных между клиентом и сервером шифруются.

Как зайти на свой сайт по протоколу FTP через FTP-клиент?

Чтобы настроить FTP-клиент, необходимо иметь следующие данные:

Имя сервера (хост): ваш_домен;
Имя пользователя (логин): ваш_логин;
Пароль: ваш_пароль от FTP;
Порт: по умолчанию (21).

Настроим доступ к FTP на примере TotalCommander (Ctrl+F). Не забудьте включить опцию «Пассивный режим».

Как настроить FTP на Ubuntu 20.04 LTS

Если вы не изменяли логин и пароль к панели управления или основного FTP-аккаунта, указывайте те логин и пароль, которые вы используете для входа в панель управления. В разделе «FTP-аккаунты» в панели управления  можно создать дополнительные FTP-аккаунты, которые будут иметь собственные логин, пароль и домашнюю директорию.

Копирование файлов через RDP-подключение

Есть ещё один метод копирования файлов на VDS. Он удобен тем, что не требует установки на сервер дополнительного программного обеспечения и не использует сторонние ресурсы, тем более за деньги. Данный способ заключается в открытии доступа на ресурсы вашего компьютера для удалённого сервера.

Чтобы это сработало, необходимо внести изменения в настройки RDP-подключения на локальной рабочей станции.

Сначала откройте подключение к удалённому рабочему столу. Для этого нажмите Win R и в открывшуюся строку введите mstsc. После чего нажмите OK.

Запуск подключения по RDP
Ссылка Показать парамертры - Копирование файлов на VPS под Windows
Вкладка Локальные ресурсы

В следующем окне укажите локальные ресурсы, доступ на которые вы хотите пробросить через RDP-подключение. На скриншоте ниже мы открыли доступ к диску C: на локальном компьютере. После чего нажмите OK.

Проброс локальных ресурсов на удалённый сервер

В окне подключения к удалённому рабочему столу нажмите Подключить и подтвердите подключение в следующем окне.

Подключение по RDP - Копирование файлов на VPS под Windows

После того, как вы авторизуетесь на удалённом сервере, вам можно будет оперировать файлами и каталогами на локальном компьютере через проводник вашей виртуалки.

Рабочий стол удалённого сервера - Копирование файлов на VPS под Windows

Как мне распаковать архив на сервере?

Вы можете распаковать архив с помощью файлового менеджера в панели управления. Для этого сначала закачайте его на сервер, затем выделите файл в интерфейсе файлового менеджера, кликнув по нему мышью, и нажмите на кнопку «Извлечь». После нажатия на кнопку «Извлечь» архив будет распакован в текущий раздел.

Как настроить FTP на Ubuntu 20.04 LTS

Настройка брандмауэра

Если вы производили работы по первоначальной настройке виртуального сервера, то на нём должен быть запущен межсетевой экран UFW. Соответственно, для того, чтобы брандмауэр вашего VPS позволял осуществлять подключения, необходимо внести небольшие изменения в настройки UFW. Проще говоря, нужно будет добавить в брандмауэр исключения для TCP-портов 20 и 21. Делается это следующими командами:

$ sudo ufw allow 20/tcp
$ sudo ufw allow 21/tcp

После чего брандмауэр следует перезапустить:

$ sudo ufw disable
$ sudo ufw enable

И убедиться, что служба работает без ошибок:

$ sudo ufw status
sudo ufw status

Обеспечение безопасности Apache с помощью Let’s Encrypt

В этом разделе нам будет необходимо обеспечить возможность шифрования трафика на нашем веб-сервере. Мы настроим Apache таким образом, чтобы наш домен был доступен по протоколу HTTPS.

Для начала установите на свой сервер программное обеспечение Certbot. Для чего в командной строке следует набрать:

$ sudo apt install certbot python3-certbot-apache

Теперь перейдём к настройке брандмауэра UFW. Ранее мы разрешили в нашем брандмауэре трафик только по порту 80. Сейчас мы настроим доступ к нашему ресурсу по протоколу HTTPS, а доступ через HTTP, наоборот, закроем. Для этого используйте следующие две команды:

$ sudo ufw allow 'Apache Full'
$ sudo ufw delete allow 'Apache'

Далее, запустите проверку статуса брандмауэра:

$ sudo ufw status
Просмотр статуса UFW

Далее, запустите получение SSL-сертификата при помощи Certbot через плагин Apache:

$ sudo certbot --apache

Данный скрипт попросит вас ответить на несколько вопросов, ответы на которые позволят вам сконфигурировать полученный SSL-сертификат на вашем сервере. Во-первых, введите доступный вам адрес электронной почты. Этот E-mail будет использоваться для уведомлений о продлении сертификата, а также, об изменениях настроек системы безопасности. Во-вторых, подтвердите своё согласие с условиями предоставления услуг Let’s Encrypt нажав A. Далее, вас спросят, хотите ли вы, получать на вашу почту информацию от Electronic Frontier Foundation. Нажмите N, чтобы отказаться от рассылки, либо Y, чтобы согласиться на неё. И, наконец, вы должны будете проинформировать Certbot о том, в отношении какого из доменных имён вы хотели бы активировать доступ по протоколу HTTPS. Если вы хотите сделать это в отношении всех представленных в списке сайтов, оставьте поле пустым и нажмите Enter. Либо, перечислите соответствующие номера строк, разделяя их при помощи запятых или пробелов, и нажмите Enter.

Выбор домена для подключения SSL-сертификата

После этого шага Certbot активирует SSL-сертификат для вашего домена, о чём проинформирует вас при помощи своих сообщений.

Активация SSL-сертификата

Проверить доступность вашего сайта через защищённое соединение вы можете набрав в браузере ваше доменное имя с префиксом https://, например, https://my-domain.host.

Подключение к домену по HTTPS

Установка зависимостей и загрузка Seafile

Итак, во-первых, установите pip – менеджер пакетов Python. Соответствующий пакет для Debian называется python3-pip. Для установки пакета запустите:

$ sudo apt install -y python3-pip

По окончании установки пакета pip запустите инсталляцию дополнительных зависимостей при помощи команды pip3:

$ pip3 install Pillow captcha django-simple-captcha

Теперь, когда необходимые зависимости установлены, вы можете загрузить установочный пакет Seafile. Для его инсталляции нам потребуются дополнительные каталоги. Их нужно будет создать в домашнем каталоге вашего пользователя:

$ cd ~
$ mkdir seafile
$ cd seafile

Далее, загрузите последнюю версию Seafile. В нашем руководстве мы будем устанавливать версию 7.1.5:

$ wget https://download.seadrive.org/seafile-server_7.1.5_x86-64.tar.gz

Загруженный дистрибутив Seafile представляет из себя tar-архив, который вам нужно будет распаковать, прежде чем продолжить:

$ tar -zxvf seafile-server_7.1.5_x86-64.tar.gz

После чего перейдите в разархивированную директорию:

$ cd seafile-server-7.1.5

Установка веб-сервера Apache

В качестве веб-сервера в данном руководстве мы будем использовать Apache. Поскольку Apache доступен для установки из официального репозитория Ubuntu, инсталляцию пакета нужно будет произвести при помощи apt:

$ sudo apt install apache2

Когда установка завершится, произведите настройку брандмауэра UFW. Запустите команду для просмотра списка приложений, включённых в брандмауэр в качестве разрешённых:

$ sudo ufw app list
Список приложений UFW - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Позже мы настроим доступ к нашему ресурсу по протоколу HTTPS. А пока разрешите трафик исключительно по порту 80:

$ sudo ufw allow 'Apache'

Чтобы проверить изменения наберите:

$ sudo ufw status
Статус UFW - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Теперь следует запустить проверку статуса службы Apache:

$ sudo systemctl status apache2

Вывод команды должен выглядеть примерно так:

Статус службы Apache - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04
Начальная страница Apache - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Установка MariaDB

На нашем сервере в качестве системы управления базами данных мы будем использовать MariaDB. Поэтому сначала необходимо установить на сервер данную СУБД.

Для чего обновите индексы пакетов на сервере:

$ sudo apt update

После этого запустите установку пакета MariaDB:

$ sudo apt install mariadb-server

По окончании установки нужно будет запустить скрипт безопасности:

$ sudo mysql_secure_installation

Скрипт должен попросить вас ввести пароль пользователя root для установленной СУБД. Так как мы пока ещё не настраивали этого пользователя, укажите, что этот пароль отсутствует, нажав Enter. Далее скрипт запросит сменить пароль пользователя root, на что следует ответить “Нет”, нажав n. На остальные вопросы скрипта можно отвечать утвердительно.

Скрипт безопасности MariaDB - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

С помощью FTP клиента

Для того чтобы закачать файлы на сервер по FTP-протоколу, необходима специальная программа, которая может работать по такому протоколу.

Называют такую программу FTP-клиентом.

Существует много таких клиентов, но все они выполняют одну и ту же функцию, а именно удобную и быструю закачку файлов на сервер.

Для копирования файлов воспользуемся программой FileZilla. Это один из самых лучших, удобных и бесплатных FTP клиентов.

Закачка файлов или нескольких папок в такой программе осуществляется быстро и очень удобно.

После установки FileZilla запустите программу.

Далее в левом верхнем углу под словом «Файл» есть кнопка «Открыть Менеджер Сайтов» (смотрите рисунок ниже). Нажимаете на нее.

Закачка файлов с FileZilla на сервер

Перед вами откроется менеджер сайтов. Нажимаем на кнопку (1) «Новый сайт» и даем любое название.

Я, например, назвал «kniga».

Узнать его можно в электронном письме, которое высылается вам хостингом после регистрации.

Вот там и находиться ваш адрес. Скопируйте и вставьте его в поле «Хост».

В строке «Protocol», «Encryption» и «Тип входа» у вас должно быть написано, как у меня на рисунке.

В конце нажимаете на кнопку «Соединиться». После этого вам будет предоставлен ftp доступ.

Менеджер сайтов в FTP-клиенте

Итак, давайте поближе рассмотрим программу FileZilla — это лучший ftp клиент.

В поле (А) располагаются команды по соединению. Если программа по какой-то причине не смогла соединиться, то она прописывает ошибки.

Если такое происходит, то нужно попробовать еще раз перезайти.

В поле (Б1) и (Б2) располагаются все файлы вашего компьютера. В поле (В1) и (В2) располагаются файлы вашего web-сервера.

Для начала, в поле (В2) кликните на папку «domains», потом кликаете по самому домену блога и затем заходите в папку «public html».

Читайте также:  9 самых надежных файлообменников для загрузки больших файлов

Нажимаете правую кнопку мыши, выбираете «создать каталог» и присваиваете название, например «kniga».

В полях Б1 и Б2 выбираете нужный файл и просто перетаскиваете его в поле В2.

Хочу отметить, что можно в поле Б2 сразу выделить несколько файлов, нажать на правую кнопку мыши и на кнопку «Закачать на сервер».

Еще можно закачивать файлы в другом направлении, с сервера на свой компьютер.

FileZilla для закачки файлов

В поле (Г) будут располагаться файлы, с которыми вы работали. С помощью кнопок, расположенных ниже поля (Г), вы можете узнать:

  • какие файлы у вас находятся в задании — это файлы, который вы выбрали для последующего скачивания;
  • неудавшиеся передачи — это те файлы, которые по какой-то причине не смогли закачаться к вам на сервер. Всегда просматривайте названия таких файлов и где они расположены на компьютере, чтобы потом вы смогли второй раз закачать их. Будьте очень внимательны к этому пункту, так как если это будут файлы какого-нибудь движка сайта или плагина, то вы естественно его можете и не установить или установить, но потом он у вас будет некорректно работать.
  • успешные передачи — это файлы, которые без проблем закачались на ваш сервер.

Вот собственно и все, что необходимо знать вам по этому вопросу.

Самый лучший способ — это закачка файлов с помощью FTP-клиента FileZilla. Выбирайте этот способ, так как он очень быстрый и удобный.

Однако если же вы используете, например, чужой компьютер без FTP менеджера и вам надо закачать пару небольших текстовых файлов, то тут вы можете и обойтись простым файловым менеджером самого хостинга.

Настройка учётной записи FTP-пользователя

Для авторизации на FTP-сервере необходимо создать учетную запись пользователя. Изначально, подключаться к серверу можно и под локальным пользователем. Но более целесообразно для этих целей использовать специальную учётную запись. Для её создания используйте следующую команду:

$ sudo useradd ftpuser
$ sudo mkhomedir_helper ftpuser

После этого для него необходимо создать пароль на вход:

$ sudo passwd ftpuser

Создание баз данных для компонентов Seafile

Три компоненты Seafile должны быть установлены в вашей системе для того, чтобы настраиваемый файловый сервер функционировал корректно:

  • Seahub – фронтендовый веб-интерфейс Seafile. Он написан на Python с использованием фреймворка Django. С помощью Seahub вы сможете получать доступ к своим файлам, управлять ими и организовывать общий доступ к ним через браузер.
  • Сервер Seafile – служба для работы с данными, которая управляет выгрузкой файлов, их загрузкой и синхронизацией. Вам не нужно будет взаимодействовать с сервером напрямую, достаточно использовать какое-либо клиентское приложение, либо веб-интерфейс сервера.
  • Сервер Ccnet – RPC-служба, предназначенная для обеспечения внутренних связей между различными сегментами Seafile. При помощи этого сервиса Seahub сможет получать доступ к данным на сервере Seafile.

Все эти сегменты будут хранить свои данные отдельно, каждый в своей базе данных. Именно поэтому, теперь мы должны создать три разных базы данных. Их мы создадим при помощи MariaDB. Также, нужно будет создать для них пользователя.

Итак, подключитесь к MariaDB:

$ sudo mariadb

В командной строке MariaDB введите команду для создания пользователя ваших баз данных:

> CREATE USER 'mdb-user'@'localhost' IDENTIFIED BY 'p@$$word';

Далее, необходимо создать базы данных для всех трёх компонентов Seafile:

  • seahubdb – для фронтендового веб-интерфейса Seafile;
  • seafiledb – для сервера Seafile;
  • ccnetdb – для сервера Ccnet.

Для создания баз данных наберите в командной строке MariaDB:

> CREATE DATABASE `seahubdb` CHARACTER SET = 'utf8';
> CREATE DATABASE `seafiledb` CHARACTER SET = 'utf8';
> CREATE DATABASE `ccnetdb` CHARACTER SET = 'utf8';

Теперь, нужно дать все полномочия созданному пользователю для работы с новыми базами:

> GRANT ALL PRIVILEGES ON `seahubdb`.* to `mdb-user`@localhost;
> GRANT ALL PRIVILEGES ON `seafiledb`.* to `mdb-user`@localhost;
> GRANT ALL PRIVILEGES ON `ccnetdb`.* to `mdb-user`@localhost;

После этого можно выйти из MariaDB. Для этого используйте команду:

> exit

Как закачать файлы на сервер используя панель управления ISPmanager?

Как настроить FTP на Ubuntu 20.04 LTS

Как настроить FTP на Ubuntu 20.04 LTS

Обратите внимание, что при переносе с другого хостинга есть возможность загрузки архива на сервер используя удаленную загрузку.

Настройка веб-сервера Apache

В этом разделе мы произведём настройку веб-сервера Apache. Эта настройка нужна для того, чтобы Apache умел пересылать все получаемые запросы в Seafile. Применение такой настройки Apache позволит ему использовать только URL-адрес, без номера порта. А также, это поможет включать HTTPS-соединения при обмене данными с Seafile и использовать кэширование в Apache для повышения производительности.

Чтобы начать пересылать запросы нужно в конфигурации Apache включить модуль proxy_http. Этот модуль делает возможным использование проксирования HTTP и HTTPS запросов. Включите модуль следующей командой:

$ sudo a2enmod proxy_http

Для этой настройки также требуется наличие модулей ssl и rewrite. Их мы уже включили, когда настраивали шифрование трафика Apache при помощи Let’s Encrypt.

Далее, нужно будет настроить виртуальный хост my-domain.host. Это необходимо для того, чтобы обеспечить перенаправление запросов на Seafile и Seahub. Чтобы сделать это, откройте для редактирования файл конфигурации. Он располагается в каталоге /etc/apache2/sites-enabled/:

$ cd /etc/apache2/sites-enabled
$ sudo nano my-domain.host-le-ssl.conf
<IfModule mod_ssl.c>
<VirtualHost *:443> ServerAdmin mail@my-domain.host ServerName my-domain.host ServerAlias www.my-domain.host DocumentRoot /var/www/my-domain.host ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/my-domain.host/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/my-domain.host/privkey.pemAlias /media /home/your-user/seafile/seafile-server-latest/seahub/media <Location /media> Require all granted </Location> # seafile fileserver ProxyPass /seafhttp http://127.0.0.1:8082 ProxyPassReverse /seafhttp http://127.0.0.1:8082 RewriteEngine On RewriteRule ^/seafhttp - [QSA,L] # seahub web interface SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1 ProxyPass / http://127.0.0.1:8000/ ProxyPassReverse / http://127.0.0.1:8000/</VirtualHost>
</IfModule>

Здесь, используется несколько директив:

  • Alias – сопоставляет путь my-domain.host/media с каталогом в системе, на которой установлен Seafile.
  • Location – в ней указано, что доступ к содержимому этого каталога открыт.
  • ProxyPass и ProxyPassReverse – принуждают Apache работать как обратный прокси-сервер для хоста. То есть, все запросы, попадающие на порты 8000 и 8082, перенаправляются в каталоги файлового сервера и веб-интерфейса Seafile / и /seafhttp соответственно.
  • RewriteRule – передаёт запросы в директорию /seafhttp не изменяя их, а также, прекращает обработку дальнейших правил ([QSA,L]).

По окончании редактирования закройте файл, сохранив внесённые изменения. После чего проверьте корректность синтаксиса Apache:

$ sudo apache2ctl configtest

Если проверка выдала Syntax OK, перезапустите Apache для применения изменений:

$ sudo systemctl restart apache2

Установка FTP-сервера

Как всегда при работе с Ubuntu необходимо произвести первоначальную настройку сервера в соответствии с посвящённой данной процедуре статье. Далее следует обновить списки пакетов:

$ sudo apt update

После чего необходимо установить программу vsftpd:

$ sudo apt install vsftpd

По окончании установки можно убедиться, что сервис vsftpd уже успешно работает:

$ systemctl status vsftpd
systemctl status vsftpd

Далее необходимо произвести некоторые настройки в конфигурационном файле. Для этого откройте при помощи текстового редактора файл vsftpd.conf:

$ sudo nano /etc/vsftpd.conf

Вот те основные изменения, которые необходимо внести для корректной работы FTP-сервера:

listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
allow_writeable_chroot=YES

После внесения изменений в файл настроек необходимо сохранить их и перезапустить службу vsftpd:

$ sudo systemctl restart vsftpd

Активизация старта сервера Seafile при загрузке системы

Чтобы ваш файловый сервер и веб-интерфейс запускался автоматически при загрузке системы, нужно будет создать файлы сервиса и активировать их.

Сначала создайте файл службы для файлового сервера Seafile:

$ cd /etc/systemd/system
$ sudo nano seafile.service

Добавьте в этот файл следующие строки:

[Unit]
Description=Seafile
After=network.target mariadb.service
[Service]
Type=forking
ExecStart=/home/your-user/seafile/seafile-server-latest/seafile.sh start
ExecStop=/home/your-user/seafile/seafile-server-latest/seafile.sh stop
User=your-user
Group=your-user
[Install]
WantedBy=multi-user.target

Далее, создайте файл сервиса для веб-интерфейса Seahub:

$ cd /etc/systemd/system
$ sudo nano seahub.service

Здесь всё так же, как и в предыдущем файле. Единственное отличие заключается в том, что веб-интерфейс будет стартовать после службы Seafile:

[Unit]
Description=Seafile hub
After=network.target seafile.service
[Service]
Type=forking
ExecStart=/home/your-user/seafile/seafile-server-latest/seahub.sh start
ExecStop=/home/your-user/seafile/seafile-server-latest/seahub.sh stop
User=sammy
Group=sammy
[Install]
WantedBy=multi-user.target

Закройте созданный файл с сохраненим изменений.

И наконец, активируйте автоматический старт обоих сервисов при запуске системы:

$ sudo systemctl enable seafile.service
$ sudo systemctl enable seahub.service

Теперь, если вы перезагрузите свой сервер, Seafile запустится автоматически.

Как закачать файлы на сервер?

Закачать файлы на сервер можно 2-мя простыми способами:

  • воспользоваться FTP-клиентом (TotalCommander);
  • использовать «файловый менеджер» в панели управления ISPmanager.

Изменение конфигурации Seafile и запуск сервисов

Так как вы используете Apache, чтобы проксировать все запросы к Seafile, вам нужно будет изменить URL-адреса в конфигурационных файлах Seafile. Для этого перейдите в каталог conf и откройте для редактирования файл ccnet.conf:

$ cd ~/seafile/conf
$ sudo nano ccnet.conf

В этом файле отредактируйте значение переменной SERVICE_URL, указав в качестве значения новый URL-адрес без указания номера порта, но с префиксом https:

SERVICE_URL = https://my-domain.host
Настройка Seafile

Сохраните изменения и закройте файл. После чего откройте файл seahub_settings.py:

$ sudo nano seahub_settings.py

Здесь вам необходимо добавить переменную FILE_SERVER_ROOT, определяющую путь, который Seafile будет прослушивать для загрузки и выгрузки файлов:

FILE_SERVER_ROOT = 'https://my_domain.host/seafhttp'
Настройка Seafile

Сохраните изменения, закройте файл. Затем запустите службу Seafile и интерфейс Seahub:

$ cd ~/seafile/seafile-server-7.1.5
$ ./seafile.sh start
$ ./seahub.sh start

Так как вы впервые запускаете сервис Seahub, вам нужно будет создать учетную запись администратора. Здесь введите доступный вам адрес электронной почты и пароль для создаваемого пользователя:

Создание пользователя для доступа к Seafile - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

В случае, если при запуске seahub.sh, у вас появится сообщение:

LC_ALL is not set in ENV, set to en_US.UTF-8

то, вам необходимо будет в файл /etc/default/locale добавить строку:

LC_ALL="en_US.UTF-8"

Теперь откройте в браузере адрес вашего сайта и авторизуйтесь на нём с помощью адреса электронной почты и пароля:

Авторизация на сервере Seafile - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

После успешного подключения к системе вы попадёте в веб-интерфейс администратора.

Успешное подключение к Seafile

Защита передачи данных при помощи SSL/TLS

Для защиты передачи ваших данных между FTP-клиентом и FTP-сервером в данной инструкции мы будем использовать генерацию самозаверяющего SSL-сертификата. Закрытый ключ и сертификат будут сохранены в одном файле, для чего следует применить команду:

$ sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

После установки SSL-сертификата необходимо внести изменения в конфигурационный файл:

$ sudo nano /etc/vsftpd.conf

А именно, внесите изменения в следующие строки данного файла:

rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES

Настройка виртуального хоста

Теперь привяжем имя нашего домена к установленному на наш VPS веб-серверу. Для этого необходимо на Apache произвести настройку виртуального хоста. В нашем руководстве мы будем использовать доменное имя my-domain.host. Настройку виртуального хоста нужно будет выполнить по пунктам:

  • Создайте директорию для настраиваемого домена:
$ sudo mkdir /var/www/my-domain.host
  • Далее, измените владельца директории и права на неё:
$ sudo chown -R $USER:$USER /var/www/my-domain.host
$ sudo chmod -R 755 /var/www/my-domain.host
  • В данной директории создайте файл вашего сайта index.html:
$ cd /var/www/my-domain.host
$ sudo nano index.html
  • В создаваемый файл скопируйте следующие строки:
<html> <head> <title>My domain on Apache!</title> </head> <body> <h1>MY-DOMAIN.HOST</h1> <p>It is my domain.</p> </body>
</html>
  • Закройте файл с сохранением внесённых изменений.
  • Создайте конфигурационный файл для виртуального хоста:
$ sudo nano /etc/apache2/sites-available/my-domain.host.conf
  • В него вставьте следующий текст. Не забывайте заменять my-domain.host на имя вашего домена, а в строку ServerAdmin впишите доступный адрес электронной почты:
<VirtualHost *:80> ServerAdmin admin@my-domain.host ServerName my-domain.host ServerAlias www.my-domain.host DocumentRoot /var/www/my-domain.host ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
  • Активируйте созданный хост:
$ sudo a2ensite my-domain.host.conf
  • Отключите дефолтный домен:
$ sudo a2dissite 000-default.conf
  • Проверьте синтаксис конфигурации созданного хоста:
$ sudo apache2ctl configtest
  • Проверка должна выдать результат – Syntax Ok.
  • Перезагрузите службу Apache:
$ sudo systemctl restart apache2

Теперь проверьте доступность домена набрав в браузере его адрес http://my-domain.host:

Подключение к домену

Заключение

Как видите, способ обмена файлами путём открытия доступа через изменение настроек RDP-подключения, очень прост в реализации. В результате такого подключения вы сможете копировать файлы и папки с локальной рабочей станции так, как будто они находятся на локальном диске удалённого сервера. Стоит отметить, что для более комфортного использования такого метода не плохо иметь хорошее подключение к интернету на стороне вашего компьютера.

Заключение

В данном руководстве мы создали и настроили приватный файловый сервер Seafile. Теперь, вы можете загружать на него свои файлы, добавлять на нём пользователей и группы пользователей и предоставлять им доступ на файлы не используя при этом никаких сторонних файлообменных сервисов.

Оцените статью
Хостинги