微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ubuntu – sftp没有可用的支持身份验证方法

我正在尝试设置sftp来从特定目录上传/下载文件(var / www / mysite.com)

我的问题是当我尝试使用Filezilla进行连接时,我收到错误消息

No supported authentication methods available (server sent: publickey)

所以我想我在Ubuntu LAMP服务器上安装和配置sftp时错过了一个步骤.我不应该希望能够使用用户名和密码而不是密钥文件进行sftp.

这是我做的:
通过SSH创建用户密码
然后我

sudo adduser <username> www-data

然后我

sudo nano /etc/vsftpd.conf

并在文件集内部chroot_local_user = YES并注释掉chroot_list_enable = YES然后使用以下命令重新启动sftp:

sudo service vsftpd restart

然后我配置了users目录
sudo usermod -d /var/www/mydomain.com
注意我替换为我创建的用户名

然后我

sudo nano /etc/ssh/sshd_config

并将以下内容添加文件底部

Subsystem  sftp  internal-sftp
Match user <username>
ChrootDirectory /var/www/mydomain.com
ForceCommand internal-sftp
AllowTcpForwarding no

并确保在文件中进一步注释掉(即在你刚添加文件之前)

#Subsystem sftp /usr/lib/openssh/sftp-server

然后我使用以下命令重新启动ssh:

sudo service ssh restart

和更改权限使用:

chown root:root /var/www
chown root:root /var/www/mydomain.com
chmod 755 /var/www

最后我做了:

sudo chown -R www-data:www-data /var/www/mydomain.com
chmod 755 /var/www/site

但是我无法通过filezilla登录sftp?

当我运行ssh命令时:

sftp -vvv user@servername

我得到以下内容.我在var / log文件夹中没有/ secure?

当我运行上面的推荐时,我得到了这个输出

OpenSSH_7.2p2 Ubuntu-4ubuntu2.1,OpenSSL 1.0.2g  1 Mar 2016
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
/etc/ssh/ssh_config: line 57: Bad configuration option: usepam
/etc/ssh/ssh_config: line 58: Bad configuration option: subsystem
debug2: checking match for 'user <username>' host *****.com originally *****.com
debug3: /etc/ssh/ssh_config line 59: not matched 'user "*****"'
debug2: match not found
/etc/ssh/ssh_config: line 60: Bad configuration option: chrootdirectory
/etc/ssh/ssh_config: line 61: Bad configuration option: forcecommand
/etc/ssh/ssh_config: line 62: Bad configuration option: allowtcpforwarding
/etc/ssh/ssh_config: terminating,5 bad configuration options
Couldn't read packet: Connection reset by peer
/etc/ssh/ssh_config: line 60: Bad configuration option: chrootdirectory
/etc/ssh/ssh_config: line 61: Bad configuration option: forcecommand
/etc/ssh/ssh_config: line 62: Bad configuration option: allowtcpforwarding
/etc/ssh/ssh_config: terminating,5 bad configuration options

您将这些配置选项放在ssh_config而不是sshd_config中.它们在第一个中无效.

sudo chown -R www-data:www-data /var/www/mydomain.com

这也是错误的,因为chroot目录必须是root拥有的,并且不能由任何其他用户写入,如许多答案和sshd_config的手册页中所述.

原文地址:https://www.jb51.cc/ubuntu/347787.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐