一.sshd简介
SSH为Secure Shell的缩写,是应用层的安全协议。SSH是目前较可靠,专为远程登陆会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。
客户端软件 sshd
链接方式:
ssh username@ip ##文本模式的链接 ssh -X username@ip ##可以在链接成功后开启图形
(通过文本模式登陆server)
(通过图形模式成功链接之后在villa处打开了server的gedit,并在server处显示进程)
注意:
第一次链接陌生主机时要建立认证文件
所以会提示询问是否建立,需要输入yes
再次链接时此台主机时,因为已经生成~/.ssh/know_host文件,则不要再次输入yes
远程复制:
scp file(所下文件) root@ip(所传ip):dir(要传的文件地址) ##上传 scp root@ip(所下位置ip):file(下载文件的位置) dir(自己存放的位置) ##下载
(文件由server下载到villa)
(将villa处的file上传到server处)
二.sshd的key认证
1.生成认证KEY
[root@server ~]# ssh-keygen ##生成密钥的命令
(密钥生成)
2.加密服务
[[email protected]]ssh-copy-id -i /root/.ssh/id_rsa.pub root@服务器ip ##加密sshd服务
[[email protected]]ls
authorized_keys id_rsa id_rsa.pub known_hosts
## ^ 此文件存在即加密成功
(加密成功,即在/root/.ssh/中生成authozized_keys)
3.分发钥匙
[[email protected]]scp /root/.ssh/id_rsa root@客户机ip:/root/.ssh/
[[email protected]]ls
id_rsa
(向villa上传密钥)
(villa中收到id_rsa)
4.测试
在客户主机中(172.25.254.107)
ssh [email protected] ##连接时不需要root登陆系统的密码认证
(无需密码直接登陆server)
登陆权限设定
在/etc/ssh/sshd_config下修改以下设定
78 PasswordAuthentication yes|no ##是否允许用户通过登陆系统的密码做sshd的认证 48 PermitRootLogin yes|no ##是否允许root用户通过shd服务的认证
在/etc/hosts/deny /etc/hosts/allow修改以下设定
52 Allowuser 用户名 用户名 ##设定用户白名单,白名单出现默认不在名单中的用户不能使用sshd 53 Denyuser 用户名 ##设定用户黑名单,黑名单出现默认不在名单中的用户可以使用sshd
四.添加sshd登陆信息
vim /etc/motd ##文件内容就是登陆后显示的信息
(在登陆server时会显示Hello~)
五.用户的登陆审计
1.w 查看正在使用当前系统的用户
w
-f ##查看使用来源
-i ##显示IP
/var/run/utmp
信息存放位置: /var/run/utmp
2.last 查看使用过并退出的用户信息
信息存放位置: /var/run/wtmp
3.lastb 试图登陆但没成功的用户
信息存放位置: /var/log/btmp