day030-二阶段-ssh远程连接

5次阅读
没有评论

2026年4月17日

知识点回顾

第一个工具nfs:
nfs:网络文件系统(网络磁盘)
服务搭建:
1)服务端
1.下载安装服务
yum -y install nfs-utils
2.修改配置文件
共享目录路径 指定可连IP(权限,同步类型,匿名用户,指定匿名用户uid,指定匿名用户gid)
3.根据配置文件创建必要信息
创建共享目录并修改属主属组为匿名用户nobody默认匿名用户
4.启动服务并开机自启
systemctl start nfs
systemctl enable nfs
5.检查服务是否开启
netstat --tlnup

2)客户端使用
1.下载服务,目的使用里面的命令
yum -y install ufs-utils
2.使用命令查看可挂载目录
showmount -e nfs服务IP地址
3.挂载使用
mount -t nfs ip:/nfs共享目录 挂载到哪
4.df -h查看是否挂载上
5.创建文件测试
--------------
问题:nfs挂了怎么办
先卸载
mount -f 挂载点
修复nfs后重新挂载

第二个工具lsync:
作用:实时同步自动监控是否修改文件,修改执行同步
使用必要服务:
1.同步端需要安装rsync守护进程服务

2.被监听端需要下载lsync服务
1)下载lsync服务
yum -y install lsyncd
2)配置文件
vim /etc/lsyncd.conf
3)创建必要数据
被监听目录
密码文件授权600
4)启动服务
systemctl start lsyncd
systemctl enable lsyncd
5)创建文件测试

01.ssh服务

作用:远程连接服务 基础TCP的链接 IP+端口
ssh默认端口:22
1.基于用户+密码
2.远程执行命令
3.远程连接(免密钥)
4.禁止密码验证
5.远程拷贝
6.ssh配置的允许和拒绝
7.小结
1.ssh远程连接(用户+密码)
1)windows连接Linux
1.打开xshell然后点击+在本地shell执行远程连接命令
#默认空的用户,默认链接端口22
[c:\~]$ ssh 10.0.0.31

2.指定用户名和端口
[c:\~]$ ssh root@10.0.0.31 22
2)Linux连接Linux
#默认使用当前登录用户作为远程用户身份进行连接 默认使用22端口
[root@backup ~]# ssh 172.16.1.31

#指定用户名和端口
[root@backup ~]# ssh root@172.16.1.31
[root@backup ~]# ssh -p22 root@172.16.1.31

#其他连接方式 主机名称(hosts) 域名
[root@backup ~]# cat /etc/hosts 
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.1.31 nfs
172.16.1.31 linuxnc.com

#通过域名远程连接
[root@backup ~]# ssh linuxnc.com 

#通过主机名称连接
[root@backup ~]# ssh nfs
2.远程执行命令
语法结构:ssh 10.0.0.31 "touch a.txt"
案例1:在backup服务器上远程在31服务器上创建文件
[root@backup ~]# ssh 10.0.0.31 "touch b.txt"
案例2:远程删除31的a.txt
[root@backup ~]# ssh 10.0.0.31 "rm -f a.txt"
案例3:远程杀进程
1.在31服务器上启动一个进程
[root@nfs ~]# nohup sleep 500 &
2.远程杀死进程
#查进程
[root@backup ~]# ssh 172.16.1.31 "ps axu|grep sleep"

Authorized users only. All activities may be monitored and reported.
root@172.16.1.31's password: 
root        9169  0.0  0.0 212380   748 pts/0    S    14:47   0:00 sleep 500
#杀死
[root@backup ~]# ssh 172.16.1.31 "kill 9169"
案例4:跳板机

day030-二阶段-ssh远程连接

在Windows连接nfs过程,先连接backup,在从backup上连接到nfs
ssh 10.0.0.41
ssh 172.16.1.31
3.远程连接(免密钥)
基于IP+用户名+密码(手机解屏输入密码)
基于IP+密钥对的方式(手机解屏人脸验证)
案例:从backup服务器免密钥连接NFS服务器
1)backup生成密钥对,公钥(锁)私钥(钥匙),生成一把锁和一把钥匙
[root@backup ~]# ssh-keygen     #一路回车

#生成后的文件
[root@backup ~]# ll .ssh/
总用量 12
-rw------- 1 root root 2590  4月 17 14:56 id_rsa         #私钥
-rw-r--r-- 1 root root  565  4月 17 14:56 id_rsa.pub     #公钥
-rw-r--r-- 1 root root  682  4月 17 14:44 known_hosts    #首次验证文件

2)将公钥拷贝到nfs主机(将锁放到了NFS服务器上)
[root@backup ~]# ssh-copy-id 10.0.0.31

公钥存放的位置是
[root@nfs ~]# cat .ssh/authorized_keys 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDZFHyobE0ZzUrqQsydNihgCdAsgtZXnT2ronn7hcT+xJJCeAteVHwnDk7tE+/7fOWmS3xvwdvF9yf0AJv+Eebz9Fo7mhbWQuDZuh0WP7DPNpCsMzYv2D9bqV1/tOuE0M9Iqpy9RDTvoxUagGDwBP1SFEiuVzw1pC3A8oP6lPk/0Jv0X39fmGFtQwuX1+rRyOsXG2o+CXe2/Fam4IH57NRlYxHKJCXZqhPoQOU6k574+gNrTHIKQ0JfLpSc3CDuedRACdnS5Na8qPFCGUUPNjV+s5x/D2LE+qHUjo0igzylcUStcjrTKN+qR21apP/3DG7urJ6P0Ey9luznpd8sTP1Y9M463XfqliMOp/tm4tTSoygF63dX1MhAYHZjLT2EuvIfuxfXCaxu8odYw5wgZcGz422fwtE2xSCaub7cSod32YVNTnnrBJN/7VHufZUU55pcg5OKfedrYw2Fa6wAm8JMGt9y2QX3F1+bZOtBw8IzObDJe3XSEmn353yWKsd+yQs= root@backup

3)远程连接系统默认验证秘钥,如果能对的上,直接连接,如果没有找到秘钥公钥,则提示让用户输入用户名和密码
[root@backup ~]# ssh 10.0.0.31

day030-二阶段-ssh远程连接

其他所有的方式都变成了免秘钥:
1.远程连接
2.远程执行命令
3.rsync
...

4.禁止密码验证

1.windows生成密钥对
2.将公钥复制到nfs服务器中
3.修改配置文件禁止密码登录
4.测试远程连接只能用秘钥对连接
步骤1:Windows生成密钥对
xshell->工具->新建用户密钥生成向导
步骤2:将公钥复制到nfs服务器中
[root@nfs ~]# cat .ssh/authorized_keys 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDZFHyobE0ZzUrqQsydNihgCdAsgtZXnT2ronn7hcT+xJJCeAteVHwnDk7tE+/7fOWmS3xvwdvF9yf0AJv+Eebz9Fo7mhbWQuDZuh0WP7DPNpCsMzYv2D9bqV1/tOuE0M9Iqpy9RDTvoxUagGDwBP1SFEiuVzw1pC3A8oP6lPk/0Jv0X39fmGFtQwuX1+rRyOsXG2o+CXe2/Fam4IH57NRlYxHKJCXZqhPoQOU6k574+gNrTHIKQ0JfLpSc3CDuedRACdnS5Na8qPFCGUUPNjV+s5x/D2LE+qHUjo0igzylcUStcjrTKN+qR21apP/3DG7urJ6P0Ey9luznpd8sTP1Y9M463XfqliMOp/tm4tTSoygF63dX1MhAYHZjLT2EuvIfuxfXCaxu8odYw5wgZcGz422fwtE2xSCaub7cSod32YVNTnnrBJN/7VHufZUU55pcg5OKfedrYw2Fa6wAm8JMGt9y2QX3F1+bZOtBw8IzObDJe3XSEmn353yWKsd+yQs= root@backup
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAt7GzaIXcXKH+6x12uTxrJHfBKUbchPZy5KJ+7Qxeu1oMeoysHolFrGi274PY757xOH06kx0SpoHvhbrVffUz2wr/9mwAUJ7L2xhXySTDwC1Xrpn2aj8pkm5WhBJzKogBcRWon355/G1cwxhZPR+Vk2iNG4A3lW5cEV9GAeSd0GhvqCXMfao6V+cSA6OQwXt7yY5zGgFM12Wv1kiRiLlpCBDUzHtFMTRJzU8ORSM95/HYTAba1auaYNyVlQBAUBrEJO6rNO2NNi7SH+Krp6ZEaFtunTPnJuZEBFnCQbJN9AGd9Q2ZNDdwGC+pRVWKlzOGQugjw0s0AiU5j8eYky0E6Q==
步骤3:修改配置文件禁用密码登录
[root@nfs ~]# vim /etc/ssh/sshd_config
66 PasswordAuthentication no

#修改配置后重启服务
[root@nfs ~]# systemctl restart sshd
步骤4:测试远程连接只能用秘钥对连接
断开xshell连接重新连接测试
5.远程拷贝
全量拷贝
语法结构:scp file 目标主机 #基于TCP SSH的
案例1:将31的a.txt拷贝到backup服务器
[root@nfs ~]# scp a.txt 10.0.0.41:/root/

[root@backup ~]# ll a.txt 
-rw-r--r-- 1 root root 0  4月 17 15:31 a.txt
案例2:将backup上的hosts文件拷贝到31的家目录
[root@backup ~]# scp /etc/hosts 10.0.0.31:~

#nfs31查看
[root@nfs ~]# ll hosts 
-rw-r--r-- 1 root root 198  4月 17 15:33 hosts
案例3:拷贝oldboy目录到nfs服务器上
[root@backup ~]# scp -r oldboy 10.0.0.31:~

[root@nfs ~]# ll -d oldboy
drwxr-xr-x 2 root root 6  4月 17 15:35 oldboy
案例4:指定端口号
[root@backup ~]# scp -P22 /etc/hosts 10.0.0.31:~

[root@nfs ~]# ll hosts 
-rw-r--r-- 1 root root 198  4月 17 15:38 hosts
案例5:从backup服务器执行将31服务器上的passwd下载本地
[root@backup ~]# scp 10.0.0.31:/etc/passwd .

[root@backup ~]# ll passwd 
-rw-r--r-- 1 root root 1991  4月 17 15:40 passwd
6.ssh配置的允许和拒绝
可以在服务器上只允许公司的公网IP地址进行连接,其他的全部拒绝
ssh服务只能公司的ip进行连接
1.防火墙
2.利用ssh的配置文件可以实现运行和拒绝功能
-------------------------------------
#编辑配置文件在文件下底部添加两行配置
[root@backup ~]# grep -B1 'Deny' /etc/ssh/sshd_config 
AllowUsers *@10.0.0.1
DenyUsers *@all

[root@backup ~]# systemctl restart sshd

#扩展:Linux查看公网ip地址
#方法1:
[root@backup ~]# curl cip.cc
IP  : 123.122.40.200
地址  : 中国 北京 北京
运营商 : 联通

数据二 : 中国北京北京 | 联通

数据三 : 中国北京北京市 | 联通

URL : http://www.cip.cc/123.122.40.200

#方法2;
[root@backup ~]# curl ip.sb
123.122.40.200

#方法3:百度搜ip
7.小结
1.ssh远程连接
Windows连接Linux
ssh root@10.0.0.41 22

linux连接Linux
ssh -p22 10.0.0.31

2.ssh远程连接执行命令
ssh 10.0.0.31 "df -h"
ssh 10.0.0.31 "ps axuf"

3.远程拷贝
scp hosts 10.0.0.31:~
scp -r dir 10.0.0.31:~
scp -P22 file 10.0.0.31:~

4.免秘钥验证登录
ssh-keygen 生成密钥对
ssh-copy-id 10.0.0.31   #将公钥拷贝到目标主机
#远程秘钥遇到问题 目录权限和文件权限
[root@nfs ~]# ll -d / /root .ssh/
dr-xr-xr-x. 20 root root 264  4月 16 16:42 /         #555
dr-xr-x---   5 root root 278  4月 17 15:35 /root     #550
drwx------   2 root root  48  4月 17 15:10 .ssh/     #700
[root@nfs ~]# ll .ssh/
总用量 8
-rw------- 1 root root 946  4月 17 15:10 authorized_keys #600

02.http

HTTP请求头:
Accept: text/html,application/xhtml+xml  # 请求资源类型
Accept-Encoding: gzip, deflate           # 编码 gzip
Accept-Language: zh-CN,zh;q=0.9          # 请求语言
Cache-Control: max-age=0                 # 缓存
Connection: keep-alive                   # 长连接 http1.1协议
Host: 10.0.0.41                          # 主机
If-Modified-Since: Fri, 31 Oct 2025 08:41:16 GMT  # 缓存
If-None-Match: "6904762c-daa"            # 缓存
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36    # UA 客户端的信息
短连接(http1.0)、长连接(http1.1)、并发连接(http2.0)

day030-二阶段-ssh远程连接

HTTP响应头部
Connection: keep-alive                 # 长连接
Date: Fri, 17 Apr 2026 03:52:00 GMT    # 响应时间
ETag: "6904762c-daa"                   # 缓存
Last-Modified: Fri, 31 Oct 2025 08:41:16 GMT  #缓存
Server: nginx/1.21.5                   # 响应服务版本

03.作业

1.1阶段重点 周测试
2.nfs rsync lsync 恢复快照多做几遍
正文完
 0
评论(没有评论)