知识点:
1、OpenSSH远程管理
2、TCP Wrappers访问控制
配置OpenSSH
sshd服务默认允许root用户登录,当在Internet中使用时这是非常不安全的。普遍的做法是:先以普通用户远程登录,进入安全shell环境后,根据实际需要使用su命令切换为root用户。关于sshd服务的用户登录控制,通常就禁止root用户或密码为空的用户登录。另外,可以限制登录验证的时间(默认为2分钟)及最大重次数,若超过限制后仍未登录则断开连接。
# vim /etc/ssh/sshd_config
LoginGraceTime 2m //登录验证时间
PermitRootLogin no //禁止root用户登录
MaxAuthTries 3 //最大重试次数
MaxSessions 10 //最大连接数
PermitEmptyPasswords no //禁止空密码用户登录
..... //省略内容
# systemctl restart sshd
如果只允许或禁止某些用户登录时,可以使用AllowUsers或DenyUsers配置,两者用法类似(不能同时使用)。
【举例】 只允许stu1和stu2用户录,其中stu2用户仅能从IP地址为192.168.10.100的主机远程登录,配置如下:
# vim /etc/ssh/sshd_config
..... //省略内容
AllowUsers stu1 stu2@192.168.10.100 //多个用户用空格隔开
# systemctl restart sshd
由于我用的是干净的虚拟机,故而除了root用户以外没有别的用户
此处才发现前面有一个报错,提示文件夹的密码设置的太短了,至少5个字符
你也可以再尝试一下设置密码,可能是我没做对
私钥文件给用户
不知为何,我的VM Tool失去了作用,无法将虚拟机的文件拖拽至本机(本机作为中转站)
故此处我使用winscp
打开虚拟机的文档位置发现无文档咋办?
此处那些文件都是隐藏文件,在WinSCP中也未找到使隐藏文件显示的选项,故我想将Linux中的.ssh文件修改为非隐藏文件,再用WinSCP来将生产的私钥复制到本机上
直接将私钥复制到本机即可
尝试通过密钥登录:
关闭密码验证后重启sshd服务
使用Xshell远程登录