Jus*_*s12 15 ssl amazon-web-services amazon-elastic-beanstalk
我有一场Java战争,我希望在AWS上使用弹性beanstalk.我有证书,但我无法弄清楚如何将它附加到我的单实例应用程序.
所有的howtos描述了如何将证书附加到弹性负载均衡器,但没有关于如何在没有负载均衡器(即单个实例)的情况下执行此操作的文档.
我不想使用负载均衡器,因为它需要额外的费用(在测试环境中不需要).
任何帮助将不胜感激.
stu*_*udy 15
Elastic Beanstalk单实例类型不支持通过Management Console或API提供SSL.您可以在AWS论坛中找到更多信息.
但您可以使用配置文件来自定义实例以启用SSL.请参阅以下示例.
.ebextensions在源包的顶级创建一个目录.SSLCertificateFile.crt,SSLCertificateKeyFile.key,SSLCertificateChainFile.crt和ssl.conf(apache2的SSL模块配置)成.ebextensions/your_app/.ebextensions/01ssl.config.01ssl.config在配置文件中键入以下内容
以配置ssl设置01ssl.config
packages:
yum:
mod_ssl: []
container_commands:
add-SSLCertificateFile-label:
command: cp .ebextensions/SSLCertificateFile.crt /home/ec2-user/SSLCertificateFile.crt
add-SSLCertificateKeyFile-label:
command: cp .ebextensions/SSLCertificateKeyFile.key /home/ec2-user/SSLCertificateKeyFile.key
add-SSLCertificateChainFile-label:
command: cp .ebextensions/SSLCertificateChainFile.crt /home/ec2-user/SSLCertificateChainFile.crt
replace-ssl-configuration-label:
command: cp .ebextensions/ssl.conf /etc/httpd/conf.d/ssl.conf
Run Code Online (Sandbox Code Playgroud)
ssl.conf示例
您的WAR结构应如下所示
web_app.war
|
|_.ebextensions
| |_ 01ssl.config
| |_ SSLCertificateFile.crt
| |_ SSLCertificateKeyFile.key
| |_ SSLCertificateChainFile.crt
| |_ ssl.conf
|
|_META-INF
|
|_WEB-INF
|_ classes
|_ lib
|_ web.xml
Run Code Online (Sandbox Code Playgroud)
此解决方案使用 LetsEncrypt 免费证书,并且不需要将您的证书存储在配置文件中。并且它很容易在不同的域中重用。
摘要:带有容器命令的配置文件,可自动下载 certbot、获取证书并将 nginx 指向证书。
| 归档时间: |
|
| 查看次数: |
10911 次 |
| 最近记录: |