在LINUX系统操作中,经常需要连接其他的主机,sshd服务的功能是让远程主机可以通过网络访问ssdh服务,开始一个安全shell。
1.sshd简介
(1)sshd= secure shell
可以通过网络在主机中开启shell的服务
(2)连接方式:
ssh 远程主机用户@远程主机ip ##文本模式的链接
ssh -X 远程主机用户@远程主机ip ##可以在链接成功后开机图形
(3)远程复制:
上传: scp file root@ip:dir
下载: scp root@ip:file dir
2.sshd 的key认证
将虚拟机desktop作为客户端,将虚拟机server作为服务端
** (1)生成认证KEY**
生成密钥id_rsa,id_rsa.pub
生成密钥的命令:
[root@server ~]# ssh-keygen
生成密钥:
加密服务
用生成的/root/.ssh/id_rsa对root@172.25.51.100主机用户进行上锁。
服务端给客户端分发密钥后,客户端不再需要服务端的登陆密码,也能进入服务端
sshd的安全设置
若是服务端不希望客户端以密码认证的方式进入服务,设置/etc/ssh/sshd_config文件进行sshd安全设定,并重启服务。
(1)passwordAuthentication yes|no ##是否允许用户通过登陆系统的密码做sshd的认证
(2)permitRootLogin yes|no ##是否允许root用户通过sshd服务的认证
把yes改成no,不允许root用户通过sshd服务的认证,改完之后要记得重启sshd服务
重启sshd服务用:
systemctl restart sshd.service
(3)Allowusers student westos ##设定用户白名单,白名单出现默认不在名单上的用户不能使用sshd
注意:白名单中的用户是student,所以student用户可以通过sshd服务的认证,而westos用户则不能通过该服务
(4)Denyusers student ##设定用户黑名单 ,黑名单出现默认不在名单中的用户可以使用sshd
注意:黑名单中的用户是student,所以此用户不能通过sshd服务的认证
添加sshd登陆信息
vim /etc/motd ##文件内容就是登陆后显示的信息
用户的登陆审计
1.w ##查看正在使用当前系统的用户
-f ##查看使用来源
-i ##显示ip
/var/run/utmp
2.last ##显示使用过并退出的用户信息
/var/log/wtmp
3.lastb ##试图登陆但没有成功的用户
/var/log/btmp