配置实验环境
该实验用到两个虚拟机,分别reset两台虚拟机,然后分别配置两台虚拟机的ip地址:
server的地址为真机的加100
client的地址为真机加200:
测试ping两台虚拟机:
更改两台虚拟机的用户名:
关闭shell后重新打开发现更改成功:
更改另一台的主机名:
为区分两台主机将client更换shell主题色:
取消use colors from system theme:
ssshd的使用
sshd = secure shell
可以通过网络在主机中开启shell的服务
ssh username@ip //在文本模式链接
ssh -X username@ip //可以在链接成功后开启图形
注意:
在第一次链接陌生主机时需要建立认证文件,所以会询问是否建立,需要输入yes。在此链接时便不再需要输入,是因为已经生成~/.ssh/know_hosts文件,所以不需要在此输入yes。
正常登录远程主机无法打开firefox,用-X登录图形便可以:
远程登录的密钥认证
1.生成密钥
生成密钥:
显示待输入的密钥存放文件(回车选择默认文件):
又会显示输入加密密钥的密码(如果需要密码需要输入大于四位的密码,回车默认无密码):
生成结果:
这里的rsa.pub相当于锁,可以用来加密;rsa相当于密钥,拥有密钥的人可以开锁。
也可以自动生成密钥:
2.公钥加密
用公钥来加密server主机:
ssh-copy-id -i /root/.ssh/id_rsa.pub root@ip
出现authorized_keys表示加密成功:
3.加密后验证测试
进入server主机的sshd_config配置文件关闭原始的密码认证方式:
在第78行将yes改为no:
重启sshd服务使更改生效:
然后在client主机远程登录server主机测试(未拥有密钥而被拒绝登录):
于是将密钥远程分发给client主机(远程复制):
client再次远程登录server主机(成功):
sshd服务安全优化之安全端口修改
设定环境配置(关闭警告模式):
查看当前sshd服务端口:
进入配置文件sshd_config修改端口(取消注释#,改为6666):
重启服务:
再从client主机远程登录server(失败):
因为server主机的远程服务端口被修改为6666,所以利用修改后的端口进行登录(预先先关闭server的防火墙,否则提示no route to host):
登录成功:
sshd服务安全优化之常用优化参数设定
还原上面实验的配置文件
1.设定仅可以连接的端口
同样更改配置文件(仅可以连接指定地址):
2.设定仅可以连接的端口
配置文件中(设置为no时,远程客户不可以登录server主机的root用户):
3.设定远程登录白名单(仅指定用户可以登录,指定用户间用空格分隔):
4.设定远程登录黑名单(仅指定用户不可以登录,指定用户间用空格分隔):
注意:每次更改完配置文件后使其生效必须重启sshd服务!