最近在研究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 完毕!!
整个配置过程是参照http://blog.csdn.net/cangzhubai/article/details/5214749而来的。非常感谢作者提供了珍贵的资料,希望我分享后更多的人能学习到。
分享到:
相关推荐
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两种系统下的配置方法。有详细过程。
Apache Server的Httpd配置文件SSL443 配置https 修改域名直接可用(附带Odoo8069转443)
在进行apache编译时,需要先使用本地编译配置并编译apache,然后使用export CC=mips-linux-uclibc-gcc设置环境变量,重新编译apache包,并使用先前编译的gen_test_char和gen_uri_delims两个文件来替换交叉编译中的钙...
IBM HTTP Server 6.1的SSL配置方法
最后换了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服务器 第四章 第三节 三个重要的邮件系统相关协议 第五章...
c.将服务器证书公钥配置到该路径下(在 conf 目录下创建 ssl 目录,将 for Apache 里面的SSLCertificateFile conf/ss
本文实例讲述了Linux环境下Apache开启https服务的方法。分享给大家供大家参考,具体如下: 首先申请SSL证书,以阿里云为例,找到域名管理: 免费开启SSL证书: 配置单域名免费证书:(有效期一年) 点击确定,...
对于Linux下进行服务器的配置,JSP的服务配置
Metastate可应用所有apache配置 根据os_family配置apache 在SuSE上配置apache标志 从Struts部署SSL证书 启用和禁用Apache模块的Metastate。 在Debian mpm_prefork , mpm_worker或mpm_event上配置apache mpm模块...
第三章 第四节 Linux下Apache、php3、MySQL的整合 第三章 第五节 为Apache增加SSL安全保护 第四章 邮件服务器--第一节 Sendmail服务器 第四章 第二节 Qmail服务器 第四章 第三节 三个重要的邮件系统相关协议 第五章...
Centos/Fedora下安装: #32位 wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.rpm #64位 wget ...
阿里云 Apache 配置教程 阿里云免费(白嫖)SSL 下载 SSL 证书 登录服务器,安装 SSL 模块 yum install mod_ssl -y 在服务器建 cert 目录,将刚才下载的证书放到这里__推荐使用 FileZilla mkdir /etc/httpd/cert/...