Я пытаюсь настроить SFTP на Centos 7, на моем первом сервере все работает отлично, но на втором сервере, когда я пытаюсь подключиться, я получаю:
sftp USERNAME@serveripaddress
У меня такая ошибка:
Could not read packet: Connection reset by peer
Я использую этот метод:
adduser USERNAME
passwd USERNAME
groupadd sftp_only
usermod -aG sftp_only USERNAME
Настройте SSH chroot:
vi /etc/ssh/sshd_config
Добавить комментарий :
#Subsystem Sftp /usr/libexec/openssh/sftp-server
Добавьте строку после:
Subsystem sftp internal-sftp
Добавьте в конец файла:
Group sftp_only Match
ChrootDirectory /var/www
ForceCommand internal-sftp
X11Forwarding No
AllowTcpForwarding No
Перезапустите SSH:
service sshd restart
У меня на двух серверах одинаковые правила iptables, и я пробую отключить iptables.
Может быть, мне нужно установить FTP-сервер типа VSFTPD?
Спасибо за помощь, потому что я полностью заблокирован уже несколько часов.
решение1
Вы можете использовать proftpd, который предлагает SFTP-фронтенд. Таким образом вы можете объединить SFTP, FTP и FTP/S в одном демоне. Однако вы не можете использовать порт 22 для SFTP или вам придется отказаться от SSH на этом порту, поскольку proftpd и sshd не могут привязать одни и те же порты для SFTP.
решение2
кошка /var/log/auth.log
May 10 17:08:32 machine sshd[31902]: fatal: bad ownership or modes for chroot directory component "/var/www/html/nextcloud/"
это была моя проблема
После этого мы можем следовать этомунеправильное владение или режимы для компонента каталога chroot
Кстати, я в итоге использую решение BindНужна помощь - ограничить доступ к пользователю sftp для других пользователей home->subfolder
решение3
Измените PasswordAuthentication no
на PasswordAuthentication yes
in /etc/ssh/sshd_config
file и перезапустите с помощью service sshd restart
команды.
решение4
Убедитесь, что папка home принадлежит пользователю root, а папка default принадлежит пользователю sftp. Например, если вы хотите сделать входящий домашним каталогом для пользователя 'guestuser', вам следует создать папку с пользователем /guestuser/incoming. Папка guestuser должна принадлежать пользователю root, а входящий должен принадлежать пользователю guestuser.