鉴于使用root用户操作系统有诸多风险,也给网络黑客暴力破解服务器密码可乘之机,于是决定禁用root用户远程登录系统,可是禁用root用户登录系统也带来一个问题,那就是root用户登录不了WinScp,也就没办法上传文件了,这还了得,这会给工作带来多大不便。因此,在禁用root用户登录系统之前,先要开放普通用户使用WinScp上传文件,然后才能禁止root用户登录。下面说下实现方法。
(一) 开放开放普通用户使用WinScp上传文件
1.先用root账号登录系统
2.使用命令find / -name sftp-server -print,查找到本地sftp-server文件路径,例如:/usr/lib/sftp-server
3.输入命令visudo,找到以下地方:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
添加如下代码:
user: ALL=NOPASSWD:/usr/lib/sftp-server
注意:user为要开放上传文件的普通用户名,记得替换为自己的普通账号,/usr/lib/sftp-server为自己sftp-server文件路径
然后找到Defaults requiretty,在前面添加#号注释掉,保存退出
4.修改winscp配置信息,在登录界面,点“编辑”------->“高级”----------->选择SFTP,输入如下图的信息:
,确定----------------->保存,
5.最后,使用开放上传权限的普通用户账号,登录WinScp,发现此时可以上传文件了。
(二)禁止root用户登录
vim /etc/ssh/sshd_config 找到 #PermitRootLogin yes
将#号去掉 并把yes替换为no PermitRootLogin no
保存退出
重启 service sshd restart
然后使用root账号登录,发现root账号已经被禁止登录了。