Я настраиваю на своем VPS vsftpd, и я не хочу, чтобы пользователи могли оставлять свои домашние каталоги ftp. Я использую ftp local_user, а не анонимный, поэтому я добавил:
chroot_local_user = ДА
Я прочитал во многих сообщениях на форуме, что это небезопасно.
- Почему это небезопасно?
- Если это небезопасно из-за использования ssh для подключения к моему VPS, то я могу просто заблокировать этих пользователей из sshd, верно?
- Есть ли другой вариант для достижения такого поведения vsftpd? (Я не хочу удалять разрешения на чтение для всех папок / файлов для "world" в моей системе)
vsftpd
бы был брешь в безопасности (а именно переполнение буфера) ??? Как запускvsftpd
с пользователями, привязанными к их домашнему каталогу, делает этот сценарий более вероятным? Пожалуйста, объясните ...Проблема в том, что вы не можете использовать как локальные учетные записи, так и отключить эти учетные записи от входа в оболочку. Если вы установите их оболочку входа в систему / bin / nologin, она также не позволит вам войти через vsftpd.
Лучшим и более безопасным FTP-демоном был бы Pure-ftpd. Посмотрите, он доступен в репозитории EPEL и позволяет создавать виртуальных пользователей. Сервер использует общего пользователя / группу для установки всех разрешений для домашних папок пользователей и «сопоставляет» виртуальных пользователей с этим пользователем при входе в систему для обработки разрешений. Это более безопасно, и вам не нужно иметь дело с безопасностью входа в систему openssh.
Pure-ftpd также поддерживает множество функций, таких как квоты, отношения и тому подобное. Гораздо лучше, чем vsftpd.
Вот простое руководство по установке и настройке обычного виртуального пользователя: http://blog.namran.net/2011/05/04/how-to-setup-virtual-ftp-server-using-pure-ftpd- в-CentOS /
Если вы прочтете полный документ (что вам следует), вы будете знать, что ключ -d при создании виртуального пользователя является авто-chroot в этот каталог для этого пользователя.
источник
AllowUsers user1 user2
директиву в моем sshd_config, где я не позволяю ftp_user1 войти в систему с помощью ssh, тем не менее, пользователь ftp_user1 может войти с помощью ftp. Так что это работает как задумано, но мой главный вопрос остается открытым, почему это небезопасно?