1. sshd简介
sshd= secure shell
可以通过网络在主机中开启shell的服务
客户端软件 sshd
连接方式:
ssh username@ip ##文本模式的连接
ssh -X username@ip ##可以在连接成功后开启图形
注意:第一次链接陌生主机是要建立认证文件,所以会询问是否建立,需要输入yes
再次连接此台主机时,因为已经生成了~/ssh./know_hosts文件,所以不需要再次输入yes
远程复制:
scp file root@ip:dir ##上传
scp root@ip:file dir ##下载
2.sshd的key认证
ssh key加密 (服务端)
这个实验需要在纯净的环境下进行,如果以前做过这个实验要rm -rf /root/.ssh/*
1.在服务端设置公钥
ssh-keygen
非交互界面
ssh-keygen -f /root/.ssh/id_rsa -N ''
2.生成密钥 公钥(上锁) —> 私钥 (开锁)
ls /root/.ssh ##检查服务端是否生成密钥
3.给服务器上锁 (服务端)
ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.236 ####服务器上锁
检查服务器是否加密成功
ls /root/.ssh/
更改配置文件(78行)
vim /etc/ssh/sshd_config ###关闭原始认证,禁止客户端输入密码的权限 78行 yes--->no
重启服务
systemctl restart sshd.service
4.发送密钥到客户端 (在服务端操作)
scp /root/.ssh/id_rsa root@172.25.254.136:/root/.ssh/ ###将钥匙发送到客户端
5.测试(客户端查看)
ssh root@172.25.254.236 ####是否可以免密连接到服务器
ls -l /root/.ssh/ ####检查密钥是否传输到客户端
cd /root/.ssh/
cat id_rsa.pub ###在客户端和服务端分别查看密钥是否一样
3.sshd的安全设定:78 (服务器设定)
限制高级用户登陆(48行)
48 PermitRootLogin yes/no ##是否允许root用户通过sshd服务认证
用户黑名单 DenyUsers westos
53 DenyUser student ##设定用户黑名单,黑名单出现默认不在名单中的用户可以使用sshd
用户的白名单AllowUsers student(只允许该用户登陆)
52 AllowUsers student ##设定用户白名单,白名单出现默认不在名单中的用户不能使用sshd
###student用户需要在服务端建立, 用的是服务端的资源
注意:@前的用户名是服务端的
4.添加sshd登陆信息的设定 (在服务器设定)
vim /etc/motd ##设定登陆信息提示,文件内容就是登陆界面显示的信息
5. 登陆审计 (在服务器查看)
w ##查看正在使用当前系统的用户
w -f ##查看使用来源
w -i ##显示ip 可以在服务器使用kill -9 ip 结束客户端使用的用户
/var/run/utmp ##信息都储存在这个文件里
2.last 查看使用过并退出的用户
/var/log/wtmp
3.lastb 试图登陆但没有成功的用户
/var/log/btmp