最近在研究linux下的apache-ssl配置,写点个人小心得,新人发博,敬请见谅。
软件环境
Apache Httpd 2.2.15 (http://httpd.apache.org )
OpenSSL 0.9.8r (http://www.openssl.org/source )
SSL-Tools (http://www.openssl.org/contrib/ssl.ca-0.1.tar.gz )
1. OpenSSL
#tar zxvf openssl-0.9.8r.tar.gz
#cd openssl-0.9.8r
#./config
#make
#make install
此举将安装最新的OpenSSL到/usr/local/ssl目录中,无需理会系统中已有版本的OpenSSL,也不要去卸载它,否则会导致很多的应用程序无法正常执行,例如X窗口无法进入等错误。
2. Apache Httpd
#tar zxvf httpd-2.2.15.tar.gz
#cd httpd-2.2.15
#./configure --prefix=/usr/local/apache/httpd --enable-ssl=static --with-ssl=/usr/local/ssl
#make
#make install
此步骤在/apache/httpd目录中安装httpd服务(通过参数--prefix指定),同时使用--with-ssl指定刚才所安装OpenSSL的路径,用于将mod_ssl静态的编译到httpd服务中。
3.制作证书
我们必须手工来生成SSL用到的证书,对证书不熟悉的人,有一个工具可以使用:http://www.openssl.org/contrib/ssl.ca-0.1.tar.gz 。下面是如何通过这个工具来生成证书的过程:
#cp ssl.ca-0.1.tar.gz /usr/local/apache/httpd/conf
#cd /usr/local/apache/conf
#tar zxvf ssl.ca-0.1.tar.gz
#cd ssl.ca-0.1
#./new-root-ca.sh (生成根证书)
No Root CA key round. Generating one
Generating RSA private key, 1024 bit long modulus
...........................++++++
....++++++
e is 65537 (0x10001)
Enter pass phrase for ca.key: (输入一个密码)
Verifying - Enter pass phrase for ca.key: (再输入一次密码)
......
Self-sign the root CA... (签署根证书)
Enter pass phrase for ca.key: (输入刚刚设置的密码)
........
........ (下面开始签署)
Country Name (2 letter code) [MY]:CN
State or Province Name (full name) [Perak]:GanSu//随你喜欢
Locality Name (eg, city) [Sitiawan]:LanZhou//随你喜欢
Organization Name (eg, company) [My Directory Sdn Bhd]:lzu//随你喜欢
Organizational Unit Name (eg, section) [Certification Services Division]:lzu//随你喜欢
Common Name (eg, MD Root CA) []:dslab//随你喜欢
Email Address []:sunyanmeng@gmail.com//随你喜欢
这样就生成了ca.key和ca.crt两个文件,下面还要为我们的服务器生成一个证书:
# ./new-server-cert.sh server (这个证书的名字是server)
......
......
Country Name (2 letter code) [MY]:CN
State or Province Name (full name) [Perak]:GanSu
Locality Name (eg, city) [Sitiawan]: LanZhou
Organization Name (eg, company) [My Directory Sdn Bhd]:lzu
Organizational Unit Name (eg, section) [Secure Web Server]:lzu
Common Name (eg, www.domain.com) []:localhost
Email Address []:sunyanmeng@gmail.com
这样就生成了server.csr和server.key这两个文件。
还需要签署一下才能使用的:
# ./sign-server-cert.sh server
CA signing: server.csr -> server.crt:
Using configuration from ca.config
Enter pass phrase for ./ca.key: (输入上面设置的根证书密码)
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName:PRINTABLE:'CN'
stateOrProvinceName:PRINTABLE:'GanSu'
localityName:PRINTABLE:'LanZhou'
organizationName:PRINTABLE:'lzu'
organizationalUnitName:PRINTABLE:'lzu'
commonName:PRINTABLE:'localhost'
emailAddress :IA5STRING:'sunyanmeng@gmail.com'
Certificate is to be certified until Jan 19 21:59:46 2011 GMT (365 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
CA verifying: server.crt <-> CA cert
server.crt: OK
下面要按照ssl.conf里面的设置,将证书放在适当的位置。
# chmod 400 server.key
# cd ..
# mkdir ssl.key
# mv ssl.ca-0.1/server.key ssl.key
# mkdir ssl.crt
# mv ssl.ca-0.1/server.crt ssl.crt
然后就可以启动啦!
# cd /usr/local/apache
注意,apache2.2之后不支持startssl,所以只用start即可
# ./bin/apachectl start
4. 测试HTTP服务
使用浏览器打开地址:https://127.0.0.1 完毕!!
分享到:
相关推荐
linux操作系统 Apache 服务器 配置
在Centos7.6平台下使用openssl给apache做自签名证书,并给apache设置HTTPS的SSL证书。(无坑版) 二、平台 [root@kahn.xiao ~]# uname -r 3.10.0-957.el7.x86_64 [root@kahn.xiao ~]# cat /etc/redhat-release ...
ubuntu linux中配置svn+apache+ssl
linux环境中设置APACHE支持SSL,使用OPENSSL生成安全密钥。前段时间客户要求增加项目安全性,通过实践与网络学习,总结文档与大家分享。
NULL 博文链接:https://szlxh002.iteye.com/blog/2276474
事实上,目前只有Window在OS级别提供了对async io的支持,也即IOCP,在Linux还是要通过select、poll、epoll等来实现这个机制。 所以一般来说,不需要使用NIO2。当然,也可能有些场景就适合使用NIO2,不过目前来说很...
分别讲解windows和linux两种系统下的配置方法。有详细过程。
Linux 下 Apache 服务器的搭建 Linux 操作系统是目前最流行的操作系统之一,Apache 是其中最流行的 Web 服务器软件之一。本文详细介绍了在 RedHat 9.0 操作系统中利用 Apache 软件搭建 Web 服务器的方法,包括 ...
Apache Server的Httpd配置文件SSL443 配置https 修改域名直接可用(附带Odoo8069转443)
Linux 下 Apache 安装文档 本文档将指导用户在 Linux 平台下安装 Apache 服务器,涵盖从解压缩到启动 Apache 服务器的所有步骤。 一、解压缩 在安装 Apache 之前,需要将 Apache 的源代码解压缩到指定目录。使用 ...
IHS的SSL配置方法 IHS(IBM HTTP Server)是一种基于Apache的Web服务器软件,用于提供安全的Web服务。为了确保数据传输的安全性,IHS支持SSL(Secure Sockets Layer)加密协议。本文将介绍IHS的SSL配置方法,包括...
在进行apache编译时,需要先使用本地编译配置并编译apache,然后使用export CC=mips-linux-uclibc-gcc设置环境变量,重新编译apache包,并使用先前编译的gen_test_char和gen_uri_delims两个文件来替换交叉编译中的钙...
在 Linux 下安装 Apache 需要使用 yum 或 apt-get 等包管理工具。使用 yum 安装 Apache 的命令为: `yum install httpd` 安装完成后,需要启动 Apache 服务,可以使用以下命令: `systemctl start httpd` 安装 ...
使用编译方式在 Linux 上安装与配置 Mysql、Apache 和 PHP Linux 作为一种操作系统,具有完全免费、完全兼容 POSIX 1.0 标准、多用户、多任务、丰富的网络功能、可靠的安全、稳定性能、支持多种硬件平台等优点,日...
本文档详细介绍了在 Linux 操作系统下安装 Apache 服务器的步骤,包括解压缩、搜寻设定内容、编译与安装、修改配置文件、启动 Apache 服务器等步骤。同时,本文档还对 Apache 服务器的目录结构进行了详细的解释,...
Linux 下用 Apache 搭建 Web 服务器扫描 Apache 服务器是世界上最流行的 Web 服务器软件之一,它源于 NCSAhttpd 服务器经过多次修改,成为世界上最流行的 Web 服务器软件之一。 Apache 取自“ a patchy server” 的...
最后换了Tomcat8.5.54的才配置成功。下面就是我配置的过程,记录一下,与大家共勉。 1.首先公司的泛域名,运维给了ssl证书的文件包: 2.我们选取Tomcat的ssl证书,有jks文件和key的文件。 3.我下载了Tomcat8.5....
在apache2服务器上配置SSL证书-Ubuntu 18.04 本教程是为已经拥有证书并需要在服务器上插入证书并将其配置为可在Apache2服务器上工作的人员制作的。 如果您没有证书,并且想生成免费的自签名证书,建议您遵循...
第三章 第四节 Linux下Apache、php3、MySQL的整合 第三章 第五节 为Apache增加SSL安全保护 第四章 邮件服务器--第一节 Sendmail服务器 第四章 第二节 Qmail服务器 第四章 第三节 三个重要的邮件系统相关协议 第五章...
Apache 服务器的配置文件是 `httpd.conf`,它位于 `/etc/apache2` 目录下。该文件控制 Apache 服务器的行为,例如监听端口、文档根目录、错误日志等。 四、虚拟主机 虚拟主机是 Apache 服务器的一种功能,可以让您...