
Установите Secure File Transfer Protocol SFTPGO на сервер или рабочий стол Ubuntu 24.04 Noble или 22.04 LTS Jammy JellyFish, чтобы получить поддержку HTTP, WebDAV и FTP/S.
Передача файлов — одна из самых важных задач при администрировании сервера или веб-пространства. Конечно, для этого существует множество различных инструментов и протоколов — одним из них является Secure File Transport (SFTP). По сравнению с другими методами, такими как часто используемый протокол переноса файлов (FTP), блок сообщений сервера или общая файловая система Интернета (SMB/CIFS, Samba), SFTP имеет особые преимущества и недостатки, которые не присущи ни одному другому стандарту.
Что такое SFTP?
SFTP — это расширение Secure Shell (SSH), инструмента для доступа и администрирования компьютеров по сети. SSH — это серверная служба, которая ожидает подключения от клиента и после успешной аутентификации предоставляет ему терминал — текстовую командную строку для ввода команд. Это, пожалуй, самый распространенный протокол в Интернете для управления сервером и запуска программ на удаленной машине.
Одним из недостатков SSH является то, что клиент не предлагает прямого способа передачи файлов. После входа в систему пользователь использует вход, который предлагает практически те же функции, что и при локальном доступе с помощью экрана и клавиатуры. SFTP устраняет этот недостаток за счет использования отдельной коммуникационной программы. Однако некоторые клиенты, например очень популярная программа PuTTY, интегрируют этот стандарт в свой интерфейс и предлагают возможность параллельного использования SSH и SFTP через отдельное соединение.
Однако есть простая в использовании программа под названием SftpGo, написанная на языке программирования Go. Это полнофункциональный и очень настраиваемый SFTP-сервер с дополнительной поддержкой HTTP/S, FTP/S и WebDAV. Мы можем установить его на все популярные системы Linux. Он также поддерживает несколько бэкэндов хранения данных, таких как локальная файловая система, зашифрованная локальная файловая система, S3 (совместимое) объектное хранилище, Google Cloud Storage, Azure Blob Storage и SFTP. Более подробную информацию о программе можно получить на сайте GitHub-странице.
Шаги по установке SFTPGo на Ubuntu 24.04 или 22.04 LTS
Существует два способа установки программы SFTPGo на Ubuntu: один из них — с помощью PPA-репозитория, а другой — с помощью бинарного файла Debian. Здесь мы покажем оба варианта.
#Первый способ с использованием PPA-репозитория
1. Обновите Ubuntu
В Linux хорошей практикой является запуск команды обновления системы перед установкой любого приложения. Это позволит установить все последние доступные обновления в нашей системе.
sudo apt update && sudo apt upgrade
Также установите дополнительный необходимый пакет для добавления PPA-репозиториев.
sudo apt install software-properties-common
2. Добавьте PPA-репо SFTPGo на Ubuntu 24.04 или 22.04
Теперь используйте команду для добавления PPA-репозитория SFTPGo на Ubuntu 24.04 или 22.04, чтобы установить это программное обеспечение с помощью системного менеджера пакетов APT, как и любое другое стандартное программное обеспечение.
sudo add-apt-repository ppa:sftpgo/sftpgo
Обновление системы для обновления индексного кэша пакетов APT:
sudo apt update

3. Установите SFTPGo на Ubuntu 24.04 или 22.04
Наконец, установите программу на свою систему, чтобы легко получить доступ к ней на Ubuntu, как к любому другому приложению.
sudo apt install sftpgo

После завершения установки мы можем проверить, корректно ли она работает в качестве службы в фоновом режиме.
systemctl status sftpgo --no-pager -l

#2-й метод с использованием бинарных файлов Debian
4. Загрузите двоичный файл SFTPGo Deb
Те, кто не хочет добавлять дополнительный PPA-репозиторий в свою систему, могут скачать исполняемый бинарник Debian напрямую.
ЗдесьМы используем командную строку для загрузки; вы также можете посетить сайт страницу релиза на GitHub этого инструмента, чтобы получить его напрямую.
Установите значение VER на последнюю версию SFTPgo —
VER=$(curl -s https://api.github.com/repos/drakkan/sftpgo/releases/latest|grep tag_name | cut -d '"' -f 4 |sed 's/v//g')
Теперь загрузите его:
wget https://github.com/drakkan/sftpgo/releases/download/v$VER/sftpgo_$VER-1_amd64.deb
5. Установка SFTPGo на Debian/Ubuntu
Предыдущие и приведенные ниже команды для получения и установки SFTPGo будут одинаковыми для всех Linux-систем на базе Ubuntu или Debian.
sudo dpkg -i sftpgo_*_amd64.deb
6. Откройте порты в брандмауэре Ubuntu 24.04 или 22.04
Нам нужно открыть несколько портов в нашей системе или в любом другом брандмауэре, который вы используете, чтобы мы могли получить доступ к ним из любой другой сети.
sudo ufw allow 8080
sudo ufw allow 2022
sudo ufw allow 8090
6. Доступ к веб-интерфейсу
После использования любого из описанных выше методов SFTPGo окажется в вашей системе. Теперь мы можем получить доступ к его веб-интерфейсу. Для этого просто откройте браузер локальной системы и направьте его на IP-адрес сервера или рабочего стола, на который вы установили SFTPGo, используя порт с номером 8080.
Например:
http://server-ip-addres:8080
Создание пользователя Admin
После входа в веб-интерфейс вам сначала будет предложено создать учетную запись администратора.

7. Создайте нового пользователя
После того как вы получили панель управления SFTPGo, давайте создадим нового пользователя для доступа к данным хранилища с помощью любого веб- или локального клиента, например Filezilla.
Для этого нажмите на кнопку «Пользователи«. После этого нажмите на значок +.

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

Те, кто хочет получить доступ к локальной файловой системе, выбирают эту опцию. Другие варианты, такие как AWS S3 и Google Cloud storage, также доступны; однако для них сначала нужно настроить их в разделе Папки вариант.

8. Подключитесь к SFTPGo с помощью клиента
Здесь мы используем клиент FileZilla. Вы можете использовать любой другой, если хотите. Откройте его и введите IP-адрес вашего сервера вместе с протоколом SFTP:
Пример:
sftp://server-ip-address
После этого, введите имя пользователя и пароль созданный вами на SFTPGo, и используйте порт 2022. Наконец, нажмите на кнопку «Быстрое подключение«, чтобы проверить, точно ли работает наш сервер SFTPGo..

Примите ключи


9. Монтируйте SFTPGo как WebDav
Те, кто хочет использовать файловую систему хранения удаленного сервера как любой другой локальный диск, могут смонтировать ее как WebDav с помощью SFTPGo.
Сначала включите WebDav:
Отредактируйте конфигурационный файл SFTPGo и установите порт для WebDav.
sudo su -
nano /etc/sftpgo/sftpgo.json
Найти WebDav разделы и установите порт из 0 на 8090.

Сохраните файл, нажав Ctrl+O, нажав Введите , а затем с помощью клавиши Ctrl+X для выхода.
Монтирование WebDav в Windows
Сначала внесите некоторые изменения в системный реестр. Нажмите кнопку Win+R клавиша и тип regedit
чтобы открыть реестр.
Перейти к:
Компьютер\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters
Теперь дважды щелкните на «BasicAuthLevel»

Изменить значение 1 на 2. Нажмите кнопку Ok кнопка.

Перезапустите службу WebDav:
Запустите PowerShell от имени администратора и введите поочередно указанные команды.
net stop webclient
net start webclient
Зайдите в раздел «Этот компьютер» или «Мой компьютер» в Windows и в меню выберите «Карта сети Дискe.»

Введите адрес и номер порта вашего SFTPGo в следующем формате.
http://server-ip:8090
Когда появится запрос на ввод имени пользователя и пароля, сделайте это.

Вскоре диск будет смонтирован так же, как и любой другой локальный диск в вашей системе.

Для Linux, например Ubuntu
Откройте диспетчер файлов на Ubuntu, перейдите в раздел «Другие места» и введите IP-адрес сервера вместе с портом, как показано на скриншоте.
Например:
dav://server-ip-address:8090
Нажмите кнопку Подключиться кнопка.

Укажите имя пользователя и пароль, которые вы создали на SFTPGo.

Наконец, у вас будет смонтированный диск.

10. Как обновить
Тем, кто использовал PPA для установки SFTPGo, нужно запустить команду обновления системы; вот она:
sudo apt update && sudo apt upgrade
В то время как тем, кто использовал бинарные файлы Debian, нужно загрузить последние бинарные файлы SFTPGo вручную, как мы сделали в этой статье, и установить их с помощью инструмента DPKG.
11. Деинсталляция или удаление SFTPGo — Ubuntu 24.04 или 22.04
Если на вашей системе Ubuntu 24.04 или 22.04 больше нет этой SFTP-программы, удалите ее с помощью данной команды:
sudo apt autoremove --purge sftpgo
Чтобы удалить PPA, если вы его используете:
sudo add-apt-repository --remove ppa:sftpgo/sftpgo