二月
9
2008

在Ubuntu上安装的Apache2使用SSL

SSL是一个系统,它允许信息以加密的形式传输,通过互联网,广泛应用于电子商务,是锁的,我们看到在一些网站上的地址栏。

本教程展示如何配置服务器的Apache2,而有可能是不起作用的事情,这一切都取决于分配和使用的Linux版本。 本教程是使用Ubuntu 7.10。

开始,但我们安装了Apache安装它:


sudo的资质安装的apache2


以下模块将符合SSL和改写:


a2enmod SSL


a2enmod重写


生成证书:


的apache2-SSL证书


如果我们说命令不存在,我们会得到一个错误信息:


sudo的资质安装SSL证书


openssl的REQ $ @新X509天365节点出/ etc/apache2/apache.pem-keyout的/ etc/apache2/apache.pem


填写我们要求的领域。


修改文件/ etc/apache2/sites-enabled/ssl:


sudo的纳米/ etc/apache2/sites-enabled/ssl


我们添加了:


SSLEngine的论


SSLCertificateFile / etc/apache2/apache.pem


如果您创建一个文件夹来添加网站,将留在地方出现的/ var / www文件夹名称的所有行,所以如果我们创建一个文件夹叫websegura是这种形式:


/ var / www下面/ websegura


还可以修改的文件/ etc/apache2/sites-enabled/000-default的(或只是默认,版本而定):
sudo的纳米/ etc/apache2/sites-enabled/000-default


并添加:


下面NameVirtualHost *:80 - >
NameVirtualHost *:443

根据对DocumentRoot / var/www/->
RewriteEngine叙述上

RewriteLog / var/log/apache2/https_rewrite.log

RewriteLogLevel 1

RewriteCond%{SERVER_PORT} ^ $ 443

的RewriteRule ^ /(。*)HTTPS :/ /%{SERVER_NAME} / $ 1 [L,R]

在文件 - >结束

<VirtualHost *: 443>

对DocumentRoot / var / www下面

的ErrorLog / var/log/apache2/error.log

结合的CustomLog / var/log/apache2/access.log

SSLEngine的上

SSLCertificateFile / etc/apache2/apache.pem

</虚拟主机>




打开的文件/ etc/apache2/ports.conf的,发现有以下,但他补充说:


听80

听443


打开文件/ etc/apache2/apache2.conf,并在末尾添加:


的ServerName 127.0.0.1


最后重新启动Apache守护进程:


须藤/ etc/init.d/apache2力量重装



可能出现的问题可能出现在配置:

  • 确保您的网页文件作为雇主www-data用户,没有根,它查找/ var / www下面的ls-l,看看谁拥有的文件,改变它:须藤乔敦用户名文件名。
  • 检查的权限,特别是文件/ etc/apache2/apache.pem的,改变用chmod这个文件或任何其他的权限。 它的语法是chmod文件的数量。 例如::须藤CHMOD 755 / etc/apache2/apache.pem。
  • 如果你有安装OpenSSL软件包安装:sudo的资质安装OpenSSL
  • 每个重大变化后,重新启动Apache守护进程。





要查看SSL证书的浏览器http://localhost/写入操作,我们会自动重定向到HTTPS ...

SSL

19评论+添加评论

  • 很好的文章。 简洁明了。
    谢谢

  • 感谢您的意见,哈维尔。 很快发布Linux上的新教程。

  • 您好有一个关于本教程的问题,因为我有,如果配置为响应请求从名称https://www.apachessl.com 这个方向会在哪里。
    谢谢

  • 鲁本,我感觉到,你想你的服务器是可见从你的网络之外,这是DNS的问题。 看看这个页面,如果你能为:
    http://www.no-ip.com

  • 我感谢大家,这个工具可以实现很多目标,我新的Linux花费了我一个小地方的所有程序,但仍保持问题,错误鲁鲁高产笔记本:〜$须藤的/ etc / init.d/apache2力量重装
    [须藤]密码为鲁本:
    apache2的:语法错误上线297 / etc/apache2/apache2.conf:包括接受一个参数,配置文件的名称被列入
    失败...!
    我无法打开的apache2

  • 鲁本给你的错误在文件的末尾,没有看到像我可以告诉你的就是你检查文件的末尾并没有改变或删除任何你不应该,你复制我的apache2.conf文件的最后一行这是现在几乎没有接触到比较:

    #INCLUDE目录忽略编辑和dpkg的备份文件,
    #详情请参阅名替换。

    #包括报表的通用片段
    包括/ etc/apache2/conf.d的/

    #虚拟主机配置:
    包括/ etc/apache2/sites-enabled /

  • 招呼朋友按照您的教程,当我送阿帕奇reiciar红色的失败,因为我可以看到这个错误所有Q isntale你说,该研究所的结束和更改权限,但我仍然认为,相同的Q Q感谢本教程

  • 你好的朋友,按照你的教程一步,我的服务器上安装的Q SSL我与Ubuntu 8.04服务器,我所做的一切,因为你说和检查什么错误TMB Q可以有权限,我把你的一切激活模块等。 我得到的错误q是q apache的重新启动,当我在我失败roojo没有启动错误...... 现在是出在error.log错误林雷Q Q alamcenan,并告诉我有mod_rewrite的porblemas q。 TMB命令的apache2-SSL证书一样研究所和离开它在底部没有如下,但产生的PEM读在另一个论坛,Ubuntu的q命令是由以下几行取代。

    的openssl genrsa-DES3出server.key 1024
    #Openssl中RSA,在的server.key出server.pem
    Openssl中server.key出server.csr REQ新键#
    Openssl中X509-REQ#360天server.csr,server.key出server.crt signkey

    现在,这是我的错误q本人不希望把这些行,我想证明,更好地问哈弗q我做错了,看看,如果我能帮助或指导我我

    感谢的关注......

  • 你好,我要创建证书的两种形式的原则crisx不应该有问题。 我会很感激我会贴在这里的Apache日志,你可以用这个命令:
    猫/ var/log/apache2/error.log

  • 感谢答复好朋友再次reintale服务器。 我得到的error.log

    [周三3月18日十一点30分49秒2009] [公告] Apache/2.2.8(Ubuntu的)配置 - 恢复正常运营

    [周三03月18日11时31分56秒2009] [通知] SIGUSR1。 做优雅重启

    [周三3月18日11时31分56秒2009] [公告] Apache/2.2.8(Ubuntu的)mod_ssl/2.2.8 OpenSSL/0.9.8g配置 - 恢复正常运营

    [周三03月18日12点三十四分14秒2009] [通知] SIGUSR1。 做优雅重启

    [周三3月18日十二时34分15秒2009] [公告] Apache/2.2.8(Ubuntu的)mod_ssl/2.2.8 OpenSSL/0.9.8g配置 - 恢复正常运营

    [周三3月18日12时34分31秒2009] [错误] [客户端192.168.1.74]文件不存在:/ VAR / WWW /的favicon.ico

    [周三3月18日12点34分34秒2009] [错误] [客户端192.168.1.74]文件不存在:/ VAR / WWW /的favicon.ico

    [周三3月18日12时35分十四秒2009] [公告] Apache/2.2.8(Ubuntu的)mod_ssl/2.2.8 OpenSSL/0.9.8g配置 - 恢复正常运营

    [周三03月18日12点41分三十○秒2009] [通知] SIGUSR1。 做优雅重启

    [周三3月18日12点41分三十○秒2009] [公告] Apache/2.2.8(Ubuntu的)mod_ssl/2.2.8 OpenSSL/0.9.8g配置 - 恢复正常运营

    [周三03月18日十三时00分52秒2009] [通知] SIGUSR1。 做优雅重启

    [周三3月18日十三时零零分53秒2009] [警告] RSA服务器证书是一个CA证书(BasicConstraints:CA ==真)

    [周三3月18日十三时零零分53秒2009] [警告] RSA服务器证书的CommonName(CN)的'基督教'不匹配服务器名称?

    [周三3月18日十三时零零分53秒2009] [警告] RSA服务器证书是一个CA证书(BasicConstraints:CA ==真)

    [周三3月18日十三时零零分53秒2009] [警告] RSA服务器证书的CommonName(CN)的'基督教'不匹配服务器名称?

    [周三3月18日十三时零零分53秒2009] [错误]非法企图重新初始化SSL服务器(理论上不应该发生!)

    [周三3月18日13时02分15秒2009] [警告] RSA服务器证书是一个CA证书(BasicConstraints:CA ==真)

    [周三3月18日13时02分15秒2009] [警告] RSA服务器证书的CommonName(CN)的'基督教'不匹配服务器名称?

    [周三3月18日13时02分15秒2009] [警告] RSA服务器证书是一个CA证书(BasicConstraints:CA ==真)

    [周三3月18日13时02分15秒2009] [警告] RSA服务器证书的CommonName(CN)的'基督教'不匹配服务器名称?

    [周三3月18日13时02分15秒2009] [错误]非法企图重新初始化SSL服务器(理论上不应该发生!)

  • [周三3月18日13时02分15秒2009] [警告] RSA服务器证书的CommonName(CN)的'基督教'不匹配服务器名称?

    不起作用的原因,是因为它相匹配的ServerName名称certificado.Comprueba,我看到你给的名称相同,在这种情况下,所有的配置部分:cristian.En原则否重大失误,不会让你正常启动。 看看我提到的,并告诉我。

  • OK非常感谢你证明了这一点。 :)

  • 你好等。 从墨西哥的问候。

    我有一个问题,启动Apache服务,我得到这个:

    mmorales @ 7426GX :/ etc/apache2 $须藤/ etc/init.d/apache2力量重装
    apache2的:281 / etc/apache2/apache2.conf行语法错误:语法错误上线53 / etc/apache2/sites-enabled/000-default:/ etc/apache2/sites-enabled/000-default:59没有关闭\ n/etc/apache2/sites-enabled/000-default:53:没有关闭。
    失败...!

    和我做您提供什么在后。 只有我有一个疑问,本节将您的文章:

    “在NameVirtualHost *:80 - >
    NameVirtualHost *:443
    根据对DocumentRoot / var/www/->
    RewriteEngine叙述上“

    下面不应该超过文件中
    000默认不出现什么样NameVirtualHost *:80

    感谢您的帮助,我会感谢你了,如果我的回答。

  • 迈克尔·你好,首先,所有采取的回答很抱歉。 错误说这似乎是语法错误。 如果你把我在这里,我们看到的代码可以。

  • 你好真诚,发生了什么事我以前的评论说米格尔·莫拉莱斯,但在49行,你打你看到的代码。

    / / / / /这是什么抛出/ / / / / / /

    apache2的:281 / etc/apache2/apache2.conf行语法错误:语法错误上线49 / etc/apache2/sites-enabled/000-default:/ etc/apache2/sites-enabled/000-default:55没有关闭\ n/etc/apache2/sites-enabled/000-default:49:没有关闭。
    失败...!

    / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /

    ############000默认情况下将代码###############

    NameVirtualHost *:443
    的ServerAdmin站长@本地

    对DocumentRoot / var / www下面/
    RewriteEngine叙述上
    RewriteLog / var/log/apache2/https_rewrite.log
    RewriteLogLevel 1
    RewriteCond%{SERVER_PORT} ^ $ 443
    的RewriteRule ^ /(。*) https://的% {SERVER_NAME} / $ 1 [L,R]

    选项​​FollowSymLinks
    设置AllowOverride没有

    选项​​索引FollowSymLinks MultiViews
    设置AllowOverride没有
    命令允许,拒绝
    允许从所有

    ScriptAlias​​指令/ cgi-bin目录/的/ usr / lib目录/ cgi-bin目录/

    设置AllowOverride没有
    选项​​+ ExecCGI-MultiViews + SymLinksIfOwnerMatch
    命令允许,拒绝
    允许从所有

    的ErrorLog / var/log/apache2/error.log

    #可能的值包括:调试,信息,通知,警告,错误,暴击,
    #提醒,新兴。
    LogLevel的警告

    结合的CustomLog / var/log/apache2/access.log

    别名/ DOC /“/ usr /共享/ DOC /”

    MultiViews选项索引FollowSymLinks
    设置AllowOverride没有
    责令否认,允许
    拒绝所有
    127.0.0.0/255.0.0.0允许从:: 1/128

    对DocumentRoot / var / www下面
    的ErrorLog / var/log/apache2/error.log
    结合的CustomLog / var/log/apache2/access.log
    SSLEngine的上
    SSLCertificateFile / etc/apache2/apache.pem

    ################################################## #######

  • 您好合资企业。 嗯,我觉得那是因为你需要把<VirtualHost *: 443>和</虚拟主机>。 请注意我有它成立的,如果不打我错误。 打了招呼。

  • 很好的朋友,即使我信你如何跟随,没有工作,在这一天,我不能发现错误,q会你给我一只手?

    ●此为显示我的日志,当你运行sudo纳米/ var/log/apache2/error.log的的:

    周三8月19日9点25分52秒2009] [公告] GR能力的要求,做启动
    [周三8月19日9点25分52秒2009] [警告]模块deflate_module已经加载,跳绳
    [08月19日9点25分52秒2009] [警告] RSA服务器证书是一个CA证书(BasicConstraints:CA ==真)
    周三8月19日9点25分52秒2009] [警告] RSA服务器证书的CommonName(CN)的“耶稣费雷尔不匹配服务器名称!
    [08月19日9点25分52秒2009] [错误]非法企图重新初始化服务器的SSL(理论上不应该发生!)

    强制通过执行重新启动的错误,但不告诉我:须藤/ etc/init.d/apache2重新启动,我muesta如下:

    周三8月19日10时58分09秒2009] [警告]模块是已经载入deflate_module,跳绳
    周三8月19日10时58分09秒2009] [警告]模块是已经载入deflate_module,跳绳
    (98)已在使用中的地址:make_sock:无法绑定到0.0.0.0:443解决
    没有监听套接字,关停
    无法打开日志

    真的希望提前,以帮助我的问候和感谢。

  • 音乐您好,我认为错误可能是在这里:
    周三8月19日9点25分52秒2009] [警告] RSA服务器证书的CommonName(CN)的“耶稣费雷尔不匹配服务器名称!

    告诉您的服务器的名称不匹配。 确保所有文件,你给它的名称相同。

发表评论

Facebook的

分类

标签

翻译

Spanish flagItalian flagChinese (Simplified) flagPortuguese flagEnglish flagGerman flagFrench flagJapanese flagArabic flag
Russian flagGreek flagDutch flagCzech flagDanish flagFinnish flagPolish flagRomanian flagSwedish flag
Norwegian flagLithuanian flagSerbian flagSlovak flagSlovenian flagEstonian flagTurkish flagHungarian flagIcelandic flag