Ftp сервер на CentOs 6.x

В качестве сервера FTP могу предложить Very Secure FTP Demon

Для начало установим службу VSFTPD командой

yum install vsftpd

затем запустим службу и поместим её в автозапуск

service vsftpd start    #запуск службы

chkconfig vsftpd on   #помещение службы в автозапуск

анонимный FTP сервер готов к работе, файлы хранятся в папке /var/ftp/

Если необходимо предоставить ftp доступ конкретному пользователю в домашний каталог через ftp проделываем следующие действия

useradd ftpuser  #создаём учетную запись(имя может быть любым)

passwd ftpuser  #создаем пароль для учетной записи

теперь необходимо настроить политику SeLinux блокирующая доступ VSFTPD к домашнему каталогу, делается это так

setsebool -P ftp_home_dir on     #ключ -P даёт понять Selinux что настройка данной политики должна сохраниться постоянно, если не указать этот ключ после перезагрузки значение сбросится на умолчание.

Теперь смело можно подключаться к серверу под логином и паролем используя программу, например,FileZilla

При таких настройках созданный пользователь сможет просматривать весь сервер и подключаться по SSH, отключим эту возможность, откроем файл для редактирования

/etc/vsftpd/vsftpd.conf

раскоментируем эту строку(удалить #)  chroot_list_enable=YES

в строке chroot_list_file=/etc/vsftpd/chroot_list указан файл с списком пользователей которых необходимо запереть в домашнем катологе, внесите имя пользователя(в данном случаи ftpuser) в файл chroot_list предварительно создав его, имя файла может быть любым, главное что-бы имя было указанно в строке chroot_list_file

Если необходимо запретить просматривать каталоги на сервере всем пользователям то необходимо раскоментировать только строку

chroot_local_user=YES

и добавить строку(хотя эту строку необходимо добавить в любом случаи)

allow_writeable_chroot=YES

Чтобы создать файл необходимо проделать следующие действия

зайдём в каталог /etc/vsftpd/ командой

 cd /etc/vsftpd/

создадим файл chroot_list командой

vi chroot_list

и перед вами откроется текстоый редактор vi

Нажмите клавишу i и вводите список пользователей(тем же образом что указанно на скриншоте) которых необходимо запереть в своём каталоге

Теперь сохраним файл, нажмите клавишу Esc и введите :wq  и нажмите Enter

Теперь запретим пользователю доступ по SSH

Открывает файл /etc/passwd   и на ходим строку с именем пользователя которого вы создали. Выглядеть это будет примерно так

ftpuser:x:501:501::/home/ftpuser:/bin/bash

необходимо заменить на это

ftpuser:x:501:501::/home/ftpuser:/sbin/nologin

сохраните изменение в файле и перезапустите службу VSFTPD(перезапуск службы необходимо делать каждый раз при изменениях в конфигах)

service vsftpd restart

Теперь добавим правила для iptables

iptables -I INPUT -p tcp --dport 21 -j ACCEPT

сохраним настройки iptables

service iptables save

К слову, очень удобно редактировать файлы и перемещаться по папкам с помощью Midnight Commander, установить его очень просто 

yum install mc

а запустить ещё проще

mc

Добавить комментарий


Защитный код
Обновить