您的位置:首页 > 游戏 > 手游 > 6.6SSH的运用

6.6SSH的运用

2024/11/17 12:28:25 来源:https://blog.csdn.net/gjw01/article/details/139531159  浏览:    关键词:6.6SSH的运用

ssh远程管理
ssh是一种安全通道协议,用来实现字符界面的远程登录。远程复制,远程文本传输。
ssh对通信双方的数据进行了加密
用户名和密码登录
密钥对认证方式(可以实现免密登录)
ssh 22 网络层 传输层
数据传输的过程中是加密的
数据在传输的过程中是压缩的
ssh分为服务端和客户端
服务端:openssh
客户端:xshell moba
系统中的应用名称 sshd
ssh config 针对客户端的配置文件
sshd config 服务端的配置
都是配置文件,作用不同
监听地址,对外提供服务的地址

scp远程复制:把目标主机的文件复制到本机。

scp root@192.168.233.20:/opt/xy.txt /opt
#把20/opt/xy.txt文件,复制到本机的opt目录下
scp -r root@192.168.233.20:/opt/123 /opt
#把20/opt/123目录,复制到本机的opt目录下
scp -rP 1022 root@192.168.233.20:/opt/123 /opt
#把20/opt/123目录,复制到本机的opt目录下
ssh -p 1022 root@192.168.233.20
#远程连接服务器,20服务器的端口是1022

sftp 远程文件传输协议
openssh包含三个功能
远程连接
远程复制
文件传输
sftp是加密的文件传输协议,传输效率比ftp低,但是更安全。语法和ftp一样。
ssh密码认证
密钥对认证(登录)
密钥:密钥是一种参数,把明文转换成密文。转换成的密文是一种算法声场的参数
密钥的形式分为两种,对称密钥,非对称密钥
ssh 非对称密钥
ssh的加密方式:
RSA
ECDSA
DSA
加密的算法,可以指定。ssh-keygen -t 加密方式
id.ecdsa 私钥文件
id.ecdsa.pub 公钥文件
免密登录的过程:

ssh-ssh-keygen -t 算法
#指定加密的算法
ssh-copy-id-i id_ecdsa.pub(-p 1022)root@192.168.233.20
#把公钥文件发送到对方主机
ssh-agent-bash
#把密钥对进行缓存,可以自动提供身份验证,实现免密登录
ssh-add
#管理缓存

nfs共享存储服务
network file system 在计算机网络中共享文件系统的协议。
计算机之间可以通过网络共享目录和文件。
rpcbind 远程共享的调用
nfs 提供共享服务
配置nfs时,要先启动调用rpcbind在开启nfs
rpcbind端口号111
nfs 2049(隐藏端口,无法查询到)

/opt/gongxiang 192.168.233.0/24(rw,sync,no_root_squash)
/opt/gongxiang 声明本机的共享目录
192.168.233.0/24 声明网段,谁可以访问本机的共享目录(声明指定主机可以访问共享目录)
(rw,sync,no_root_squash)
rw 读写 ro 只读
sync 同步写入到硬盘中(共享用户的操作)
no_root_squash 如果客户机以root用户访问共享目录,就给你和本机的root用户一样的权限
root_squash 客户机root用户登陆访问共享目录,就会把你变成匿名用户
主机:
vim /etc/exports
/opt/gongxiang 192.168.233.0/24(rw,sync,no_root_squash)
system restart rpcbind
system restart nfs
showmount -e 查看本机共享出去的目录
客户机:
安装rpcbind和nfs
system restart rpcbind
system restart nfs
showmount -e 192.168.233.10 查看主机暴露出的共享目录
挂载:
mount 192.168.233.10:/opt/gongxiang /opt/test1
vim /etc/fstab
192.168.233.10:/gongxiang /opt/test1 nfs defaults,_netdev 0 0
_netdev:有网络该目录才能挂载成功

yum的进阶说明
yum的主要作用
依赖关系
自动安装
自动升级
centos7 yum
centos8 dbf(yum的升级版)
ubuntu
apt
yum的包都是.rpm
ubunt的包是.deb
yum的日志文件和缓存
/var/log/yum.log
缓存:下载
/etc/yum.conf
网页版的形式做一个yum源
curl页面测试工具,后面跟上IP地址或者域名可以访问这个页面(测试web软件工作是否正常)
vsftpd
http
混合

SSH的运用

存放ssh服务端的配置文件
vim /etc/ssh/sshd_config
#常用选项配置
Port 22		#监听端口默认为22
ListenAddress 0.0.0.0	#监听地址

在这里插入图片描述

常用配置项

LoginGraceTime 2m	#登陆验证时间为2分钟
PermitRootLogin yes	#允许root用户登录
MaxAuthTries 6		#最大重试次数6
MaxSessions 10		#最大连接数为10

在这里插入图片描述

存放ssh客户端的配置文件

/etc/ssh/ssh_config(该配置基本默认保持不变)

ssh在Linux中的密码登录

ssh [远程主机用户名]@[远程服务器主机名或IP地址]

ssh root@192.168.233.10
exit  #退出当前用户

在这里插入图片描述

ssh -p 1022 root@192.168.233.20	#远程连接服务器,该服务器的端口号为1022
exit  #退出当前用户

在这里插入图片描述

利用ssh协议传输文件和获取文件

ssh scp sftp 都是默认使用ssh协议,端口为 tcp 22

scp复制文件

scp [有目录文件-r] [-P指定端口] 端口号 [用户]@服务端IP:复制文件的路径 保存的地址

scp -rP 1022 root@192.168.233.20:/opt/123 /opt

在这里插入图片描述

sftp远程访问操作

sftp [-P] 用户@服务端IP (当默认端口改变时,可以用-P指定)

sftp -P 1022 root@192.168.233.20

在这里插入图片描述

传输和获取文件

在这里插入图片描述

ssh密钥登录操作

第一步:在客户端中创建密钥
ssh-keygen -t rsa

在这里插入图片描述

cd /root/.ssh
ls

在这里插入图片描述

第二步:把公钥文件导入到ssh服务端
ssh-copy-id -i id_rsa.pub -p 1022 root@192.168.233.20
#把公钥文件发送到对方主机

在这里插入图片描述

ssh-agent-bash
#把密钥对进行缓存,可以自动提供身份验证,实现免密登录
ssh-add
#管理缓存

在这里插入图片描述

进行测试

ssh -p 1022 root@192.168.233.20

在这里插入图片描述

nfs实现文件共享

创建一个文件并赋权

mkdir gongxiang
chmod 777 gongxiang/

在这里插入图片描述

vim /etc/exports #设定这个共享目录

在这里插入图片描述

systemctl restart rpcbind
systemctl restart nfs
showmount -e	#查看本机共享出去的目录

在这里插入图片描述

登录客户机

yum -y install rpcbind nfs-utils
#安装rpcbind和nfs

在这里插入图片描述

system restart rpcbind
system restart nfs
showmount -e 192.168.233.10	#查看主机共享的目录

在这里插入图片描述

挂载

 mount 192.168.233.10:/opt/gongxiang /opt/test1		#将主机的共享目录挂载到test1上

在这里插入图片描述

测试:
在客户机的test1目录中添加文件

在这里插入图片描述

内容实现共享

在这里插入图片描述

如何实现永久挂载

umount 192.168.233.10:/opt/gongxiang /opt/test1    #首先解挂载
vim /etc/fstab  #进入永久挂载文件192.168.233.10:/opt/gongxiang /opt/test1 nfs defaults,_netdev 0 0
#_netdev:有网络该目录才能挂载成功
mount -a	#刷新

在这里插入图片描述
在这里插入图片描述

网页版yum源httpd

进入apache默认访问页面

cd /var/www/html/

在这里插入图片描述

创建centos7

mkdir centos7

在这里插入图片描述

挂载

mount /dev/cdrom /var/www/html/centos7/

在这里插入图片描述

进入yum源配置文件,创建本地源

cd /etc/yum.repos.d/
vim httpd.repo	#配置本地yum源
[httpd]
name=123
baseurl=http://192.168.233.10/centos7
gpgcheck=0

在这里插入图片描述

systemctl restart httpd	#启动服务
yum clean all && yum makecache
#清除旧缓存,创建新缓存

在这里插入图片描述

测试另一台主机从centos7下载

为了更加直观将yum源全部删除(删除前记得备份)

在这里插入图片描述

vim local.repo	#配置yum源
[local]
name=123
baseurl=http://192.168.233.10/centos7
gpgcheck=0

在这里插入图片描述

因为yum源都被删除只会在下载镜像中的东西

在这里插入图片描述

vsftp 做 yum源

安装vsftpd并启动

yum -y install vsftpd
systemctl restart vsftpd

在这里插入图片描述

创建centos7并挂载

mkdir centos7
mount /dev/cdrom /var/ftp/centos7/

在这里插入图片描述
进入yum源配置文件为了直观显示删除所有yum源

在这里插入图片描述

vim local.repo	#配置yum源
[local]
name=123
baseurl=http://192.168.233.10/centos7
gpgcheck=0
yum clean all && yum makecache
#清除缓存建立新缓存

在这里插入图片描述

测试:

进入客户机更改yum源内的文件,建立新缓存

在这里插入图片描述

在这里插入图片描述

混合源

vim local.repo
[local]
name=123
baseurl=ftp://192.168.233.10/centos7
gpgcheck=0
priority=2[net]
name=456
baseurl=https://mirrors.aliyun.com/epel/7Server/x86_64/
gpgcheck=0
yum clean all && yum makecache

在这里插入图片描述
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com