首先说到Centos大家都已经非常熟悉了,所以我们也就不多介绍关于Centos具体发展了,我们首先知道在Centos7之前版本命令和ReadHat的命令完全一样的,可Centos从6.0版本升级到Centos7版本之后,命令及功能上有了很大的变化,最明显的差别就是从安装的操作界面及操作命令上已经有很大变化了,更不用说功能上的变化了,比如centos6.x版本的iptalbes到centos7的firewall的变化,当然,变化了很多,我也就不多说了,今天呢,主要给大家介绍一下再Centos7下Apache的安装配置及启用SSL的功能及证书申请介绍,在此环境中我们用的是windows系统上安装的CA服务器,具体步骤在博客中的其他文章中有介绍,今天的文章内容具体见下:
对于Centos7的安装过程我们就跳过了,在之前的文档中有介绍,我们安装后,通过xshell或者crt工具连接到centos7的相关操作控制台上:
修改计算机名:
Hostnamectl set-hostname apache.iternalsoft.com
禁止防火墙开机启动
Systemctl disable firewalld.service
临时关闭防火墙
Systemctl stop firewalld.service 启用防火墙开机启动
Systemctl enable firewalld.service #启用防火墙开机启动
关闭selinux Vim /etc/selinux/config Set enforce 1
定义好配置后,我们就可以开始安装apache了,首先通过以下命令查看系统是否已经安装了httpd的相关服务:
Rpm -qa |grep httpd
Yum install -y httpd
开始安装httpd服务及安装完成
Yum install -y net-tools
该命令为 netstat –anlpt插件,在centos7下不安装该功能是无法使用netstat的功能使用,如果要使用该命令需要安装该工具
Netstat -anlpt
发现没有80端口
Systemctl start httpd
启动apache服务
通过浏览器访问一下
默认的访问页面在该目录
/etc/httpd/conf.d/welcome.conf
文件
为了更好的显示,我们修改默认的index.html文件
Cd /var/www/html
该路径默认没有Index.html文件,所以我们要新建一个
Vim index.html 新建一个index.html文件及编辑显示内容
然后重启apache服务:
systemctl restart httpd
接下来我们要为apache启用ssl,首先我们需要为Apache安装mod_ssl模块提供TLS/SSL功能:
https是通过mod_ssl实现的,因此检查并安装mod_ssl:
[[email protected] ~]# ls /etc/httpd/modules/ | grep "mod_ssl" #默认没有安装mod_ssl
[[email protected] ~]# yum list all mod_ssl #查看mod_ssl的安装包信息
yum install -y mod_ssl #安装mod_ssl
安装完成
检查mod_ssl是安装结果
rpm -qc mod_ssl /etc/httpd/conf.d/ssl.conf #mod_ssl的配置文件存放位置
安装完ssl模块后,我就可以申请证书了
Cd /etc/pki/tls Openssl genrsa -out server.key 1024 Server.key 是私钥
用私钥serverkey 文件生成证书请求文件csr
Openssl req -new -key server.key -out server.csr Server.csr 是证书请求文件
ls查看
接下来我们通过server.csr去内部的CA上申请证书
我们通过申请证书来下一步完成证书的申请
证书申请完成
接下来我们需要把该证书拷贝到linux对应的目录进行修改
我们在cd /etc/httpd/conf/ 进入到httpd的安装目录下
然后mkdir ssl 创建证书目录
然后
cp /etc/pki/tls/certnew.cer server.key
拷贝到 /etc/httpd/conf/ssl/ 目录下
为了显示更好,我们***文件命名
cp certnew.cer web.pem
然后把certnew.cer删除即可。
接下来我们修改httpd的SSL配置
cd /etc/httpd/conf.d #进入HTTPD的SSL配置目录
ls查看
vim ssl.conf #编辑SSL配置文件
取消以下注释:
DocumentRoot "/var/www/html/" ServerName apache.iternalsoft.com:443
***文件及key文件的路径,根据自己的真实环境来定义
SSLCertficateFile /etc/httpd/conf/ssl/web.pem SSLCertficateKeyFile / etc/httpd/conf/ssl/server.key
我们配置完成后,我们通过ssl访问完成
接着我们说一下centos7下的module模块的存放路径,其实centos7和centos6之前的版本有很大差别,不管从命令上还是部分文件格式上都有差别,比如module_ssl在centos6之前都是在httpd.conf文件内,而对于centos7来说就在独立的目录下:cd /etc/httpd/conf.modules.d下了
cd /etc/httpd/conf.modules.d
我们通过
vim 00-ssl.conf
来编辑该模块;mod_ssl的模块信息
我们再看看
cd /etc/httpd/modules/
下的信息呢