openssl
SSL 採用 X.509, 由上而下的金字塔憑證制度 ( Root CA -> CA -> Certificate )
建立RootCA的私鑰(Private Key) rootca.key
# mkdir -p /usr/local/etc/ssl要求輸入private key的密碼(repeat)
# /usr/local/etc/ssl
# cd /usr/local/etc/ssl
# openssl genrsa -des3 -out rootca.key 2048
Generating RSA private key, 2048 bit long modulus
..............................................................+++
.........+++
e is 65537 (0x10001)
Enter pass phrase for rootca.key:
產生RootCA憑證申請書 rootca.csr
# openssl req -new -key rootca.key -out rootca.req然後輸入RootCA的私鑰(private key)密碼
然後填資料
* 注意申請書的密碼跟憑證代辦公司的名稱按enter直接跳過
以root CA的身分簽發憑證
需要注意的是最高認證中心不可以太早過期, 因為如果最高認證中心的憑證過期的話, 其簽發的憑證也會失效,所以我們這邊設定成20年# openssl x509 -req -days 7305 -sha1 -extfile /etc/ssl/openssl.cnf -extensions v3_ca -signkey rootca.key -in rootca.req -out rootca.crt
然後顯示一些資訊後 輸入rootca的私鑰密碼
ldap:
產生ldap server的private key(ldap.cs.nctu.edu.tw.key)
* 如果你為ldap server的私鑰加密碼的話, 每次啟動Server都要再輸入密碼
# openssl genrsa -out ldap.cs.nctu.edu.tw.key 2048Generating RSA private key, 2048 bit long modulus
............................................................................+++
.............................................................................................+++
e is 65537 (0x10001)
產生ldap server的憑證申請書(ldap.cs.nctu.edu.tw.csr)
# openssl req -new -key ldap.cs.nctu.edu.tw.key -out ldap.cs.nctu.edu.tw.csr* 輸入資料, 這邊很重要的是Common Name必須設定成 ldap server的FQDN相同, 不同的話會不能用
* 注意申請書的密碼跟憑證代辦公司的名稱按enter直接跳過
最高認證中心(RootCA,自己)發給ldap server憑證(ldap.cs.nctu.edu.tw.crt)
# openssl x509 -req -days 3650 -sha1 -extfile /etc/ssl/openssl.cnf -extensions v3_req -CA rootca.crt - CAkey rootca.key -CAserial rootca.srl -CAcreateserial -in ldap.cs.nctu.edu.tw.csr -out ldap.cs.nctu.edu.tw.crt
然後顯示一些資訊,再輸入rootca的私鑰密碼。
完成
這樣就完成最高憑證中心與伺服器的認證了,大概看一下檔名與檔案身份的對應rootca.key (最高憑證中心的私鑰)
rootca.csq (最高憑證中心的憑證申請書)
rootca.crt (最高憑證中心的憑證)
ldap.cs.nctu.edu.tw.key
ldap.cs.nctu.edu.tw.csq
ldap.cs.nctu.edu.tw.crt
沒有留言:
張貼留言