Linux openssh openssl
筆記日期20180524
目錄
openssh
配置ssh基於密鑰的方式認證
服務器端配置文件
ssh服務的最佳實踐
OpenSSL
三個組件
PKI: Public Key Infrastructure
建立私有CA
證書申請及簽署步驟
創建私有CA詳細步驟
openssh
配置ssh基於密鑰的方式認證
1.生成密鑰對
ssh-keygen -P '' -f .ssh/own_rsakey
2.將公鑰復制至將要遠程連接的服務器特定目錄裏
使用上述命令會生成兩個文件一個私鑰一個公鑰,cat .ssh/own_rsakey.pub是公鑰文件
將裏邊的內容復制
遠程連接要使用密鑰認證的服務器打開其要遠程的用戶家目錄下~/.ssh/
vim authorized_keys
然後將密鑰粘貼至此處
更改該文件的權限為600如果不改可能無法實現基於密鑰誰
scp命令可以將遠程的服務器裏的文件復制至本機,也可以將本機的文件復制至服務器
scp user@host:/path/file /path/somewhere 遠程文件至本地
scp /path/somewhere user@host:/path/ 本地文件至遠程
服務器端配置文件
/etc/ssh/sshd_config
HostKey
Port 22
ListenAddress 0.0.0.0
Protocol 2
PermitRootLogin yes
ssh服務的最佳實踐
1、不要使用默認端口
2、禁止使用protocal version1
3、限制可登錄用戶
4、設定空閑會話超時時長
5、利用防火墻設置ssh訪問的策略
6、僅監聽特定的IP地址
7、基於口令認證時,使用強密碼策略
# tr -dc A-Za-z0-9_ < /dev/urandom | head -c 30 | xargs
8、使用基於密鑰認證
9、禁止使用空密碼
10、禁止root用戶直接登錄
11、限制ssh的訪問頻度和並發在線數
12、做好日誌,經常分析
OpenSSL
三個組件
openssl 多用途的命令行工具
libcrypto 加密解密庫
libssl ssl協議的實現
PKI: Public Key Infrastructure
CA Certificate Authority
RA Registration Authority
CRL Certificate Revocationg List
證書的存取庫
建立私有CA
OpenCA
Openssl
證書申請及簽署步驟
1、生成申請請求
2、註冊機構RA核驗
3、CA簽署
4、獲取證書
創建私有CA
openssl的配置文件 /etc/pki/tls/openssl.conf
1. 創建openssl配置文件裏所需要的文件
touch /etc/pki/CA/index.txt
echo 01 > /etc/pki/CA/serial
echo 01 > /etc/pki/CA/crlnumber
2. CA自簽證書
生成私鑰
(umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)
生成證書
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 7300 \
-out /etc/pki/CA/cacert.pem
-new 生成新證書簽署請求
-x509 專用於CA生成自簽證書
-key 生成請求時用到的私鑰文件
-days 證書的有效期限
-out /PATH/TO/SOMECERTIFILE 證書
3. 發證
a 用到證書的主機生成證書請求
(umask 077; openssl genrsa -out /etc/httpd/ssl/httpd.key 2048)
openssl req -new -key /etc/httpd/ssl/httpd/ssl/httpd.key -days 365 \
-out /etc/httpd/ssl/httpd.csr
b 把請求文件傳輸給CA
c CA簽署證書,並將證書還給請求者
openssl ca in /tmp/httpd.csr -out /etc/pki/CA/certs/httpd.crt -days 365
查看證書中的信息
openssl x509 -in /PATH/FROM/cert_file -noout -text|-subject|-serial
4. 吊銷證書
a 客戶端獲取要吊銷證書的serial
openssl x509 -in /PATH/FROM/CERT_FILE -noout -serial -subject
b CA
先根據客戶提交的serial與subject信息,對比檢驗是否與index.txt文件中的信息一致
吊銷證書
openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem
c 生成吊銷證書的編號(第一次吊銷一個證書時使用)
echo 01 > /etc/pki/CA/crlnumber
d 更新證書吊銷列表(名字和路徑自己指定)
openssl ca -gencrl -out /etc/pki/CA/crl/mysky.crl
查看crl文件
openssl crl -in /etc/pki/CA/crl/mysky.crl -noout -text
Linux openssh openssl