apache2.2+openssl0.9总结

简介:
apache2.2+openssl0.9总结

系统版本:CentOS release 5.5 (Final)
软件: httpd-2.2.22.tar.gz ,openssl-0.9.8e.tar.gz
 
1.首先用ssh上传到centos虚拟机器中
[root@cacti ~]# tar -zxvf httpd-2.2.22.tar.gz 
[root@cacti ~]# tar -zxvf openssl-0.9.8e.tar.gz 
2.首先安装openssl
[root@cacti openssl-0.9.8e]# ./config --prefix=/usr/local/ssl //配置路径为/usr/local/ssl目录下
[root@cacti openssl-0.9.8e]# make&&make install//安装openssl
 
3.安装apache2.2
[root@cacti httpd-2.2.22]#./configure --prefix=/usr/local/apache --enable-so --enable-ssl --with-ssl=/usr/local/ssl //如果需要加别的参数也是可以的可以用./configure --help查看其它参数。
[root@cacti httpd-2.2.22]#make&&make install//安装apache
 
4.[root@cacti ~]# cd /usr/local/apache/conf/
 [root@cacti ~]#vi httpd.conf
# Secure (SSL/TLS) connections
Include conf/extra/httpd-ssl.conf//把这个井号去掉,默认路径也可以修改
 
5.[root@cacti extra]# cd extra进入extra目录找到httpd.ssl.conf
 [root@cacti extra]# cp httpd.ssl.conf httpd.ssl.conf.backup//备份一份
[root@cacti extra]# cat httpd.ssl.conf|grep -v "#" >httpd.ssl.conf//把井号去掉便于查找。
[root@cacti extra]# vi httpd.ssl.conf//打开httpd.ssl.conf文件。
DocumentRoot "/usr/local/apache/htdocs"
ServerName  www.example.com:443
ServerAdmin  you@example.com
ErrorLog "/usr/local/apache/logs/error_log"
TransferLog "/usr/local/apache/logs/access_log"
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5

SSLCertificateFile "/usr/local/apache/conf/server.cert"//这里可以修改默认路径和后缀名。
SSLCertificateKeyFile "/usr/local/apache/conf/server.key"
 
6.[root@cacti conf]#cd /usr/local/apache/conf//进入conf路径生成密匙
[root@cacti conf]#openssl genrsa -des3 -out server.key 1024//生成服务器私钥:运行openssl命令,生成1024、2048位长的私钥server.key文件。如果您需要对 server.key 添加保护密码,请使用 -des3 扩展命令。Windows环境下不支持加密格式私钥,Linux环境下使用加密格式私钥时,每次重启Apache都需要您输入该私钥密码(例:openssl genrsa -des3 -out server.key 2048)。
Generating RSA private key, 1024 bit long modulus
....................++++++
.................................++++++
e is 65537 (0x10001)
Enter pass phrase for server.key://输入密码
Verifying - Enter pass phrase for server.key:
[root@cacti conf]#openssl req -new -key server.key -out server.crt//生成服务器证书请求,并按要求填些相关证书信息:
Enter pass phrase for server.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:cn //您所在国家的ISO标准代号,中国为CN  
State or Province Name (full name) [Berkshire]:zj浙江//您单位所在地省/自治区/直辖市  
Locality Name (eg, city) [Newbury]:  //您单位所在地的市/县/区  hz杭州
Organization Name (eg, company) [My Company Ltd]:hz公司名字hz
Organizational Unit Name (eg, section) []: //部门名称  hz组织单位名称
Common Name (eg, your name or your server's hostname) []:通用名,例如: www.xxx.com。此项必须与您访问提供SSL服务的服务器时所应用的域名完全匹配。   
zhh主机名
Email Address []:enjoygoodboy@163.com邮箱地址//您的邮件地址,不必后缀可以输入,直接回车跳过 
Please enter the following 'extra' attributes //以下信息不必输入,回车跳过直到命令执行完毕。
to be sent with your certificate request
A challenge password []:
An optional company name []:
 
签名:
[root@cacti conf]# openssl x509 -req -days 700 -in server.crt -signkey server.key -out server.cert
Signature ok
subject=/C=cn/ST=zj/L=hz/O=hz/OU=hz/CN=zhh/emailAddress=enjoygoodboy@163.com
Getting Private key
Enter pass phrase for server.key:
[root@cacti conf]# ls //可以备份证书
extra       keybackup  mime.types  server.cert  server.key
httpd.conf  magic      original    server.crt
为了安装把以上生成3个文件chmod 400模式。
 
7.启动apache服务输入密码
[root@cacti ~]# /usr/local/apache/bin/apachectl start
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Apache/2.2.22 mod_ssl/2.2.22 (Pass Phrase Dialog)
Some of your private key files are encrypted for security reasons.
In order to read them you have to provide the pass phrases.
Server  www.example.com:443 (RSA)
Enter pass phrase:
OK: Pass Phrase Dialog successful.
You have mail in /var/spool/mail/root
 
 
8.测试

 
3.    备份私钥并提交证书请求   
请将证书请求文件certreq.csr提交给天威诚信,并备份保存证书私钥文件server.key,等待证书的签发。服务器证书密钥对必须配对使用,私钥文件丢失将导致证书不可用。 
   
 安装服务器证书
1.    获取服务器证书中级CA证书   
为保障服务器证书在客户端的兼容性,服务器证书需要安装两张中级CA证书(不同品牌证书,可能只有一张中级证书)。   
从邮件中获取中级CA证书:   
将证书签发邮件中的从BEGIN到 END结束的两张中级CA证书内容(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”)粘贴到同一个记事本等文本编辑器中,中间用回车换行分隔。修改文件扩展名,保存为intermediatebundle.crt文件(如果只有一张中级证书,则只需要保存并安装一张中级证书)。   
 
2.    获取EV服务器证书   
将证书签发邮件中的从BEGIN到 END结束的服务器证书内容(包括“-----BEGIN CERTIFICATE-----”和“-----END CERTIFICATE-----”) 粘贴到记事本等文本编辑器中,保存为server.crt文件
 服务器证书的备份及恢复 
在您成功的安装和配置了服务器证书之后,请务必依据下面的操作流程,备份好您的服务器证书,以防证书丢失给您带来不便。
1.    服务器证书的备份   
备份服务器证书私钥文件server.key,服务器证书文件server.crt,以及服务器证书中级CA证书文件intermediatebundle.crt即可完成服务器证书的备份操作。 
   
2.    服务器证书的恢复   
请参照服务器证书配置部分,将服务器证书密钥文件恢复到您的服务器上,并修改配置文件,恢复服务器证书的应用。
 

本文转自zh888 51CTO博客,原文链接:http://blog.51cto.com/zh888/812877,如需转载请自行联系原作者

 
相关文章
|
17天前
|
人工智能 JSON 数据可视化
【教案生成平台】实战教程三:打造智能 PPT 生成器 (AI + PptxGenJS)
一款基于 Vue 3 + Vite 的智能教学工具,利用 AI 自动生成结构化 PPT 数据,结合可视化编辑与本地持久化,实现高效备课。支持 JSON 模板解析、动态渲染导出(pptxgenjs)与草稿自动保存,大幅提升教师工作效率。在线体验:ytecn.com/teacher
197 16
|
人工智能 算法 数据挖掘
StoryTeller:字节、上海交大、北大共同推出的全自动长视频描述生成一致系统
StoryTeller是由字节跳动、上海交通大学和北京大学共同推出的全自动长视频描述生成系统。该系统通过音频视觉角色识别技术,结合低级视觉概念和高级剧情信息,生成详细且连贯的视频描述。StoryTeller在MovieQA任务中展现出比现有模型更高的准确率,适用于电影制作、视频内容分析、辅助视障人士等多个应用场景。
692 0
StoryTeller:字节、上海交大、北大共同推出的全自动长视频描述生成一致系统
|
存储 前端开发 rax
x64汇编语言与逆向工程基础指南(二)
x64汇编语言与逆向工程基础指南(二)
674 1
|
UED
Midjourney-02 收集Prompt 咕卡手账 零件套装展示 可爱猫猫 线稿生成 2077猫猫 niji 5 niji 6 对比 详细记录 超多图片 多种风格 附带文本 关键词
Midjourney-02 收集Prompt 咕卡手账 零件套装展示 可爱猫猫 线稿生成 2077猫猫 niji 5 niji 6 对比 详细记录 超多图片 多种风格 附带文本 关键词
253 0
|
数据采集 数据安全/隐私保护
​ CDGA|电子行业数据治理六大痛点及突围之道
电子行业在数据治理方面面临着诸多痛点。为了突围而出,企业需要针对这些痛点制定有效的解决方案和措施,包括统一数据标准、打破数据孤岛、保障数据安全、制定合理策略、培养及建立高效团队以及引进先进技术等方面。通过这些努力,企业可以不断提升数据治理的能力和水平,为业务发展提供有力支撑。
|
Linux Windows Python
最新 Windows\Linux 后台运行程序注解
本文介绍了在Windows和Linux系统后台运行程序的方法,包括Linux系统中使用nohup命令和ps命令查看进程,以及Windows系统中通过编写bat文件和使用PowerShell启动隐藏窗口的程序,确保即使退出命令行界面程序也继续在后台运行。
|
存储 缓存 前端开发
从零开发微前端框架实践(基于t y p)
本文我们首先实现一个可进行子应用注册和资源加载的微前端框架,实现在一个vue3主应用中加载3个不同技术栈(vue2、react15、react16)的子应用,并且页面上渲染出各个子应用的内容;然后,我们对该微前端框架实现扩展,实现运行环境隔离(沙箱)css样式隔离应用间通讯(含父子通信、子应用间通信)全局状态管理(全局store的简单使用)利用应用缓存和预加载子应用提高加载性能一、前置准备再开发我
从零开发微前端框架实践(基于t y p)
|
大数据
使用代理http时出现503服务不可用的原因是什么?
在使用IP代理时,有时候会遇到503服务不可用的错误提示,这个错误通常是由于代理服务器无法连接到目标服务器而导致的。
使用代理http时出现503服务不可用的原因是什么?
|
XML SQL JavaScript
SpringBoot+MyBatis和MyBatisPlus+vue+ElementUl实现批量删除
批量删除也就是同时删除多条数据,首先要把所需要的数据选中, 批量删除它与删除的功能是一样的,只是它们删除的条数不同而已。当然批量删除的逻辑和知识点多,会比删除复杂一点。批量删除需要一个变量来接收返回值,然后获取选中行数据,再把选中行数据中的id获取到并把所有获取到的id进行拼接。确定用户选中了要删除的数据。判断返回来的值的长度,长度大于0说明用户已经选中要删除的数据,否则就提醒用户选择需要删除的数据, 删除成功后刷新表格,提醒用户已删除成功
SpringBoot+MyBatis和MyBatisPlus+vue+ElementUl实现批量删除
|
C语言 Perl
西门子S7-1200的MODBUS通信装载指令、主站设置指令、从站设置指令各参数的含义是什么?
本篇我们来介绍西门子S7-1200的MODBUS通信装载指令、主站设置指令、从站设置指令各参数的含义是什么。
西门子S7-1200的MODBUS通信装载指令、主站设置指令、从站设置指令各参数的含义是什么?