2016-12-21 94 views
13

AWS Certificate Manager(ACM)爲AWS用戶提供SSL/TLS證書。它是否也適用於Lightsail用戶?Lightsail的SSL/TLS證書?

如果沒有,有沒有關於在Lightsail服務器上設置SSL證書的說明或建議?

回答

1

如何使用SSL證書啓用HTTPS支持?

注意:下面的步驟假定您使用的是自定義域名 並且您已經配置了自定義域名指向 到您的雲服務器。

Bitnami圖像帶有SSL支持,已經預先配置並且有一個虛擬證書。儘管此僞證可用於測試和開發,但您通常需要使用有效的SSL證書進行生產使用。您可以自行生成(在此解釋),也可以從商業證書頒發機構購買。

獲得證書和證書密鑰文件後,您需要更新服務器以使用它們。按照以下步驟激活SSL支持:

使用下表來標識證書和配置文件的正確位置。

enter image description here 將您的SSL證書和證書密鑰文件複製到指定的位置。

注意:如果您的證書和密鑰文件, 使用不同的名字,你應該重新配置了SSLCertificateFile和相應的Apache 配置文件中 了SSLCertificateKeyFile指令,以反映正確的文件名。

如果您的證書頒發機構也向您提供了PEM編碼的證書頒發機構(CA)捆綁包,則必須將其複製到上一個表中的正確位置。然後,修改Apache配置文件以在SSLCertificateKeyFile指令下包含以下行。選擇正確的指令,根據您的情況和Apache的版本:

enter image description here

注意:如果您的CA證書捆綁使用不同的名稱,你 應重新配置SSLCertificateChainFile或SSLCACertificateFile 指令在相應的Apache配置文件反映 正確的文件名。

複製完所有的服務器證書文件,你可以讓他們讀root用戶只能使用以下命令:

sudo chown root:root /opt/bitnami/apache2/conf/server* 
sudo chmod 600 /opt/bitnami/apache2/conf/server* 

打開443端口的服務器防火牆。有關更多信息,請參閱常見問題。

重新啓動Apache服務器。

您現在應該可以使用HTTPS URL訪問您的應用程序。

如何創建SSL證書?

您可以使用OpenSSL二進制文件創建您自己的SSL證書。然後可以將證書請求發送給證書頒發機構(CA)以將其簽署到證書中,或者如果您擁有自己的證書頒發機構,則可以自己簽署證書請求,也可以使用自簽名證書(因爲您只是想要測試證書或者因爲您正在設置自己的CA)。

創建私有密鑰(如果您尚未創建它已經):

sudo openssl genrsa -out /opt/bitnami/apache2/conf/server.key 2048 

創建一個證書:

sudo openssl req -new -key /opt/bitnami/apache2/conf/server.key -out /opt/bitnami/apache2/conf/cert.csr 

重要信息:輸入服務器域名時,上面的命令爲「Common Name」詢問 。

發送cert.csr到證書頒發機構。當證書頒發機構完成支票(並可能收到您的付款)時,他們會將您的新證書交給您。

直到收到證書,創建一個臨時的自簽名證書:

sudo openssl x509 -in /opt/bitnami/apache2/conf/cert.csr -out /opt/bitnami/apache2/conf/server.crt -req -signkey /opt/bitnami/apache2/conf/server.key -days 365 

備份在一個安全的地方你的私鑰如下生成一個密碼保護的版本之後:

須藤的OpenSSL rsa -des3 -in /opt/bitnami/apache2/conf/server.key -out privkey.pem

請注意,如果您在Apache配置文件中使用此加密密鑰,則需要手動輸入密碼時間的Apache開始。從該文件重新生成無密碼保護的重點如下:

sudo openssl rsa -in privkey.pem -out /opt/bitnami/apache2/conf/server.key 

http://www.openssl.org查找有關證書的詳細信息。

答案從https://docs.bitnami.com/aws/apps/wordpress/#how-to-enable-https-support-with-ssl-certificates複製,以便在頁面過期或更改時可用。

+2

他們詢問關於Lightsail的ACM:我很想知道這種集成是否可行。 –

0

目前沒有使用Lightsail實例使用ACM證書的機制。

但是,也有no mechanism for using ACM certificates directly on EC2 instances。他們必須位於負載平衡器後面,因爲ACM不會爲您提供對證書私鑰的訪問。

您只能在ELB/ALB和CloudFront上使用ACM證書。

Lightsail實例元數據中可見的信息表明,ELB/ALB可能是未來的一個功能,這表明它可能在未來...但現在不是這樣。

當然,CloudFront可以與任意原始服務器一起使用 - EC2,Lightsail甚至根本不在AWS中的原始服務器。(我的客廳裏有一臺服務器,在CloudFront後面工作)。如果您不需要在CloudFront和Lightsail計算機之間進行加密 - 只需在瀏覽器和CloudFront之間進行加密,那麼您可以今天進行配置,並在CloudFront上使用ACM證書,並將Lightsail作爲原始服務器。唯一的問題是,您不會使用Lightsail的免費出站帶寬備份到互聯網 - 您將使用CloudFront出站互聯網帶寬,該帶寬沒有像Lightsail這樣的大型免費配額。

11

根據其他答案,您無法使用AWS Certificate Manager爲Amazon Lightsail實例或任何其他EC2實例創建和安裝證書。但是,您可以創建自己的SSL/TLS證書並手動安裝它們。 Liteail的Lightsail實例由Bitnami和Bitnami提供,詳細說明如何使用LetsEncrypt創建和安裝免費的SSL/TLS證書。

https://docs.bitnami.com/aws/how-to/generate-install-lets-encrypt-ssl/

我只是完成了這個過程成功。

自己測試。

https://lukejanicke.com

我還沒有得到它的工作的https:// WWW .lukejanicke.com呢。

+1

注意:請遵循Bitnami的說明。不要按照https://certbot.eff.org上的說明操作。這與Bitnami安裝Apache的方式有關。 – lukejanicke