电脑技术学习

采用mod_ssl让Apache更加安全

dn001

业界加密 TCP/IP 网络产品的标准是 SSL ,对于 Internet 上普遍使用的超文本传输协议(HTTP)而言,其加密后的协议称为 HTTPS,缺省采用 443 端口。
HTTPS 数据是加密以后传输的,因此能有效保护在网络上传输的个人隐私信息。
第一步:下载所需的软件并解开到 /usr/local/src 目录
Apache 1.3.24
Mod_ssl 2.8.8-1.3.24
Openssl-0.9.6c
每个 mod_ssl 的版本和特定的 Apache 版本有关,因此要下载相对应的 mod_ssl 版本。
第二步:编译和安装
安装 OpenSSL 到 /usr/local/ssl:

# pwd

/usr/local/src/openssl-0.9.6c

# ./config

# make

# make test

# make install

安装 mod_ssl,编译进 Apache 的源码树:
# pwd

/usr/local/src/mod_ssl-2.8.8-1.3.24

# ./configure --with-apache=/usr/local/src/apache_1.3.24 

--with-ssl=/usr/local/ssl

以 DSO 方式编译 Apache:
# pwd

/usr/local/src/apache_1.3.24

# ./configure --prefix=/usr/local/apache --enable-rule=SHARED_CORE 

--enable-module=ssl --enable-shared=ssl

# make

创建 SSL 证书
在生产环境中,证书需要从商业的认证权威机构或者从内部的 CA 得到。
执行下面的步骤生成假证书:
# pwd

/usr/local/src/apache_1.3.24

# make certificate TYPE=custom

生成证书时会提示两遍下面的信息:<> 内为示范数据。
第一遍
Country Name (2-letters)

State or Province Name

Locality Name

Organization Name

Organizational Unit Name

Common Name

Email Address

Certificate Validity <365>

第一遍会产生一个假的,用于测试的 CA。"Common Name" 可以为任意文本。
第二遍
Country Name (2-letters)

State or Province Name

Locality Name

Organization Name

Organizational Unit Name

Common Name

Email Address

Certificate Validity <365>

第二遍产生的是实际可用的证书,能被商业机构或者内部 CA 认证, "Common Name" 为 Web 服务器的主机名。
安装并运行 Apache
# pwd

/usr/local/src/apache_1.3.24

# make install

启动 Apache ,并测试
# pwd

/usr/local/apache/bin

# ./apachectl stop

# ./apachectl startssl

在浏览器上检查 http://yourdomain.comhttps://yourdomain.com

标签: