在CentOS上,如何設定SSL給HTTPS,或其他應用。

採用OPENSSL指令來設定SSL,以下的動作需要root/su的權限才行。

參考網址:
http://wiki.centos.org/HowTos/Https
http://www.sslshopper.com/article-most-common-openssl-commands.html

 

1. 首先下載OpenSSL, openssl官網:http://www.openssl.org/

 yum install mod_ssl openssl

2. 產生ㄧ個self-signed certificate

 # 產生私有鑰匙 private key 
openssl genrsa -out ca.key 1024 

# 產生 CSR 
openssl req -new -key ca.key -out ca.csr

# 產生 Self Signed Key
openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt

# 將上述的檔案復制到正確的目錄
cp ca.crt /etc/pki/tls/certs
cp ca.key /etc/pki/tls/private/ca.key
cp ca.csr /etc/pki/tls/private/ca.csr

3. 修改/etc/httpd/conf.d/ssl.conf

....
SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key   
...

4. 重新啓動httpd

service httpd restart

5. 設定虛擬主機(Virtual Hosting)

<VirtualHost *:443>
        SSLEngine on
        SSLCertificateFile /etc/pki/tls/certs/ca.crt
        SSLCertificateKeyFile /etc/pki/tls/private/ca.key
        <Directory /var/www/vhosts/yoursite.com/httpsdocs>
        AllowOverride All
        </Directory>
        DocumentRoot /var/www/vhosts/yoursite.com/httpsdocs
        ServerName yoursite.com
</VirtualHost>

6. 重新啓動httpd

service httpd restart

7. 設定防火牆

iptables -A INPUT -p tcp --dport 443 -j ACCEPT
/sbin/service iptables save
iptables -L -v

8 其他openssl主要指令集:
These commands allow you to generate CSRs, Certificates, Private Keys and do other miscellaneous tasks.
Generate a new private key and Certificate Signing Request

openssl req -out CSR.csr -new -newkey rsa:2048 -nodes -keyout privateKey.key

Generate a self-signed certificate (see How to Create and Install an Apache Self Signed Certificate for more info)

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout privateKey.key -out certificate.crt

Generate a certificate signing request (CSR) for an existing private key

openssl req -out CSR.csr -key privateKey.key -new

Generate a certificate signing request based on an existing certificate

openssl x509 -x509toreq -in certificate.crt -out CSR.csr -signkey privateKey.key

Remove a passphrase from a private key

openssl rsa -in privateKey.pem -out newPrivateKey.pem

Checking Using OpenSSL
If you need to check the information within a Certificate, CSR or Private Key, use these commands. You can also check CSRs and check certificates using our online tools.

Check a Certificate Signing Request (CSR)

openssl req -text -noout -verify -in CSR.csr

Check a private key

openssl rsa -in privateKey.key -check

Check a certificate

openssl x509 -in certificate.crt -text -noout

Check a PKCS#12 file (.pfx or .p12)

openssl pkcs12 -info -in keyStore.p12

Debugging Using OpenSSL

If you are receiving an error that the private doesn’t match the certificate or that a certificate that you installed to a site is not trusted, try one of these commands. If you are trying to verify that an SSL certificate is installed correctly, be sure to check out the SSL Checker.

Check an MD5 hash of the public key to ensure that it matches with what is in a CSR or private key

openssl x509 -noout -modulus -in certificate.crt | openssl md5
openssl rsa -noout -modulus -in privateKey.key | openssl md5
openssl req -noout -modulus -in CSR.csr | openssl md5

Check an SSL connection. All the certificates (including Intermediates) should be displayed

openssl s_client -connect www.paypal.com:443

Converting Using OpenSSL

These commands allow you to convert certificates and keys to different formats to make them compatible with specific types of servers or software. For example, you can convert a normal PEM file that would work with Apache to a PFX (PKCS#12) file and use it with Tomcat or IIS. Use our SSL Converter to convert certificates without messing with OpenSSL.

Convert a DER file (.crt .cer .der) to PEM

openssl x509 -inform der -in certificate.cer -out certificate.pem

Convert a PEM file to DER

openssl x509 -outform der -in certificate.pem -out certificate.der

Convert a PKCS#12 file (.pfx .p12) containing a private key and certificates to PEM

openssl pkcs12 -in keyStore.pfx -out keyStore.pem -nodes

You can add -nocerts to only output the private key or add -nokeys to only output the certificates.

Convert a PEM certificate file and a private key to PKCS#12 (.pfx .p12)

openssl pkcs12 -export -out certificate.pfx -inkey privateKey.key -in certificate.crt -certfile CACert.crt

周瑜為什麼不快樂?值得一看

60616_499335773424157_2135668535_n

在三國裡面,周瑜算是能夠觀照全局的聰明人物了。

可是不曉得為什麼,這種聰明一碰到諸葛亮就統統失效了。

諸葛亮到底比周瑜多出來了什麼?
諸葛亮比周瑜多出來的,是人生一種更高層次的聰明。
真正要形容,應該叫做智慧。

智慧不是機智,不是知識,更不是對外在環境全面性的觀點。
智慧所呈現的,是一種生命的態度。

他讓人往內在去看到自己內在的心靈,看到別人內在的心靈。
這幾乎是諸葛亮和周瑜最大的差別了。

諸葛亮看得到別人,也看得到自己,但周瑜卻只看得到別人,看不到自己。

這是為什麼我們一天到晚看到周瑜面對諸葛亮時老是在抓狂,老是被諸葛亮操縱,這是他不自知的部份。
聰明的周瑜 遇到了諸葛亮為什麼竟顯得如此愚蠢?

這是因為他少了一種內在的觀照,無法在面對事情的時候看到自己的內在。

周瑜向來是個表演者,他一切的努力,都是要從別人身上獲得掌聲。
對於必須靠這麼多掌聲與讚美才能滿足的人。

周瑜自己沒有看出這點,當然很容易就落入了諸葛亮的操控之中。

既生瑜,何生亮?
周瑜的人生算是十分美滿的,不僅長得帥,懂音樂又會打仗,還娶到絕世美女小喬。
以他的條件應該過著幸福快樂的人生才對,可是為什麼他會被諸葛亮整得那麼痛苦,老是大嘆:『既生瑜,何生亮』?

也許周瑜的人生是一種完美的比賽。

很多人的人生都是這樣,然而這很可能也就是痛苦的開始。
人往往習慣先去注意優點,而忽略了缺點。

假如你懂得從整體去觀照人生,也許就不會只注意優點而疏忽了缺點。

若從周瑜真要跟諸葛亮比較,諸葛亮老婆那麼醜,家裡又窮,也不懂音樂,薪水又領那麼少,還和劉備簽那種鞠躬盡瘁,死而後已的約,這樣的人生實在沒什麼好羨慕的。

偏偏周瑜要鑽牛角尖,固執地要往自己不如別人的缺點裡面鑽,讓它來妨礙自己的幸福、一輩子痛苦。

人的優點是否就代表了他生命的成就或者幸福,這其實是很難說的。
優點就像水一樣,是可以載舟,也能覆舟的。

美國有個學術研究,把學生分兩班,一班是很漂亮的女生,另外一班是很醜的女生,十幾年後統計這些人的成就,漂亮的女生畢業後多半當秘書或情婦,只有少數幾個有傲人的成就,反觀醜的女生多半當了主管,事業非常成功,婚姻幸福美滿的也占了多數。

為什麼優點,反而造成了人生限制呢?
可見集很多優點不見得都是好事,端視你怎麼對待那個優點才是關鍵所在。
反過來看,缺點也未必都是不好的,端看怎麼去面對自己的缺點。
所以人生的優缺點與人生的幸福狀態不是成正比的,我們需要更多的智慧去處理那些優缺點。

在三國裡面就充滿這樣的智慧,大家如果多聽《歡樂三國志》,多想想,也許能夠讓自己活得更快樂、更幸福。

人的一生有甚麼好比的:
十歲看智力,二十看學歷。三十看能力, 四十看經歷。
五十看財力,六十看體力。七十看病歷,八十看黃曆。