最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

設(shè)置CA證書(shū)來(lái)強(qiáng)化PostgreSQL的安全性的教程

 更新時(shí)間:2015年04月21日 11:06:45   投稿:goldensun  
這篇文章主要介紹了設(shè)置CA證書(shū)來(lái)強(qiáng)化PostgreSQL的安全性的教程,主要用到了CA私鑰,需要的朋友可以參考下

在經(jīng)歷了多次的摸索實(shí)驗(yàn)后我終于成功地實(shí)現(xiàn)了SSL證書(shū)認(rèn)證的功能,因此我想這次我要把這些步驟記錄下來(lái)供日后查閱。

出于安全和方便的原因,我要在一臺(tái)單獨(dú)的專(zhuān)用機(jī)器上簽署客戶(hù)的證書(shū),這臺(tái)機(jī)器也稱(chēng)為 證書(shū)授證中心(CA)。

這讓我們?cè)谑跈?quán)新的客戶(hù)端時(shí)不必先登錄到PostgreSQL服務(wù)器然后再簽署證書(shū)或者修改pg_hba.conf。

我們要?jiǎng)?chuàng)建一個(gè)特殊的數(shù)據(jù)庫(kù)組,叫sslcertusers。這個(gè)組里的所有用戶(hù)都可以通過(guò)由CA簽署的證書(shū)進(jìn)行連接。

在下面的例子中,請(qǐng)將"trustly"替換成你的公司名或組織名。所有的命令都是基于Ubuntu Linux 12.04 LTS。
 
設(shè)置CA
CA應(yīng)該是一臺(tái)離線(xiàn)的處于高度安全環(huán)境中的計(jì)算機(jī)。

生成CA私鑰
 

sudo openssl genrsa -des3 -out /etc/ssl/private/trustly-ca.key 2048
sudo chown root:ssl-cert /etc/ssl/private/trustly-ca.key
sudo chmod 640 /etc/ssl/private/trustly-ca.key

生成CA證書(shū)
 

sudo openssl req -new -x509 -days 3650 \
-subj '/C=SE/ST=Stockholm/L=Stockholm/O=Trustly/CN=trustly' \
-key /etc/ssl/private/trustly-ca.key \
-out /usr/local/share/ca-certificates/trustly-ca.crt
sudo update-ca-certificates

配置PostgreSQL服務(wù)器
生成PostgreSQL服務(wù)器私鑰
 

# Remove default snakeoil certs
sudo rm /var/lib/postgresql/9.1/main/server.key
sudo rm /var/lib/postgresql/9.1/main/server.crt
# Enter a passphrase
sudo -u postgres openssl genrsa -des3 -out /var/lib/postgresql/9.1/main/server.key 2048
# Remove the passphrase
sudo -u postgres openssl rsa -in /var/lib/postgresql/9.1/main/server.key -out /var/lib/postgresql/9.1/main/server.key
sudo -u postgres chmod 400 /var/lib/postgresql/9.1/main/server.key

生成PostgreSQL服務(wù)器證書(shū)簽署請(qǐng)求(CSR)

 

sudo -u postgres openssl req -new -nodes -key /var/lib/postgresql/9.1/main/server.key -days 3650 -out /tmp/server.csr -subj '/C=SE/ST=Stockholm/L=Stockholm/O=Trustly/CN=postgres'

用CA私鑰簽署PostgreSQL服務(wù)器證書(shū)請(qǐng)求
 

sudo openssl req -x509 \
-key /etc/ssl/private/trustly-ca.key \
-in /tmp/server.csr \
-out /var/lib/postgresql/9.1/main/server.crt
sudo chown postgres:postgres /var/lib/postgresql/9.1/main/server.crt

創(chuàng)建根(root)證書(shū)=PostgreSQL服務(wù)器證書(shū)+CA證書(shū)
 

sudo -u postgres sh -c 'cat /var/lib/postgresql/9.1/main/server.crt /etc/ssl/certs/trustly-ca.pem > /var/lib/postgresql/9.1/main/root.crt'
sudo cp /var/lib/postgresql/9.1/main/root.crt /usr/local/share/ca-certificates/trustly-postgresql.crt
sudo update-ca-certificates

授權(quán)訪(fǎng)問(wèn)
 

CREATE GROUP sslcertusers;
ALTER GROUP sslcertusers ADD USER joel;
 
# /etc/postgresql/9.1/main/pg_hba.conf:
hostssl nameofdatabase +sslcertusers 192.168.1.0/24 cert clientcert=1

重啟PostgreSQL
 

sudo service postgresql restart

PostgreSQL客戶(hù)端設(shè)置
從PostgreSQL服務(wù)器上復(fù)制根證書(shū)
 

mkdir ~/.postgresql
cp /etc/ssl/certs/trustly-postgresql.pem ~/.postgresql/root.crt

生成PostgreSQL客戶(hù)端私鑰
 

openssl genrsa -des3 -out ~/.postgresql/postgresql.key 1024
 
# If this is a server, remove the passphrase:
openssl rsa -in ~/.postgresql/postgresql.key -out ~/.postgresql/postgresql.key

生成PostgreSQL客戶(hù)端證書(shū)簽署請(qǐng)求并簽署
 

# Replace "joel" with username:
openssl req -new -key ~/.postgresql/postgresql.key -out ~/.postgresql/postgresql.csr -subj '/C=SE/ST=Stockholm/L=Stockholm/O=Trustly/CN=joel'
sudo openssl x509 -req -in ~/.postgresql/postgresql.csr -CA /etc/ssl/certs/trustly-ca.pem -CAkey /etc/ssl/private/trustly-ca.key -out ~/.postgresql/postgresql.crt -CAcreateserial
sudo chown joel:joel -R ~/.postgresql
sudo chmod 400 -R ~/.postgresql/postgresql.key

相關(guān)文章

最新評(píng)論

融水| 资源县| 菏泽市| 福州市| 萝北县| 墨竹工卡县| 黔西| 乳山市| 资兴市| 陇南市| 肇州县| 广水市| 潞西市| 旅游| 张家口市| 洪泽县| 额尔古纳市| 四川省| 通江县| 高清| 丹棱县| 蒲江县| 上杭县| 闽侯县| 怀宁县| 墨江| 临高县| 永州市| 常州市| 开江县| 东方市| 安国市| 甘洛县| 临海市| 吉木萨尔县| 万荣县| 巩义市| 互助| 抚州市| 察哈| 武宣县|