Прежде чем углубиться в установку FTP на CentOS, нам нужно немного узнать о его использовании и безопасности. FTP — это действительно эффективный и хорошо проработанный протокол для передачи файлов между компьютерными системами. FTP используется и совершенствуется уже несколько десятилетий. Для эффективной передачи файлов по сети с задержкой или для высокой скорости FTP является отличным выбором. Больше, чем SAMBA или SMB.
Тем не менее, FTP имеет некоторые проблемы с безопасностью. На самом деле, некоторые серьезные проблемы с безопасностью. FTP использует очень слабый метод аутентификации в виде простого текста. Именно по этой причине аутентифицированные сеансы должны полагаться на sFTP или FTPS, где TLS используется для сквозного шифрования сеансов входа и передачи.
С учетом вышеуказанных предостережений простой старый FTP по-прежнему находит применение в бизнес-среде. Основное использование — анонимные хранилища файлов FTP. Это ситуация, когда не требуется аутентификация для загрузки или загрузки файлов. Некоторые примеры использования анонимного FTP:
-
Крупные софтверные компании по-прежнему используют анонимные FTP-репозитории, позволяющие пользователям Интернета загружать условно-бесплатные программы и исправления.
-
Разрешение пользователям Интернета загружать и скачивать публичные документы.
-
Некоторые приложения автоматически отправляют зашифрованные, заархивированные журналы или файлы конфигурации в хранилище по FTP.
Крупные софтверные компании по-прежнему используют анонимные FTP-репозитории, позволяющие пользователям Интернета загружать условно-бесплатные программы и исправления.
Разрешение пользователям Интернета загружать и скачивать публичные документы.
Некоторые приложения автоматически отправляют зашифрованные, заархивированные журналы или файлы конфигурации в хранилище по FTP.
Следовательно, будучи администратором CentOS, возможность устанавливать и настраивать FTP по-прежнему остается искусством.
Мы будем использовать демон FTP с именем vsFTP или Very Secure FTP Daemon. vsFTP был использован в разработке некоторое время. Он имеет репутацию безопасного, простого в установке и настройке и надежного.
Шаг 1 — Установите vsFTPd с помощью диспетчера пакетов YUM.
[root@centos]# yum -y install vsftpd.x86_64
Шаг 2 — Настройте vsFTP для запуска при загрузке с systemctl.
[root@centos]# systemctl start vsftpd [root@centos]# systemctl enable vsftpd Created symlink from /etc/systemd/system/multi- user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
Шаг 3 — Настройте FirewallD, чтобы разрешить FTP управление и сеансы передачи.
[root@centos]# firewall-cmd --add-service=ftp --permanent success [root@centos]#
Убедитесь, что наш FTP-демон работает.
[root@centos]# netstat -antup | grep vsftp tcp6 0 0 :::21 :::* LISTEN 13906/vsftpd [root@centos]#
Шаг 4 — Настройте vsFTPD для анонимного доступа.
Создать корневой каталог FTP
[root@centos]# mkdir /ftp
Смена владельца и группы FTP-root на ftp
[root@centos]# chown ftp:ftp /ftp Set minimal permissions for FTP root: [root@centos]# chmod -R 666 /ftp/ [root@centos]# ls -ld /ftp/ drw-rw-rw-. 2 ftp ftp 6 Feb 27 02:01 /ftp/ [root@centos]#
В этом случае мы предоставили пользователям доступ на чтение / запись ко всему корневому дереву FTP.
Настройте /etc/vsftpd/vsftpd.conf «
[root@centos]# vim /etc/vsftpd/vsftpd.conf # Example config file /etc/vsftpd/vsftpd.conf # # The default compiled in settings are fairly paranoid. This sample file # loosens things up a bit, to make the ftp daemon more usable. # Please see vsftpd.conf.5 for all compiled in defaults. # # READ THIS: This example file is NOT an exhaustive list of vsftpd options. # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's # capabilities.
Мы хотим изменить следующие директивы в файле vsftp.conf .
-
Включить анонимную загрузку, раскомментировав anon_mkdir_write_enable = YES
-
chown загруженные файлы принадлежат пользователю системы ftp
chown_uploads = ДА
chown_username = ftp
-
Измените системного пользователя, используемого vsftp, на пользователя ftp: nopriv_user = ftp
-
Установите пользовательский баннер для чтения пользователем перед входом в систему.
ftpd_banner = Добро пожаловать на наш анонимный FTP репо. Все соединения контролируются и регистрируются.
-
Давайте установим только соединения IPv4 —
слушай = ДА
listen_ipv6 = НЕТ
Включить анонимную загрузку, раскомментировав anon_mkdir_write_enable = YES
chown загруженные файлы принадлежат пользователю системы ftp
chown_uploads = ДА
chown_username = ftp
Измените системного пользователя, используемого vsftp, на пользователя ftp: nopriv_user = ftp
Установите пользовательский баннер для чтения пользователем перед входом в систему.
ftpd_banner = Добро пожаловать на наш анонимный FTP репо. Все соединения контролируются и регистрируются.
Давайте установим только соединения IPv4 —
слушай = ДА
listen_ipv6 = НЕТ
Теперь нам нужно перезапустить или подключить службу vsftp, чтобы применить наши изменения.
[root@centos]# systemctl restart vsftpd
Давайте подключимся к нашему FTP-хосту и убедимся, что наш FTP-демон отвечает.