几个小实验

小实验

shh远程管理

ssh是一种安全通道协议,只能用来实现字符界面的远程登录。远程复制,远程文本传输。

ssh对通信双方的数据进行了加密。

用户名和密码登录

密钥对认证方式(可以实现免密登录)

ssh 22 网络层 传输层

数据传输的过程中是加密的

数据传输的过程中是压缩的

ssh分为服务端和客户端

服务端:Openssh

客户端:xshell moba

sshd 应用名称

22

ssh_config 针对客户端的配置文件

sshd_config 服务端的配置

都是配置文件,作用不同。

监听地址,对外提供的服务的地址

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

ssh -p 10022 root@192.169.60.30

scp root@192.168.60.30:/opt/xy102.txt /opt/

scp -r

scp -rP

scp -P

免密登录操作:

1、创建一个密钥文件

复制代码
[root@test2 ~]# ssh-keygen -t ecdsa
Generating public/private ecdsa key pair.
Enter file in which to save the key (/root/.ssh/id_ecdsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_ecdsa.
Your public key has been saved in /root/.ssh/id_ecdsa.pub.
The key fingerprint is:
SHA256:cfHfRXdOJFaFCh3qnArOT9oGSni0MbsVt4hyOZkSj9E root@test2
The key's randomart image is:
+---[ECDSA 256]---+
|          ....o+X|
|          .+...=o|
|   .    . o...  o|
|  o E . .= ... ..|
|   B X.+S.+   . .|
|  = &o+...       |
|   * =o.o        |
|    o  =.        |
|      ..o        |
+----[SHA256]-----+

2、进入.ssh目录下

复制代码
[root@test2 ~]# cd /root/.ssh/

3、将公钥文件传给test3

复制代码
[root@test2 .ssh]# ssh-copy-id -i id_ecdsa.pub -p 10022 root@192.168.60.30
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "id_ecdsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys

4、刷新和生成密钥环境

复制代码
[root@test2 .ssh]# ssh-agent bash
[root@test2 .ssh]# ssh-add
Identity added: /root/.ssh/id_ecdsa (/root/.ssh/id_ecdsa)

5、无需密码直接进入test3

复制代码
[root@test2 .ssh]# ssh root@192.168.60.30
ssh: connect to host 192.168.60.30 port 22: Connection refused

xshell的免密登录操作:

1、新建一个xshell

2、记住登录的用户

3、生成密钥

4、将密钥复制到.ssh目录下,并赋权

复制代码
[root@test3 ~]# cd .ssh/
[root@test3 .ssh]# ls
id_ecdsa  id_ecdsa.pub  known_hosts
[root@test3 .ssh]# rz -E
rz waiting to receive.
[root@test3 .ssh]# ls
id_ecdsa  id_ecdsa.pub  id_rsa_2048.pub  known_hosts
[root@test3 .ssh]# cat id_rsa_2048.pub >> authorized_keys
[root@test3 .ssh]# ls
authorized_keys  id_ecdsa.pub     known_hosts
id_ecdsa         id_rsa_2048.pub
[root@test3 .ssh]# chmod 600 authorized_keys 

sftp:远程文件传输协议

Openssh:包含3个功能

远程连接

远程复制

文件传输

sftp是加密的文件传输协议,传输效率比FTP低,但是更安全

sftp -P

ssh密钥认证

密钥对认证(免密登录)

密钥:密钥是一种参数,把明文转换成密文。转换成的密文是一种算法声场的参数。

密钥的形式分为两种,对称密钥,非对称密钥

ssh 非对称密钥

ssh的加密方式:

RSA

ECDSA

DSA

加密的算法可以指定。

id_ecdsa 私钥文件

id_ecdsa.pub 公钥文件

免密登录的过程:

ssh-keygen -t ecdas #执行加密的算法

ssh-copy-id -i id ecdsa.pua (-p 10022)root@192.168.60.10

把公钥文件发送到对方主机

ssh-agent bash

把密钥对进行缓存,可以自动提供身份验证,实现免密登录

ssh-add

管理缓存

NFS共享存储服务

network file system 在计算机网络中共享文件系统的协议

计算机之间可以通过网络共享目录和文件

rpcbind 远程共享调用

nfs 共享服务

配置nfs时,要先启动调用rpcbing,再开启nfs

rpcbind端口号111

nfs 2049(查询不到)

/optgongxiang 192.168.233.0/24(rw,sync,no root_squash)

/opt/gongxian8 声明本机,的共享目录

192.168.233.0/24 声明网段,谁可以访问本机的共享目录。(声明指定的主机可以访问共享目录 作业

(rw,sync,no root_squash)权限,共享目录的使用者的权限。

rw 读写 ro 只读

sync 同步写入到硬盘当中(共享用户的操作。)

no_root_squash 如果客户机以root用户访问共享目录,就给你和本机的root用户一样的权限。

root_squash 客户机root用户登录访问共享目录,就会把你变成匿名用户。

all_squash 所有访问用户都映射为匿名用户或用户组 async 将数据先保存在内存缓冲区中,必要时才写入磁盘。 subtree_check(默认) 若输出目录是一个子目录,则nfs服务器将检查其父目录的权限。 no_subtree_check 即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率。

主机:

vim/etc/exports

/opt/gongxiang 192.168.60.0/24(rw,sync,no_root_squash)

systemctl restart rpcbind

systemctl restart nfs

showmount -e

查看本机共享出去的目录

客户机:

安装rpching和nfs

systemctl restart rpcbind

systemctl restart nfs

showmount -e 192.168.60.30

挂载:

临时

mount192.168.60.30:/optgongxiang /opt/test1

vim /etc/fstab

192.168.60.30:/opt/gongxiang /opt/test1 nfs defaults,netdev 0 0

nfs共享操作:

1、在主机安装软件包

复制代码
[root@test2 opt]# yum  -y install nfs-utils rpcbind

2、在opt目录下创建一个gongxiang目录,并赋权777

复制代码
[root@test2 opt]# mkdir gongxiang
[root@test2 opt]# chmod 777 gongxiang/
[root@test2 opt]# ls
gongxiang

3、在etc目录下新建一个exports文件

复制代码
[root@test2 opt]# vim /etc/exports
/opt/gongxiang 192.168.60.0/24(rw,sync,no_root_squash)

4、重启配置文件

复制代码
[root@test2 opt]# systemctl restart rpcbind
[root@test2 opt]# systemctl restart nfs

5、查看主机可以共享的目录和可以共享的网段

复制代码
[root@test2 opt]# showmount -e
Export list for test2:
/opt/gongxiang 192.168.60.0/24

6、在客户机安装软件包

复制代码
[root@test3 opt]# yum  -y install nfs-utils rpcbind

7、在客户机重启配置文件

复制代码
[root@test3 opt]# systemctl restart rpcbind
[root@test3 opt]# systemctl restart nfs

8、在客户机查看主机的共享目录

复制代码
[root@test3 ssh]# showmount -e 192.168.60.30
Export list for 192.168.60.30:
/opt/gongxiang 192.168.60.0/24

9、挂载

复制代码
[root@test2 opt]# mount 192.168.60.30:/opt/gongxiang /opt/test1
[root@test2 test1]# df -hT
文件系统                     类型      容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root      xfs        38G  5.5G   32G   15% /
devtmpfs                     devtmpfs  1.9G     0  1.9G    0% /dev
tmpfs                        tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                        tmpfs     1.9G   13M  1.9G    1% /run
tmpfs                        tmpfs     1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sr0                     iso9660   4.3G  4.3G     0  100% /mnt
/dev/sda1                    xfs      1014M  179M  836M   18% /boot
/dev/mapper/centos-home      xfs        19G   37M   19G    1% /home
tmpfs                        tmpfs     378M  8.0K  378M    1% /run/user/42
tmpfs                        tmpfs     378M   36K  378M    1% /run/user/0
/dev/sdb2                    xfs        17M  6.5M   11M   39% /data2
/dev/sdb3                    xfs       5.0G   33M  5.0G    1% /data3
192.168.60.30:/opt/gongxiang nfs4       38G  5.5G   32G   15% /opt/test1

10、在客户机中往test1中写入文件

复制代码
[root@test2 opt]# ls
test1
[root@test2 opt]# cd test1/
[root@test2 test1]# touch 123123
[root@test2 test1]# ls
123123

11、在主机中查看客户机写入的文件

复制代码
[root@test3 opt]# cd /opt/gongxiang/
[root@test3 gongxiang]# ls
[root@test3 gongxiang]# ls
123123

yum的进阶

yum主要的作用:

依赖关系

自动安装

自动升级

centos7 yum

centos8 dnf(yum的升级版)

dnf -y install

Ubuntu

apt

yum的包都是.rpm

Ubunt的包都是.deb

日志文件和缓存:/var/log/yum.log

网页版的形式做一个yum

网页版的形式做一个yum 操作:

1、安装apache

复制代码
[root@test2 test1]# yum -y install httpd

2、进入yum.repos.d目录下新建文件

复制代码
[root@test2 html]# cd /etc/yum.repos.d/
[root@test2 yum.repos.d]# vim httpd.repo
 [httpd]
 name=123
 baseurl=http://192.168.60.20/centos7
 gpgcheck=0 

3、进入html目录下

复制代码
[root@test2 test1]# cd /var/www/html/
[root@test2 html]# mkdir centos7

4、挂载

复制代码
[root@test2 html]# mount /dev/cdrom /var/www/html/centos7/

5、清除缓存并建立元数据

复制代码
[root@test2 centos7]# yum clean all && yum makecache 

6、访问页面

curl页面测试工具,后面跟上ip地址或者域名可以访问这个页面(测试web软件工作是否正常)

vsftpd

http

混合

vsftp的yum源操作:

1、安装vsftpd软件包

复制代码
[root@test2 ~]# yum -y install vsftpd

2、关闭防火墙

复制代码
[root@test2 ~]# systemctl stop firewalld.service 
[root@test2 ~]# setenforce 0

3、进入ftp目录下新建应该centos7

复制代码
[root@test2 ~]# cd /var/ftp/
[root@test2 ftp]# ls
pub
[root@test2 ftp]# mkdir centos7

4、挂载

复制代码
[root@test2 ftp]# mount /dev/cdrom /var/ftp/centos7/
[root@test2 ftp]# df -hT
文件系统                     类型      容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root      xfs        38G  4.7G   33G   13% /
devtmpfs                     devtmpfs  1.9G     0  1.9G    0% /dev
tmpfs                        tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                        tmpfs     1.9G   13M  1.9G    1% /run
tmpfs                        tmpfs     1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1                    xfs      1014M  179M  836M   18% /boot
/dev/mapper/centos-home      xfs        19G   37M   19G    1% /home
tmpfs                        tmpfs     378M  8.0K  378M    1% /run/user/42
tmpfs                        tmpfs     378M   36K  378M    1% /run/user/0
/dev/sdb2                    xfs        17M  6.5M   11M   39% /data2
/dev/sdb3                    xfs       5.0G   33M  5.0G    1% /data3
192.168.60.30:/opt/gongxiang nfs4       38G  5.5G   32G   15% /opt/test1
/dev/sr0                     iso9660   4.3G  4.3G     0  100% /var/ftp/centos7

5、打开vsftpd服务

复制代码
[root@test2 yum.repos.d]# systemctl restart vsftpd

6、在yum.repos.d的目录下创建一个local.repo的文件

复制代码
[root@test2 yum.repos.d]# vim local.repo
[local]
name=123
baseurl=ftp://192.168.60.20/centos7
gpgcheck=0

7、清除缓存和建立元数据

复制代码
[root@test2 yum.repos.d]# yum clean all && yum makecache 
已加载插件:fastestmirror, langpacks
正在清理软件源: local
Cleaning up list of fastest mirrors
Other repos take up 696 M of disk space (use --verbose for details)
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
local                                     | 3.6 kB     00:00     
(1/4): local/group_gz                       | 166 kB   00:00     
(2/4): local/filelists_db                   | 3.2 MB   00:00     
(3/4): local/primary_db                     | 3.1 MB   00:00     
(4/4): local/other_db                       | 1.3 MB   00:00     
元数据缓存已建立

vsftpd和httpd的混合yum源操作:

1、创建vsftpd和httpd的混合

复制代码
[root@test2 yum.repos.d]# vim local.repo
[local]
name=123
baseurl=ftp://192.168.60.20/centos7
gpgcheck=0
priority=2
#指定优先级,数字越大,优先级越高
[net]
name=456
baseurl=https://mirrors.aliyun.com/epel/7Server/x86_64/
gpgcheck=0
priority=1

2、清空缓存和建立元数据

复制代码
[root@test2 yum.repos.d]# yum clean all && yum makecache 
已加载插件:fastestmirror, langpacks
正在清理软件源: local net
Cleaning up list of fastest mirrors
Other repos take up 696 M of disk space (use --verbose for details)
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
local                                     | 3.6 kB     00:00     
net                                       | 4.3 kB     00:00     
(1/10): local/group_gz                      | 166 kB   00:00     
(2/10): local/filelists_db                  | 3.2 MB   00:00     
(3/10): local/other_db                      | 1.3 MB   00:00     
(4/10): local/primary_db                    | 3.1 MB   00:00     
(5/10): net/group                           | 399 kB   00:06     
(6/10): net/updateinfo                      | 1.0 MB   00:01     
(7/10): net/prestodelta                     | 1.5 kB   00:00     
(8/10): net/primary_db                      | 8.7 MB   00:10     
(9/10): net/filelists_db                    |  15 MB   00:19     
(10/10): net/other_db                       | 4.1 MB   00:04     
元数据缓存已建立
相关推荐
虾稿1 小时前
[手机Linux] 七,NextCloud优化设置
linux·运维·服务器
首发运维1 小时前
centos 释放系统预留内存并关闭Kdump服务
linux·运维·centos·linux操作系统问题
新子-存在了1 小时前
linux中 mysql备份
linux·运维·mysql
最后一个bug1 小时前
rt-linux中使用mlockall与free的差异
linux·c语言·arm开发·单片机·嵌入式硬件·算法
ZHOUPUYU1 小时前
VMware虚拟机超详细安装Linux教程(最新版)
linux·运维·服务器·windows·微软·centos·虚拟机
初级代码游戏1 小时前
关于linux的ld.so.conf.d
linux·运维·服务器
xianwu5431 小时前
反向代理模块。开发
linux·开发语言·网络·c++·git
m0_748232391 小时前
在Linux centos7环境下部署wblogic使用weblogic部署war包项目
linux·运维·服务器
李先静2 小时前
用 gdbserver 调试 arm-linux 上的 AWTK 应用程序
linux·arm开发·awtk
地球空间-技术小鱼2 小时前
YUM(Yellowdog Updater, Modified)和DNF(Dandified YUM)简介
linux·运维·服务器·笔记·学习