1.根据/etc/pki/tls/openssl.conf创建CA相关目录和文件
mkdir -pv /etc/pki/CA/{certs,crl,newcerts,private}
touch /etc/pki/CA/index.txt 生成证书索引数据库文件
echo 0F > /etc/pki/CA/serial 指定第一个办法证书的序列号
2.创建CA私钥
cd /etc/pki/CA
(umask 066; openssl genrsa -out private/cakey.pem 2048)
3.CA自签名证书
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem
选项说明:
-new:生成新证书签署请求
-x509:专用于CA生成自签证书
-key:生成请求时用到的私钥文件
-days n:证书的有效期限
-out /PATH/TO/SOMECERTFILE: 证书的保存路径
输出证书内容 openssl x509 -in /etc/pki/CA/cacert.pem -noout -text
4.用户生成私钥和证书申请
mkdir /data/app1
(umask 066; openssl genrsa -out /data/app1/app1.key 2048) 生成私钥
openssl req -new -key /data/app1/app1.key -out /data/app1/app1.csr 生成证书申请文件
根据配置文件,countryName,stateOrProvinceName,organizationName必须和CA自签证书一样
openssl ca -in /data/app1/app1.csr -out /etc/pki/CA/certs/app1.crt -days 1000 生成证书
openssl x509 -in /etc/pki/CA/certs/app1.crt -noout -serial 可以找到证书的编号
验证指定编号对应证书的有效性
openssl ca -status 0F 亦可以直接看index.txt
5.将ca证书和用户证书导出在windows安装即可。ca证书重命名为crt后缀文件
6.吊销证书
openssl ca -revoke /etc/pki/CA/newcerts/0F.pem
7.生成证书吊销列表文件
echo 01 > /etc/pki/CA/crlnumber
openssl ca -gencrl -out /etc/pki/CA/crl.pem
将此crl.pem传到window修改后缀为crl.pem.crl,双击即可查看
2、总结ssh常用参数、用法ssh命令是ssh客户端,允许实现对远程系统经验证地加密安全访问。
格式:
ssh [user@]host [COMMAND]
ssh [-l user] host [COMMAND]
常见选项:
-p port #远程服务器监听的端口 -b #指定连接的源IP -v #调试模式 -C #压缩方式 -X #支持x11转发 -t #强制伪tty分配,如:ssh -t remoteserver1 ssh -t remoteserver2 ssh remoteserver3 -o option 如:-o StrictHostKeyChecking=no -i#指定私钥文件路径,实现基于key验证,默认使用文件:~/.ssh/id_dsa,~/.ssh/id_ecdsa,~/.ssh/id_ed25519,~/.ssh/id_rsa等
ssh在登陆过程中分为免密登陆和密码登陆,其中密码登陆需要经过以下几个步骤:他们整个交互过程都需要对于公私钥加解密来完成数据的传递。
ssh -p 端口号 用户名@远程主机IP或主机名
而免密登陆就少了用户登陆输入密码,而是通过系统生成随机数字来确定是否可以成功验证。
useradd #分发服务器与目标节点服务器配置相同的用户 ssh-keygen -t dsa # 分发服务器上生成密钥对 ssh-copy-id -i 密钥名称 -p 端口号 用户@远程主机IP地址
除了ssh的本身的命令,还有基于ssh扩展的命令就是scp,这个命令在平时复制文件时非常有用。
命令使用格式:scp [options] SRC… DEST/
主要有下面几个常用选项
-C 压缩数据流 -r 递归复制 -p 保持原文件的属性信息 -q 静默模式 -P PORT 指明remote host的监听的端口
3、总结sshd服务常用参数。
sshd的配置文件: /etc/ssh/sshd_config
服务器端的配置文件帮助:man 5 sshd_config
sshd_config文件配置重要配置参数
Port ListenAddress IP # 设置绑定的ip地址 LoginGraceTime 2m #设定登陆超时时间 PermitRootLogin yes #默认ubuntu不允许root远程ssh登录 StrictModes yes #检查.ssh/文件的所有者,权限等 MaxAuthTries 6 #最大尝试次数 MaxSessions 10 #同一个连接最大会话 PubkeyAuthentication yes #基于key验证 PermitEmptyPasswords no #空密码连接 PasswordAuthentication yes #基于用户名和密码连接 GatewayPorts no ClientAliveInterval 10 #单位:秒 ClientAliveCountMax 3 #默认3 UseDNS yes #可以关闭DNS反解析,提升登陆速度 GSSAPIAuthentication yes #提高速度可改为no MaxStartups #未认证连接最大值,默认值10 Banner /path/file #以下可以限制可登录用户的办法: AllowUsers user1 user2 user3 DenyUsers AllowGroups DenyGroups
4、搭建dhcp服务,实现ip地址申请分发
DHCP工作包括四个步骤
1、寻找DHCP服务器
当DHCP客户端第一次登录网络的时候,计算机发现本机上没有任何IP地址设定,将以广播方式发送DHCP discover发现信息来寻找DHCP服务器,即向255.255.255.255发送特定的广播信息。网络上每一台安装了TCP/IP协议的主机都会接收这个广播信息,但只有DHCP服务器才会做出响应。
2、分配IP地址
在网络中接收到DHCP discover发现信息的DHCP服务器就会做出响应,它从尚未分配的IP地址池中挑选一个分配给DHCP客户机,并向DHCP客户机发送一个包含分配的IP地址和其他设置的DHCP offer提供信息。
3、接受IP地址
DHCP客户端接受到DHCP offer提供信息之后,选择第一个接收到的提供信息,然后以广播的方式回答一个DHCP request请求信息,该信息包含向它所选定的DHCP服务器请求IP地址的内容。
4、IP地址分配确认
当DHCP服务器收到DHCP客户端回答的DHCP request请求信息之后,便向DHCP客户端发送一个包含它所提供的IP地址和其他设置的DHCP ack确认信息,告诉DHCP客户端可以使用它提供的IP地址。然后,DHCP客户机便将其TCP/IP协议与网卡绑定,另外,除了DHCP客户机选中的DHCP服务器外,其他的DHCP服务器将收回曾经提供的IP地址。
重新登录
以后DHCP客户端每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息。当DHCP服务器收到这一信息后,它会尝试让DHCP客户机继续使用原来的IP地址,并回答一个DHCP ack确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时,则DHCP服务器给DHCP客户机回答一个DHCP nack否认信息。当原来的DHCP客户机收到此DHCP nack否认信息后,它就必须重新发送DHCP discover发现信息来请求新的IP地址。
搭建DHCP服务器:
yum -y install dhcp
vim /etc/dhcp/dhcpd.conf
subnet 3.7.191.0 netmask 255.255.255.0 {
range 3.7.191.241 3.7.191.247; #地址池:设置可分配的IP地址范围段
option routers 3.7.191.1; #指定网关
option domain-name-servers 3.7.191.1; #获取DNS
default-lease-time 60; #设置当前的IP地址有效期,单位s
max-lease-time 60; #设置申请最大有效期
}
systemctl start dhcpd
systemctl status dhcpd


