CA、HTTPS介绍
OpenSSL加密工具
1.基本
[root@centos8 ~]
OpenSSL 1.1.1g FIPS 21 Apr 2020
openssl enc -e -des3 -a -salt -in testfile -out testfile.cipher
openssl enc -d -des3 -a -salt -in testfile.cipher -out testfile
openssl genrsa -out shi.key -des3 或 (umask 077; openssl genrsa -out shi.key -des3 1024)
openssl rsa -in shi.key -pubout -out shi.key.pub
openssl rsa -in shi.key -out shi.key
2. 使用openssl颁发证书
openssl的配置文件
[ ca ]
default_ca = CA_default
[ CA_default ]
dir = /etc/pki/CA
certs = $dir/certs
crl_dir = $dir/crl
database = $dir/index.txt
new_certs_dir = $dir/newcerts
certificate = $dir/cacert.pem
serial = $dir/serial
crlnumber = $dir/crlnumber
crl = $dir/crl.pem
private_key = $dir/private/cakey.pem
x509_extensions = usr_cert
policy = policy_match
[ policy_match ]
countryName = match
stateOrProvinceName = match
organizationName = match
[ policy_anything ]
countryName = optional
stateOrProvinceName = optional
localityName = optional
organizationName = optional
organizationalUnitName = optional
commonName = supplied
emailAddress = optional
一:创建私有CA
mkdir -p /etc/pki/CA/{certs,crl,newcerts,private} 或者从CentOS7复制:scp -r /etc/pki/CA 10.0.0.180:/etc/pki
touch /etc/pki/CA/index.txt
echo 01 > /etc/pki/CA/serial
cd /etc/pki/CA/
(umask 066;openssl genrsa -out private/cakey.pem -des3 4096)
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem
Enter pass phrase for /etc/pki/CA/private/cakey.pem:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leaveca some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]: CN
State or Province Name (full name) []:beijing
Locality Name (eg, city) [Default City]:beijing
Organization Name (eg, company) [Default Company Ltd]:shi
Organizational Unit Name (eg, section) []:it
Common Name (eg, your name or your servers hostname) []:ca.shichong.org
Email Address []:admin@shichong.org
sz cacert.pem
或者
openssl x509 -in /etc/pki/CA/cacert.pem -noout -text
二:用户申请证书
mkdir /data/app;cd /data/app
(umask 066; openssl genrsa -out test.key 2048)
openssl req -new -key test.key -out test.csr
cd /etc/pki/CA/certs
openssl ca -in /data/app/test.csr -out test.crt -days 100
sz test.crt
3. 吊销证书须知
echo 01 > /etc/pki/CA/crlnumber
cat /etc/pki/CA/index.txt
openssl ca -revoke /etc/pki/CA/newcerts/编号.pem
openssl ca -gencrl -out /etc/pki/CA/crl.pem
openssl ca -status 编号
SSH
ssh
----------------------------------------------------------------------------------------
[root@centos7 ~]
The authenticity of host "'"127.0.0.1 (127.0.0.1)"'" can"'"t be established.
ECDSA key fingerprint is SHA256:5DMlxr1AhP+JR6OY6VfIq2UxwI9eprA9u33FYyiAFJw.
ECDSA key fingerprint is MD5:ab:1e:fc:3b:ba:b7:67:35:c3:4a:30:46:8c:c6:9d:f6.
Are you sure you want to continue connecting (yes/no)?
[root@centos8 .ssh]
The authenticity of host "'"10.0.0.170 (10.0.0.170)"'" can"'"t be established.
ECDSA key fingerprint is SHA256:5DMlxr1AhP+JR6OY6VfIq2UxwI9eprA9u33FYyiAFJw.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
----------------------------------------------------------------------------
[root@centos8 ~]
10.0.0.170 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNlYAPOIst1tx7Fi6eXPIBJ2HR8MMPaQGhRkEjW4aqioO3YSZLTvZy2dyIvc5B4LcV0/ntVJgBUbBe4xIqBFVIc=
----------------------------------------------------------------------------
openssh
实现基于密钥的登录方式
openssh
交互式:
[root@centos8 ~]
[root@centos8 ~]
.ssh/
├── id_rsa
└── id_rsa.pub
非交互式:
[root@centos8 ~]
[root@centos8 ~]
.ssh/
├── id_rsa
└── id_rsa.pub
[root@centos8 ~]
[root@centos7 ~]
.ssh/
└── authorized_keys
[root@centos7 ~]
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCq/LzjwCiU1f29R6XJlcbLPyIf7EoB4APrJs7HhHosgMSIL2UrjijNGCvmao7kR4IWe72IQb3GttIsOeedFNJLaoP7kszrZ41azeyocnH9IkfRDyxbzBjRbodXQaBeVmYHxjLyA8NDaRKsVgzvj3Iu85UijWF1QtQhkjLpoI1tl7FENydUKUbScfl1XMv2oCfg9uZHSwp9ZhtnJ7+YRCGvNSP+UHf0GequwWE8T7ThMDYw4uPKECS4J9f0+HCDRztJ9XaaqLMq8MHgAky7zWgbtJ3hp6lFkHzqjlLSduzO49YkwABIq63spRg/tV6qpB11nncri9CUWpqF8Ai3Gfsv3FTWMfovQ60HJB48jjcxRgfncqORK/nMlhyxwluy51+Yw9tNmDcZollMKVrSczc1mhSxWx/NI/dFPWG7SWdzydGfbhzkgJD52Ai/yfOJhCuJa1NmvnRn5HK0pfxMm6QUoRq5fT6NGG+KTQptUvbtMHQ9zC0LBWU1M1TxaromqW0= root@centos8.shichong.org
[root@centos8 ~]
Last login: Sun Aug 1 10:29:28 2021 from 10.0.0.180
[root@centos7 ~]
----------------------------------------------------------------------------
自动登录ssh工具sshpass
yum -y -install sshpass
sshpass -p password
sshpass -f filename
sshpass -e
sshpass -p shichong ssh-copy-id -o StrictHostKeyChecking=no -i /root/.ssh/id_rsa.pub 10.0.0.170
实例:批量部署多台主机基于key验证脚本
#!/bin/bash
HOSTS="
10.0.0.6
10.0.0.7
10.0.0.18
10.0.0.28
"
PASS=magedu
ssh-keygen -P "" -f /root/.ssh/id_rsa &> /dev/null
rpm -q sshpass &> /dev/null || yum -y install sshpass &> /dev/null
for i in $HOSTS;do
{
sshpass -p $PASS ssh-copy-id -o StrictHostKeyChecking=no -i /root/.ssh/id_rsa.pub $i &> /dev/null
}&
done
wait
补充
补充:
ssh -o StrictHostKeyChecking=no 10.0.0.170
例:基于key 认证登录,员工离职修改root是不够的,得去vim /root/.ssh/authorized_keys 把员工公钥删掉
rsync 命令
rsync -av /etc 10.0.0.170:/tmp
rsync -av /etc/ 10.0.0.170:/tmp
last
lastb
ll -h /var/log/btmp
lastb |wc -l