默认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,含义如下
<pre>
PermitRootLogin yes #允许root用户以任何认证方式登录(貌似也就两种认证方式:用户名密码认证,公钥认证)
PermitRootLogin without-password #只允许root用public key认证方式登录
PermitRootLogin no #不允许root用户以任何认证方式登录
</pre>
修改好后,重启 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两个配置项的解释 这篇文章。