FTP — это простой способ передачи файлов с нашего одноплатника на другие устройства, а также самый быстрый способ передачи данных между устройствами — по крайней мере, быстрее, чем SAMBA. Если используется например Orange Pi для потоковой передачи мультимедиа на другие устройства, FTP, безусловно, подходит, хотя SAMBA может быть более удобным для пользователей Windows, но если необходимо то всегда можно использовать SAMBA для управления файлами.
Установка и настройка FTP-сервера в Linux
FTP является удобным средством, можно даже получить доступ к нему за пределами вашей домашней сети (при наличии белого IP), если настроить бесплатный динамический DNS и сделать перенаправление портов на маршрутизаторе на устройство Linux. Некоторые могут подумать, почему не просто использовать встроенный SFTP, который по умолчанию включен с сервером SSH в Linux. Причина в том, что устройства с низким энергопотреблением плохо дружат с шифрованием, которое сильно влияет на слабый процессор одноплатника, и естественно ограничивает скорость передачи данных примерно до 5.5 МБ/с. Поэтому рекомендуется установить безопасные пароли без шифрования, и это будет достаточно безопасно, а если сервер используется только локально, риск безопасности минимален.
Установка FTP-сервера
Обновление и апгрейд пакетов
sudo apt-get update && sudo apt-get upgrade -y
Установка vsftpd — очень безопасный FTP-демон
sudo apt-get install vsftpd -y
Настройка FTP-сервера в Linux
Отредактируем файл конфигурации vsftpd
sudo nano /etc/vsftpd.conf
Сначала отключим анонимный FTP-доступ в целях безопасности
anonymous_enable=YES
изменим на
anonymous_enable=NO
Включим локальных пользователей, и любой, у кого есть локальная учетная запись пользователя может получить доступ к любому каталогу, который им принадлежит. Для этого раскомментируем, удалив символ «#». Это означает, что пользователь opi сможет получить доступ к каталогу /home/users/opi или любым другим каталогам, к которым у него есть доступ. Изменим эту строку:
#local_enable=YES
в
local_enable=YES
Если необходимо включить загрузку на FTP для пользователя в свой домашний каталог, раскомментируем строку write_enable, изменив
#write_enable=YES
в
write_enable=YES
В скрытых файлах Linux предшествует символ «.». если хотим видеть скрытые папки, добавим эту строку в самый низ
force_dot_files=YES
Ctrl + X, Y и Enter для сохранения конфигурации vsftp
Включение пользователя root для доступа к FTP
Включим пользователя root для доступа ftp, это не рекомендуется делать, но используется для выполнения скриптов через FTP, которые требуют доступа root. Если используем root-доступ на FTP то необходимо использовать сложный пароль.
sudo nano /etc/ftpusers
Закомментируем пользователя root, добавив префикс #:
#root
Ctrl + X, Y и Enter, чтобы сохранить изменения пользователей ftp.
Перезапустим FTP-сервер
sudo service vsftpd restart
Теперь можно получить доступ к FTP-серверу с портом 21, с помощью таких программ, как FileZilla или WinSCP. Если использовать интернет-браузер, то вводим
ftp://user:password@ip.address:21
Также можно использовать свой динамический IP-адрес
ftp://user.password@dynamicdns:21
Не забудим настроить переадресацию портов, если хотим получить доступ к своему FTP-серверу за пределами локальной сети.
как расшарить жесткий диск для ftp?