本次实验需要两台虚拟机:一台定位服务端,另一台定位客户端
运用克隆命令快速得到两台虚拟机
克隆虚拟机
ifconfig | 查看ip地址 |
---|---|
nm-connection-editor | 设定ip地址 |
1.设定IP的方法
详细过程可点击下方链接查看
设定IP
IP的手动设置
注意:要是在设置IP过程中有的地方与图中不符,那么有可能就是你的虚拟机装法有问题,可参考以下链接建立新的虚拟机
虚拟机的创建
2.IP的查看(ifconfig)
服务端IP:
客户端IP:
3.修改两台虚拟机的主机名称
hostnamectl set-hostname | 设定主机名称 |
---|
一台设置为:服务端(server)
服务端:server
hostname:zyj_serve
IP:192.168.1.130
另一台设置为:客户端(client)
客户端:client
hostname:zyj_client
IP:192.168.1.120
SSH(Secure SHell)是Linux、Unix、Mac及其他网络设备最常用的远程CLI管理协议,SSH使用秘钥对数据进行加密,保证了远程管理数据的安全性。
SSH分为服务端与客户端,SSH服务端默认启动,作为常驻服务运行
Openssh是ssh的一个开源程序,绝大多数Linux版本均使用openssh作为SSH程序
2.1 openssh
作用:在运维工程师对服务器进行管理时
需要通过网络登陆远程主机
需要通过网络在远程主机中开启shell来进程操作
远程主机必须提供这样的开启shell的方式
以上的需求由openssh服务来提供
远程主机中安装了OPENSSH并开启了这个程序
那么我们就可以通过网络来连接这台主机了
3.软件包名称:openssh-server
4.服务名称:sshd
5.客户端:ssh
ssh 192.168.1.120 -l root | 解释 |
---|---|
192.168.1.120 | 远程主机ip |
-l | login 登陆 |
root | 远程主机的超级用户 |
- p | 指定端口 |
- X | 可执行相关操作 |
6.sshd服务端口:22 / tp
7.配置文件:/etc/ssh/sshd_config
注:在做实验之前要确保你的selinux处于关闭状态
关闭selinux步骤:输入vim /etc/selinux/config进行修改
修改selinux=disabled
reboot 重启虚拟机(selinux为内核级火墙需要reboot)
getenforce查看selinux状态:
查看火墙状态:sysctmctl stayus firewalld.server
systemctl disabled --now firewalld.server
输入命令:vim /etc/ssh/sshd_config
进行修改
Port的值默认为22
修改完成之后重启sshd服务即可
ss - antlupe | 查看Prot的值 |
---|
不知道ss是什么可以man ss 查看
测试:
修改端口:vim /etc/ssh/sshd_config
输入命令:
重新加载你的sshd服务
测试:
设置指定接口之后
设定端口之后只有指定端口可以进入
正常情况下输入密码可以登录:
禁用密码:修改vim /etc/ssh/sshd_config文件
重启sshd:systemctl reload sshd
测试:
恢复修改文件vim /etc/ssh/sshd_config修改为yes即可
设定用户登录的黑名单和白名单
修改文件:vim /etc/ssh/sshd_config
黑名单的设置:
重启sshd服务:systemctl reload sshd
测试:
白名单的设置:
输入命令修改:
重启sshd服务:systemctl reload sshd
测试:
实验做完记得恢复,避免影响接下来的实验
修改文件:vim /etc/ssh/sshd_config
设置PermintRootLogin(yes是允许,no是不允许)只限制root用户其他用户不影响
测试:
ssh -l root 172.25.254.108 | 此方法登陆时不能调用远程主机的图形命令 |
---|---|
ssh -l root 172.25.254.108 -X | 当前登陆可以调用图形 -X代表启用X11图形 |
ssh -l root 172.25.254.108 touch 路径/file | 直接执行命令在远程主机中 |
ssh -l root 172.25.254.108 -o StrictKeyChecking=0 | 在连接主机时不检测HOSTKEY(屏蔽yes,no输入) |
命令演示:
修改vim /etc/motd
添加字符,motd中的字符会直接显示在登陆的屏幕上(中,英都可以)
输入字符:
演示:
对称加密:同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。
非对称加密:需要两个密钥来进行加密和解密,这两个密钥是公开密钥(public key,简称公钥)和私有密钥(private key,简称私钥)。
(产生公钥、私钥)
输入命令:
测试:
ssh-copy-id | 上传密钥 |
---|---|
-i | 指定公钥 |
/root/.ssh/id_rsa.pub | 公钥名称 |
root | 远程主机没上锁的用户 |
@ | 分隔符 |
172.25.254.108 | 远程主机地址 |
输入命令:
scp | 远程复制 |
---|---|
/root/.ssh/id_rsa | 私钥名称 |
root | 接受复制文件的用户 |
@ | 分隔符 |
172.25.254.108 | 客户端地址 |
:/root/.ssh/ | 复制文件给客户端的指定目录 |
测试: