Rails 3.0 SSl适用于Ubuntu Natty的乘客

时间:2011-08-31 00:55:24

标签: ruby-on-rails ssl ubuntu passenger

我想知道如何为Ubuntu Natty上的乘客设置ssl for a Rails 3.0。

我有2.x的rails书,它解释了,就应用程序而言,我需要安装插件ssl_requirement。然后在我的控制器中使用ssl_required来处理我想要加密的特定操作。 rails 3.0还是一样吗?

有没有人知道如何设置乘客使用ssl。从我所看到的是我的vhost配置。

感谢任何帮助。

谢谢,

布赖恩

1 个答案:

答案 0 :(得分:1)

好的,这是交易。我通过godaddy购买了我的ssl证书。这是我遵循的步骤。我希望这有助于某人,因为这是一种痛苦。

  1. 拉起ssh
  2. 运行openssl req -new -newkey rsa:2048 -nodes -keyout mykey.pem -out myreq.pem
  3. 使用sftp mykey.pem和myreq.pem从您运行上一个命令的目录下载
  4. 转到godaddy并输入myreq的内容
  5. 下载证书
  6. 将您的证书放在/ ect / ssl / certs
  7. 将您的私钥mykey.pem放入/ ect / ssl / private
  8. 在/ etc / apache2 / sites-available / somesite中配置您的vhost,例如:

    <VirtualHost *:80>
       ServerName  somesite.com
       ServerAlias www.somesite.com
       DocumentRoot /root/public_html/somesite/public
    </VirtualHost>
    
    <VirtualHost somesite.com:443>
       DocumentRoot /root/public_html/somesite/public
       ServerName somesite.com
       ServerAlias www.somesite.com
       SSLEngine on
       SSLCertificateFile /etc/ssl/certs/somesite.com.crt
       SSLCertificateKeyFile /etc/ssl/private/mykey.pem
       SSLCertificateChainFile /etc/ssl/certs/gd_bundle.crt
    </VirtualHost>
    
  9. 启用ssh:a2enmod ssl
  10. 重启服务器:sudo /etc/init.d/apache2 restart
  11. 现在,如果我没有错过任何东西(凌晨3点)你应该可以拉起你的网站并输入https
  12. 转到:https://github.com/tobmatth/rack-ssl-enforcer
  13. 按照那里的步骤进行操作(我进行了设置,因此我的整个应用程序都是https,因为我无法将其用于个人操作)
  14. 我希望这会有所帮助。当我醒来时,我会再次看到这一点,以确保我没有错过任何东西。