linux运维8

1、创建私有CA并进行证书申请。

CA自颁发过程:

  1. CA生成私钥
  2. 用自己的私钥为自己的申请书签名
  3. 签名好的证书其实就是公钥,证书和私钥搭配使用
cd /etc/pki/CA                       进入到保存证书的目录下
(umask 066; openssl genrsa -out private/cakey.pem 2048)  生成CA的私钥

用CA私钥为CA的申请书签名
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out  /etc/pki/CA/cacert.pem

Country Name (2 letter code) [XX]:CN              输入国家简称,只能输2个字符
State or Province Name (full name) []:beijing               输入省级名字
Locality Name (eg, city) [Default City]:beijing             输入城市名字
Organization Name (eg, company) [Default Company Ltd]:test  输入组织名字
Organizational Unit Name (eg, section) []:test              输入部门名称

输入CA的域名
Common Name (eg, your name or your server's hostname) []:www.test.io

输入邮箱地址,可以不写
Email Address []:

在这里插入图片描述

openssl x509 -in cacert.pem -noout -text   查看CA证书的详细信息

在这里插入图片描述
CA为服务器颁发证书过程

  1. 服务器生成私钥
  2. 服务器用私钥生成申请书
  3. 服务器将申请书发给CA机构
  4. CA机构签名,返回证书给服务器
  5. 注意:国家,省份,公司名字必须和CA机构的一致,要不然证书不能使用

一 服务器配置

(umask 066; openssl genrsa -out   web.key 2048)  服务器生成私钥

openssl req -new -key web.key -out web.csr       服务器用私钥生成证书申请书

注意:国家和省份和公司名字必须和CA机构的一致,要不然会不能使用证书

Country Name (2 letter code) [XX]:CN               输入国家简称,最大2个字符
State or Province Name (full name) []:beijing               输入省份名
Locality Name (eg, city) [Default City]:beijing             输入城市名
Organization Name (eg, company) [Default Company Ltd]:test  输入公司或组织名
Organizational Unit Name (eg, section) []:test              输入部门名

输入服务器的域名
Common Name (eg, your name or your server's hostname) []:www.web.io 

输入邮箱地址,可不写
Email Address []:

输入密码,可不写
A challenge password []:
输入公司名,可不写
An optional company name []:

将服务器的证书申请书发给CA机构

二 CA机构收到后配置:

cd /etc/pki/CA           进入CA的证书配置目录
ls
其中web.csr就是服务器的证书申请书

在这里插入图片描述

touch /etc/pki/CA/index.txt            创建索引
echo 01 >/etc/pki/CA/serial            创建证书编号

CA对证书申请书进行签名:
openssl ca -in web.csr  -out   /etc/pki/CA/certs/web.crt -days 365

确认证书申请书的信息,按y确定
Certificate is to be certified until Aug 29 11:24:46 2022 GMT (365 days)
Sign the certificate? [y/n]:y

确认提交签名,按y确定
1 out of 1 certificate requests certified, commit? [y/n]y

在这里插入图片描述
查看签名好的证书信息:

openssl x509 -in /etc/pki/CA/certs/web.crt -noout -text

在这里插入图片描述
可以用工具放到Windows系统下查看

yum install -y lrzsz              安装工具,使得centos可以传小型文件到Windows
sz /etc/pki/CA/certs/web.crt      sz是下载到Windows,rz是上传到centos系统

在这里插入图片描述
查看证书信息
在这里插入图片描述
CA机构域名 : www.test.io
web服务器域名:www.web.io
在这里插入图片描述

2、总结ssh常用参数、用法

ssh --help           查看ssh的帮助信息

在这里插入图片描述

  1. 默认参数远程
ssh 192.168.116.130     远程linux服务器
省略了root@192.168.116.130  ,如果不是root账户需要指定账户名

在这里插入图片描述

  1. 指定账户远程
ssh aa@192.168.116.130

在这里插入图片描述

  1. -t 多层跳转远程
远程192.168.116.145需要经过192.168.116.130才能远程
最后的ssh不用加-t
ssh -t 192.168.116.130 ssh 192.168.116.145

在这里插入图片描述

  1. -p 指定远程端口远程

被远程服务器配置

vi /etc/ssh/sshd_config    修改被远程主机的端口
原本为默认端口: #Port 22
修改为 Port 1234

重启ssh服务
systemctl restart sshd

在这里插入图片描述

ssh  aa@192.168.116.130              没有指定端口,默认就是22端口
ssh -p 1234 aa@192.168.116.130       指定被远程主机的端口进行远程

在这里插入图片描述

  1. -o StrictHostKeyChecking=no 跳过验证进行远程
ssh 192.168.116.145                             默认会提示确认服务器的ID
ssh -o StrictHostKeyChecking=no 192.168.116.145 设为no跳过确认步骤,直接输入密码

在这里插入图片描述

  1. -b 指定源IP远程
    如果本地服务器配置了多个IP,那么可以指定使用哪个IP进行远程。
指定使用本机的192.168.116.148 远程到  192.168.116.145
ssh -b 192.168.116.148 192.168.116.145

在这里插入图片描述

3、总结sshd服务常用参数。

服务名称:sshd
被别人远程的配置文件:/etc/ssh/sshd_config
自己远程别人使用的配置文件:/etc/ssh/ssh_config

被别人远程配置参数:
/etc/ssh/sshd_config

#Port 22                默认被别人远程的端口,可以删除#后,把22修改为其他端口
#PermitRootLogin yes     是否禁止root账户进行远程,centos默认关闭,Ubuntu默认开启
PubkeyAuthentication yes  是否使用公钥和私钥方式进行登录,默认开启
MaxSessions  10           最大连接到服务器的窗口数量
PermitEmptyPasswords no   是否使用空密码登录,默认为no
PasswordAuthentication yes 是否使用账户密码方式登录系统,默认开启
UseDNS yes                 是否使用DNS解析,可以改为no,减少ssh远程时间
GSSAPIAuthentication yes   是否开启GSSAPI认证,可以改为no,减少ssh远程时间
#ClientAliveInterval 0     登录后多少时间内没操作就计数,和下面参数搭配使用
#ClientAliveCountMax 3     超时多少次就注销登录,如3次超过上面设置的时间就注销
#ListenAddress 0.0.0.0     监听远程的地址,如果想要指定某个IP才能进行远程,配置这个

/etc/ssh/ssh_config
远程别人时使用的配置文件

#   Port 22              用ssh远程时,不用指定22端口,实际就是用这里的参数的22端口
#   StrictHostKeyChecking ask   第一次远程主机时,提示yes或no,改为no就不用输入yes或no了,直接到达输密码界面
#   IdentityFile ~/.ssh/identity  和对端远程使用到的算法文件
#   IdentityFile ~/.ssh/id_rsa
#   IdentityFile ~/.ssh/id_dsa
#   IdentityFile ~/.ssh/id_ecdsa
#   IdentityFile ~/.ssh/id_ed25519

4、搭建dhcp服务,实现ip地址申请分发

DHCP分配地址原理:

环境:

系统/功能IP
centos 7.8/DHCP服务器10.0.0.1
centos 7.8/客户端自动获取IP

抓包分析:

  1. 客户端向网络发送DHCP DISCOVER包,请求网络上的DHCP服务器分配地址
    在这里插入图片描述
  2. DHCP服务器收到请求后,分配地址并发送DHCP OFFER分给客户端,让客户端确认是否要这个地址
    可以看到有客户端的IP地址
    在这里插入图片描述
  3. 客户端返回DHCP REQUEST包,表示确认使用这个IP地址
    0.0.0.0 表示客户端还没正式启用这个地址
    在这里插入图片描述
  4. 服务器收到客户端的确认后,发送DHCP ACK,正式把地址分配给客户端
    在这里插入图片描述

DHCP服务器配置:

先设置为nat模式,下载dhcp软件
在这里插入图片描述

yum install -y dhcp         安装DHCP服务

安装后,默认提供一个DHCP配置模板文件

rpm -ql dhcp

在这里插入图片描述
将模板文件复制到DHCP的配置目录下

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/  复制文件
cd /etc/dhcp/                                               进入配置目录
mv dhcpd.conf.example dhcpd.conf                            覆盖掉老的配置文件
mv:是否覆盖"dhcpd.conf"? y

编辑DHCP配置文件

 vi dhcpd.conf 
 
option domain-name "example.org";               设置DHCP的域名
option domain-name-servers 114.114.114.114;     设置DHCP的DNS
default-lease-time 600;                         设置默认租约时长
max-lease-time 7200;                            设置最大租约时长
subnet 10.0.0.0  netmask 255.255.255.0 {        设置DHCP分配的网段
        option routers 10.0.0.1;                 设置网段的网关      
        range 10.0.0.100 10.0.0.200;            设置分配的DHCP的IP段
}     

systemctl enable dhcpd                          设置开启自启DHCP服务

设置IP

vi /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=1343ea28-e2cd-4f53-b545-5c6bbd7bcf07
DEVICE=ens33
ONBOOT=yes
IPADDR=10.0.0.1
NETMASK=255.255.255.0

关机后改为主机模式

在这里插入图片描述

虚拟机选择虚拟网络编辑器
在这里插入图片描述

注意:虚拟网络编辑器这里不能打钩使用本地DHCP服务进行地址分配。默认主机模式是没打钩的
在这里插入图片描述
开机后,确认端口打开,服务正常运行

ss -unl                       67端口为DHCP服务端的端口,68为客户端

在这里插入图片描述
systemctl status dhcpd
在这里插入图片描述

客户端配置

设置连接模式为主机模式
在这里插入图片描述
设置网卡为DHCP自动获取IP

vi /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp                                  设置DHCP模式
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=7b636dc1-fa52-4fc5-a424-e8cd83fa0bfd
DEVICE=ens33
ONBOOT=yes                                      要设置这个,要不然获取不到IP

在这里插入图片描述
重启网卡,确认获取到DHCP服务器分配的IP
systemctl restart network
在这里插入图片描述

服务器可以看到分配的IP
cat /var/lib/dhcpd/dhcpd.leases
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值