Я использую SLES 10.1 и пытаюсь настроить vsftpd, чтобы разрешить вход в систему с правами root. Кто-нибудь знает как это сделать?
Пока у меня есть это:
local_enable=YES
chroot_local_user=NO
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.users
И я добавил root в /etc/vsftpd.users. Когда я пытаюсь войти в систему, я получаю следующее:
$ ftp susebox Connected to susebox.example.com. 220-FTP Server (user 'me@example.com') 220 User (susebox.example.com:(none)): root 331-Password: 331 Password: Connection closed by remote host. C:\>
Кстати, если вы не знаете ответа, пожалуйста, не пытайтесь читать мне лекции о том, как я не должен разрешать вход в систему с правами root. Я знаю, что делаю, и беру на себя полную ответственность за любые разрывы в пространственно-временном континууме, которые могут произойти.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: включение входа в систему root для FTP является Очень плохая идея по многим, многим причинам.
Отредактируйте свой vsftpd.conf
файл и добавьте следующую строку:
userlist_deny=YES
редактировать user_list
и ftpusers
и закомментируйте "root".
Для тех (вроде меня), использующих VSFTPD на сервере Ubuntu в середине 2013 года, похоже, что root может входить в систему через SFTP по умолчанию никаких особых изменений не требуется.
Однако, если вам действительно нужно FTP доступ, все, что мне нужно было сделать, это:
sudo nano /etc/ftpusers
И закомментируйте строку root
на нем, поместив #
на старте. Сохраните файл, и перезагрузка сервера даже не потребуется.
vi /etc/pam.d/vsftpd
-> если вы используете vsftpd
найти
auth blablabla sense=deny file=/etc/ftpusers
Сделать так, чтобы это было sense= allow
или вы можете раскомментировать script
над ним, или измените файл: ftpusers, или добавьте еще файлы ftpusers
для Debian 8 Jessie вам просто нужно отредактировать /etc/ftpusers
и закомментировать или удалить root. больше ничего не нужно, просто перезапустите vsftpd
Vsftpd может использовать pam для аутентификации, поэтому я предлагаю вам проверить /etc/pam.d/vsftpd. Вы, вероятно, обнаружите, что это pam, который был настроен на предотвращение входа в систему root.
В более новых версиях вам может потребоваться изменить pam_service_name=vsftpd
к pam_service_name=ftp
ближе к концу вашего /etc/vsftpd.conf
файл. В противном случае вы можете получить ошибку аутентификации при входе для пользователя root (или любого пользователя), даже если в остальном разрешения верны.
Начиная с 2020 года, после новой установки vsftpd, единственный необходимый шаг - изменить / etc / ftpusers с:
root
daemon
bin
sys
adm
...
Чтобы
#root
daemon
bin
sys
adm
...
Файл ftpuserlist явно перечисляет пользователей, которым запрещен доступ по FTP.
Также,
Если вы используете программно управляемый брандмауэр (например, UFW или IPTables), обязательно откройте порты FTP, а также настройте пассивный режим VSFTPD:
pasv_enable = Да
pasv_max_port = 10100
pasv_min_port = 1009
pasv_address = xxx.xxx.xxx.xxx
Вы должны выбрать диапазон портов, который соответствует вашей сети / потребностям, а затем разрешить этот диапазон портов на вашем брандмауэре, иначе вы продолжите получать постоянное сообщение «227 Entering Passive Mode» с последующим отключением.
Если вы используете Amazon EC2, Google Cloud, Azure или любое другое решение, не забудьте также разрешить эти порты в группах безопасности / правилах брандмауэра на консоли.