admin 管理员组文章数量: 1184232
2024年3月22日发(作者:desirable是什么意思中文)
Linux Apache 的 HTTPS 配置
我以前在 Windows 上配置过 Apache 的 SSL/HTTPS 双向认证,即对 Web 服务
器与浏览器同时进行认证,而建立的 HTTPS 安全连接。最近,我在 Linux 下也
配置了下 Apache 的 HTTPS,并将配置过程和遇到的问题记录了一下。
配置环境
Web 服务器系统:VMware Workstation 6.0.2,Debian Linux 5.0.2,
kernel=2.6.26-2-686
Web 服务器:Apache 2.2.9-10
Web 浏览器系统:Windows XP Professional
Web 浏览器:Firefox 3.0.11
Linux Apache 的基本配置
现在 Linux 下较新的 Apache 配置,要比 Windows 下的配置方便、灵活的多。
比如,我的 Debian 5 下的 Apache2 包安装后,就将 Apache 的配置文件放在:
/etc/apache2 目录下,并按照 Linux 下经典的:xxx-available,xxx-enabled,
xxx.d 目录来组织配置文件,看到这里有没有想到 Emacs 的配置文件组织方式
呢?(*^_^*)。玩 Linux 的人看到这里,大多都能猜地出 Linux Apache 是怎么
组织的。下面简单列举一下 Apache 配置文件的组织结构:
:Apache 的入口配置文件,包含其它配置文件的主控文件
conf.d/:包含一些零碎的配置,一般不和具体的 mod 相关,是全局性质
的,比如:字符集 charset、安全选项 security。
:设置 Apache 的监听端口,默认时,HTTP 为 80,HTTPS 为
443。
envvars:导出一些环境变量,比如:
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
export APACHE_PID_FILE=/var/run/
:额外的用户设置的配置,默认里面内容为空。Windows 下的
Apache 喜欢用这个名字作为主控配置文件,但在 Linux 下,作用不大。
mods-available/:包含 Apache 中所有可用 mod 的加载和设置配置,加
载配置一般用 表示,设置配置一般用 表示,比如:
mod_ssl 的加载配置为:,设置配置为:
mods-enabled/:实际启动的 mod 的加载和设置配置,是到
mods-available/ 中配置文件的符号链接。
sites-available/:Web 站点的配置,可以是全局的,或虚拟主机作用域
的。默认有两个附带的配置文件:default、default-ssl,其中 default
为一般的 HTTP 服务的虚拟主机配置,而 default-ssl 就是 HTTPS 服务
的虚拟主机配置。这两个配置文件可以直接使用,配置内容只需做适当的
调整即可。
sites-enabled/:实际启动的 Web 站点配置,是到 sites-available/ 中
配置文件的符号链接。默认时,只有一个 000-default 链接指向
sites-available/default,说明默认的 Apache 配置,只启动 HTTP 服
务,而不启动 HTTPS 服务。
另外,列举一下配置 HTTPS 时,Apache 的相关文件路径:
Apache 日志文件:在:/var/log/apache2 目录中保存。错误日志为:
,HTTP 访问日志为:,HTTPS 访问日志为:
ssl_。
Apache 的启动:可以使用 Apache 在:/etc/init.d/ 中安装的 Run
Level 脚本:apache2,来启动/停止 Apache 服务。和大多数 Run Level
脚本一样,使用参数 start 启动服务,使用参数 stop 停止服务,如下:
# /etc/init.d/apache2 start
Starting web server: apache2apache2: Could not reliably determine
the server's fully qualified domain name, using 192.168.2.108 for
ServerName
# /etc/init.d/apache2 stop
Stopping web server: apache2apache2: Could not reliably determine
the server's fully qualified domain name, using 192.168.2.108 for
ServerName
... waiting .
Web 文件目录:使用 sites-available 中,配置文件 default 和
default-ssl 的 DocumentRoot 选项,默认指定的 Web 文件目录:
/var/www/。
/var/www 目录下默认只有一个 Web 文件:,我就用它作为
HTTPS 配置的测试页面,并更改了下它的内容:
Hello World! --zy
证书、密钥和测试场景
有 2 台主机系统:
一个 Linux 安装 Apache 服务器,主机名:zy-13
另一个为 Windows,使用 Firefox 作为浏览器,主机名:zy-1。使用
Firefox 作为浏览器,是因为 HTTPS 基于的 SSL 最早是由 Netscape 提
出的,并且 Netscape 一直在发展 SSL 技术(参考:Mozilla SSL/TLS),
而 Mozilla 是 Netscape 的开源社区,所以我想 Mozilla 的 Firefox
应该比其它浏览器对 SSL 支持地更完善(其实这是借口,我只是喜欢用
Firefox 而已)。
有3套证书,用openssl工具生成,作用如下:
版权声明:本文标题:Linux Apache 的 HTTPS 配置 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1711086346a587709.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论