Linux系统的sshd服务
###################
#####SSHD服务#####
###################
#####sshd服务######
##1.sshd简介
sshd=secure shell
可以通过网络在主机中打开shell的服务
客户端软件
sshd
链接方式
ssh [email protected] ##文本模式的连接
ssh -X [email protected] ##可以在连接成功后开机图形
注意:第一次连接陌生主机时需要建立认证文件
所以会询问是否建立,需要输入yes
再次连接此台主机时,因为已经生成~/.ssh/know_hosts 文件所以不需要再次输入密码
我们来做一个实验来验证,启用两台虚拟机一台服务端,一台客户端,如下:
确定服务端的sshd服务为开启状态
##远程复制:
scp file [email protected]:dir ##上传
scp [email protected]:file dir ##下载
特别注意的是:如果是下载或上传目录,需要加 -r
##2.sshd 的key认证
##1.生成认证KEY
ssh-******
[[email protected] ~]# ssh-****** ##生成公钥私钥工具
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):[enter] ##加密字符保存文件(建议用默认)
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): [enter] ##**密码,必须>4个字符
Enter same passphrase again: [enter] ##确认密码
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
ab:3c:73:2e:c8:0b:75:c8:39:3a:46:a2:22:34:84:81 [email protected]
The key's randomart image is:
+--[ RSA 2048]----+
|o |
|E. |
|.. |
|. . o |
|.o. * . S |
|oo.o o . |
|+ =. . . |
|o. oo.+.. |
| ..o*. |
+-----------------+
[[email protected] ~]# ls /root/.ssh/
id_rsa id_rsa.pub
id_rsa ##私钥,就是钥匙
id_rsa.pub ##公钥,就是锁
##2.添加key认证方式
[[email protected] ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
ssh-copy-id ##添加key认证方式的工具
-i ##指定加密key文件
/root/.ssh/id_rsa.pub ##加密key
root ##加密用户为root
172.25.254.227 ##被加密主机ip
3.分发钥匙给client主机
[[email protected] ~]# scp /root/.ssh/id_rsa [email protected]:/root/.ssh/
4.测试
[[email protected] ~]# ssh [email protected] ##通过id_rsa直接连接不需要输入用户密码
Last login: Mon Oct 3 03:58:10 2016 from ip
[[email protected] ~]#
我们来做以下实验来验证:
同样我们用一个server,一个client来做
####3.提升openssh的安全级别####
1.openssh-server配置文件
/etc/ssh/sshd_config
78 PasswordAuthentication yes|no ##是否开启用户密码认证,yes为支持no为关闭
注意:编辑完后一定要重启服务,systemctl restart sshd
在服务端:
用户端测试:
48 PermitRootLogin yes|no ##是否允许登陆超级用户
服务端:
在客户端:
49 AllowUsers student ##用户白名单,只有在名单中出现的用户可以使用sshd建立shell
在服务端:
在客户端:
50 DenyUsers root ##用户黑名单
在服务端:
在客户端:
2.ssh登陆提示修改该
vim /etc/motd ##显示登陆后字符
hello world ##在登陆后就会显示这个字符
例如:
##4.用户的登陆审计##
1. w ##查看正在使用当前系统的用户
w -f ##查看使用来源(使用地点)
w -i ##显示ip
/var/run/utmp
2. last ##查看使用过并且成功退出的用户
/var/log/wtmp
3. lastb ##试图登陆但是没有成功的用户
/var/log/btmp