RH124-Linux系统的远程登录管理

RH124-Linux系统的远程登录管理

环境配置:

实验环境:本次实验依旧使用的是两台虚拟机做实验,一台的IPADDRESS为172.25.254.100,另一台的IPADDRESS为172.25.254.200,两台虚拟机,一台充当客户端,一台充当服务器:
[1]先在主页面选择处理器,在右边框中勾选第一个,再在下方确定:
在这里插入图片描述
[2]然后选择网络配置,勾选桥接,确定:
在这里插入图片描述
[3]打开虚拟机登录root用户后执行命令:

nm-connection-editor

删掉之前对应的选项,再新建一个选择Ethernet后create:
在这里插入图片描述
[4]Device选择ens:
在这里插入图片描述
[5]点开IPV4 Settings,Method选择Manual,再在下方新建一个,填写address和network后save:
在这里插入图片描述
[6]回到之前页面中选择x:
在这里插入图片描述
[7]回到shell执行ping 另一台虚拟机ipaddress后显示有ms出现时,成功连接:
在这里插入图片描述

一.Openssh的功能:

[1]sshd服务的用途:作用:可以实现通过网络在远程主机中开启安全shell的操作:
Secure SHell ----> ssh 客户端
Secure SHell daemom ----> sshd 服务端
[2]安装包:openssh-server
[3]主配置文件:/etc/ssh/sshd_conf
[4]默认端口:22
[5]客户端命令:ssh

二.ssh:

命令 效果
ssh [-l 远程主机用户] <ip/hostname > 通过ssh命令远程登录主机
ssh -l root 网卡ip 通过ssh命令在网卡ip对应的主机中以root身份开启远程shell

在这里插入图片描述
作用:当输入后,主机会向当前主机发送身份公钥,并保存此公钥到~/.ssh/know_hosts,如果身份改变,则连接会出现以下效果:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:qFJoGa0HY3fBnHaMwCBhq5d017at0BcRdOJ3kULqrDM.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /root/.ssh/known_hosts:1
ECDSA host key for 172.25.254.4has changed and you have requested strict checking.

针对本实验为了达到效果,在服务器上172.25.254.200中先进入/etc/ssh并删除对应的文件后进行systemctl重启,使对应目录中存放的文件如图所示:
在这里插入图片描述
然后再从原本的客户端172.25.254.100中登录服务器,就会弹出以下显示:
在这里插入图片描述
先在服务器中找到生成的新公钥,后复制,然后在客户端执行命令:

vim ~/.ssh/known_hosts

在这个文件中删除172.25.254.200对应的一整行后面的密钥,然后将它新生成的密钥粘贴在这里,保存退出以后就可以正常登录了:
在这里插入图片描述
在这里插入图片描述
或者直接删除文件中第三行的内容也可以成功登录
ssh 常用参数:

命令 效果
ssh -l 指定登录用户
ssh -i 指定私钥
ssh -X 开启图像
ssh -f 后台运行
ssh -o 指定连接参数,"StrictHostKeyChecking=no"指首次连接不需要输入yes
ssh -t 指定连接跳板

[1]ssh -l指定登录用户:
在这里插入图片描述
[2]ssh -X开启图像:
在这里插入图片描述
开启gedit除了以-Xl登录后输入gedit调用外还可以通过ssh后面直接跟-X gedit打开编辑:
在这里插入图片描述
[3]ssh -f后台运行:
在这里插入图片描述
在这里插入图片描述
图中红框所示的就是在服务器界面看到的从客户端发出的命令所生成的文件
[4]ssh -o指定连接参数,本实验采用的参数是"StrictHostKeyChecking=no",因此输入执行的命令为

ssh -l user@IPADDRESS -o "StrictHostKeyChecking=no"

在这里插入图片描述
[5]ssh -t指定跳板:若A连接B,B连接C,则B可以充当AC连接的跳板,所以格式为:

ssh -l userB@ipaddressB -t ssh -l userC@ipaddressC

分别输入BC密码,则作为用户A就可以通过B成功连接C了:
在这里插入图片描述

三.ssh key认证:

1.认证类型:

[1]对称加密:加密和解密是以同一串字符进行的,容易泄露并且可暴力破解,容易忘记
[2]非对称加密:加密用公钥,解密用私钥,不会被盗用,并且攻击者无法通过无密钥的方式登录服务器

2.生成非对称加密密钥:

方法1:ssh-keygen
在这里插入图片描述

显示界面:

Generating public/private rsa key pair. Enter file in which to save the key (/home/lee/.ssh/id_rsa): ##输入保存密钥文件
Enter passphrase (empty for no passphrase): 
##密钥密码
Enter same passphrase again: 
##确认密码
Your identification has been saved in /home/lee/.ssh/id_rsa.
##私钥
Your public key has been saved in /home/lee/.ssh/id_rsa.pub.
##公钥
The key fingerprint is:SHA256:rrbJoCb/f+7m5KwEOj2+M2NaCFAg6kxyOuuB+c3kmi8 lee@westos_student7.westos.orgThe key’s randomart image is:
±–[RSA 3072]----+
|o… |
|o. |
|+… |
|*o |
|+o . S |
|.= + . . |
|+.+ * . o |
|o.E@==.o |
| =BBOBBO |
±—[SHA256]-----+

在系统对于加密时提问回答直接enter,系统就会默认生成指定文件,若要更改其中的一些配置则需要修改配置文件,比较麻烦
方法二:ssh-keygen -f /root/.ssh/id_rsa -P ""
在这里插入图片描述

3.对服务器进行加密:

命令
ssh-copy-id -i /root/.ssh/id_rsa.pub username@ipaddress

在这里插入图片描述
加密过后对于172.25.254.100就可以直接免密登录172.25.254.200,对比之前的ssh登录截图,发现此次登录不需要密码,并且在对应服务器的.ssh目录下就会生成authorized keys文件:
在这里插入图片描述
也可以从服务器端进行加密之后,将生成的id_rsa传给客户端也可以达到让客户端免密登录服务器的效果

四.sshd安全优化参数详解:

操作之前首先输入setenforce 0,并用命令systemctl disable --now firewalld关闭防火墙,并在接下来每进行一次参数修改就用systemctl restart sshd.service进行重启,
参数的调整需要使用命令:

vim /etc/ssh/sshd_config
系统参数
Port 数字
PermitRootLogin yes/no
PasswordAuthentication yes/no
DenyUsers 用户名
AllowUsers 用户名

[1]更改端口:Port:
可以用命令:

ss -anlutpe | grep sshd

来查看端口:
在这里插入图片描述
结合文件/etc/ssh/sshd_config可以看到系统默认的端口为22:
在这里插入图片描述
在文件中去掉#并改为:Port 2222(即修改端口为2222)

在这里插入图片描述
后在客户端中登录,必须用命令:

ssh username@ipaddress -p newportnumber

修改登录端口才能成功登录:
在这里插入图片描述
[2]更改超级用户登录许可:PasswordAuthentication yes/no:
在这里插入图片描述
先在配置文件中可以找到默认配置为允许登录超级用户,修改为不允许之后在客户端登录时即使输入正确密码也会报错:
在这里插入图片描述
在这里插入图片描述
[3]黑名单/白名单设置:DenyUsers/AllowUsers:
在这里插入图片描述
在这里插入图片描述
设置完黑名单后如图所示,登录被设置黑名单的用户即使密码输入正确也会被禁止,但是可以正常登录其他用户
在这里插入图片描述
在这里插入图片描述
设置完白名单后如图所示,登录被设置白名单的用户可以正常登录,但是对于未被设置在白名单的其他用户即使密码输入正确也会报错

猜你喜欢

转载自blog.csdn.net/weixin_46702804/article/details/112796697