ubuntu ftp root用户登录解惑

默认adduser 命令建立的用户可以使用ssh登录、ftp登录,并且服务器不需要安装vsftpd软件都可以登录ftp

ubuntu 默认是不启用root用户的,不过可以通过public key来登录,不能ssh登录和ftp登录,所以当服务器安装了vsftpd以后依然不能登录ftp,这就是为什么在ubuntu系统中root不能登录ftp,但是如果还是希望root能登录ftp和ssh则要修改:

方式一:sudo passwd root #修改密码后就启用了

方式二:$ sudo vi /etc/ssh/sshd_config

找到PermitRootLogin 一行,改为PermitRootLogin yes,即允许root用户以任何认证方式登录

PermitRootLogin这个参数,它的值可以为yes/no/without-password,含义如下


PermitRootLogin yes #允许root用户以任何认证方式登录(貌似也就两种认证方式:用户名密码认证,公钥认证)
PermitRootLogin without-password #只允许root用public key认证方式登录
PermitRootLogin no #不允许root用户以任何认证方式登录

修改好后,重启 openssh server
$ sudo service ssh restart

还有一个坑:

如果你安装了vsftpd为ftp软件的话(默认非root用户直接可以使用ftp工具登录),在配置文件/etc/ftpusers里,root这个用户要注意配合vsftpd.conf中的userlist_enable和userlist_deny两个配置使用,查看vsftpd中关于ftpusers和user_list两个文件的说明以及vsftpd.conf中的userlist_enable和userlist_deny两个配置项的解释 这篇文章。

你可能感兴趣的:(ubuntu ftp root用户登录解惑)