client:
westos_client.westos.com
172.25.254.200
server:
westos_server.westos.com
172.25.254.201
ifconfig ##查看ip地址
nm-connection-editor ##设定ip地址
hostnamectl set-hostname ##设定主机名称
作用:
在企业中的运维工作,不是1v1的运维,运维工程师基本都是1vN,在运维工程师对服务器进行管理时,需要通过网络登陆远程主机,需要通过网络在远程主机中开启shell来进程操作,远程主机必须提供这样的开启shell的方式。
以上的需求由openssh服务来提供,远程主机中安装了openssh并开启了这个程序,那么我们就可以通过网络来连接这台主机了。
软件包名称: openssh-server
服务名称: sshd
客户端: ssh
ssh 172.25.254.201 -l root 172.25.254.201 为远程主机ip
-l login 登陆
root 远程主机的超级用户
sshd服务端口 22/tcp
配置文件 /etc/ssh/sshd_config
用户密码认证 (对称加密)
密码容易泄漏
容易忘记
密钥认证 (非对称加密)
安全
不会忘记密码
建立key认证的方式
建立key文件
172.25.254.200主机上执行以下操作:
上传公钥 (加密远程主机)
[root@westos_client ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
ssh-copy-id 上传密钥命令
-i 指定公钥
/root/.ssh/id_rsa.pub 公钥名称
root 远程主机被加密用户
@ 分割符
172.25.254.201 远程主机地址
将秘钥发送给远程主机
scp /root/.ssh/id_rsa [email protected]:/root/.ssh/
连接时可以免密连接
注:实验过程中一定要保持selinux处于关闭状态
selinux关闭状态:
[root@westos_server Desktop]# getenforce
disable
如何关闭selinux
vim /etc/selinux/config
7 SELINUX=disable ##selinux在开机时处于静止状态
reboot ##重启系统
如何关闭防火墙
systemctl disable --now firewalld
vim /etc/ssh/sshd_config
17 prot 22------>prot 1111
systemctl restart sshd
测试
[root@westos_client ~]# ssh 172.25.254.201 -l root
ssh: connect to host 172.25.254.201 port 22: Connection refused 默认连接被拒绝
[root@westos_client ~]# ssh 172.25.254.201 -l root -p 1111 指定的的端口连接
Activate the web console with: systemctl enable --now cockpit.socket
Last login: Wed Jul 22 23:11:49 2020 from 172.25.254.200
vim /etc/ssh/sshd_config
19 #ListenAddress 0.0.0.0 ----> ListenAddress 172.25.254.201
测试
ssh -l root 192.168.122.1 拒绝
ssh -l root 172.25.254.201 可以
vim /etc/ssh/sshd_config
73 PasswordAuthentication no 禁用密码认证
测试
172.25.254.101 有密钥
172.25.254.201 无密钥
更改前:
172.25.254.101-----> ssh [email protected] 可以免密登陆
172.25.254.201 -----> ssh [email protected] 可以输入密码登陆
更改后:
172.25.254.101-----> ssh [email protected] 可以免密登陆
172.25.254.201 -----> ssh [email protected] 不可输入密码,直接被拒绝
建立实验素材
在服务器中
172.25.254.101
useradd westos
useradd lee
echo lee | passwd --stdin westos
echo lee | passwd --stdin lee
用户 密码
westos lee
lee lee
vim /etc/ssh/sshd_config
46 PermitRootLogin yes —>PermitRootLogin no #禁止root用户使用ssh进行认证
实验
修改参数前
172.25.254.101:
ssh [email protected] 默认输入正确秘密可以完成认证
修改参数后
ssh [email protected] 输入正确密码仍然不能登陆
vim /etc/ssh/sshd_config
DenyUsers westos westos不能使用sshd服务
实验
修改前
可以登陆
vim /etc/ssh/sshd_config
AllowUsers westos 只有westos用户可以使用sshd服务
修改前
172.25.254.201 登陆模式选择第二个(X11模式)
172.25.254.101中执行如下命令:
ssh 172.25.254.201 -l root 此方法登陆时不能调用远程主机的图形命令
ssh -X 172.25.254.201 -l root 当前登陆可以调用图形 -X 代表启用x11图形连接
ssh 172.25.254.201 -l root touch /root/Desktop/westosfile{1…10} 直接执行命令在远程主机中
ssh 172.25.254.201 -l root -o StrictHostKeyChecking=no 在连接主机时不检测HOSTKEY(即屏蔽yes、no的输入)
172.25.254.201中执行如下命令:
vim /etc/motd 在此文件中有什么字符在ssh登陆时就可以看到什么字符