1. 程式人生 > >Linux openssh openssl

Linux openssh openssl

Linux openssh openss

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