apache加密访问

前言:在apache服务器里,当我们进入的地方需要输入密码或者需要安全性比较高的时候,我们会发现页面自动跳转到https://加密访问,我们在联系搭建服务器过程不需要网上注册之类,但是需要清楚怎样自动跳转https页面,和怎样制作加密证书。

[root@localhost ~]# yum install -y mod_ssl ##安装可生成证书的软件
[root@localhost ~]# systemctl reload httpd  ##重新加载注:此时便可以生成默认证书文件

访问之前搭建的服务器:172.25.254.120
这里写图片描述
这里我们看到的是默认证书文件,我们想要自己新生成证书时,需要安装软件 crypto-utils.x86_64
自定义签名证书
[root@localhost ~]# yum install -y crypto-utils.x86_64
genkey 证书名称 ##生成证书
这里写图片描述
这里写图片描述
这里写图片描述
此处选择no 因为我们是在练习搭建服务器,不需要考虑发送给认证

[root@localhost ~]# genkey www.zpy.com
/usr/bin/keyutil -c makecert -g 1024 -s “CN=www.zpy.com, OU=linux, O=zpy, L=xi’an, ST=Shaanxi, C=CN” -v 1 -a -z /etc/pki/tls/.rand.2911 -o /etc/pki/tls/certs/www.zpy.com.crt -k /etc/pki/tls/private/www.zpy.com.key
cmdstr: makecert

cmd_CreateNewCert
command: makecert
keysize = 1024 bits
subject = CN=www.zpy.com, OU=linux, O=zpy, L=xi’an, ST=Shaanxi, C=CN
valid for 1 months
random seed from /etc/pki/tls/.rand.2911
output will be written to /etc/pki/tls/certs/www.zpy.com.crt ##证书文件
output key written to /etc/pki/tls/private/www.zpy.com.key ##证书钥匙

Generating key. This may take a few moments…

Made a key
Opened tmprequest for writing
/usr/bin/keyutil Copying the cert pointer
Created a certificate
Wrote 882 bytes of encoded data to /etc/pki/tls/private/www.zpy.com.key
Wrote the key to:
/etc/pki/tls/private/www.zpy.com.key

[root@localhost ~]# vim /etc/httpd/conf.d/ssl.conf #在此文件中添加证书和钥匙
SSLCertificateFile /etc/pki/tls/certs/www.zpy.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/www.zpy.com.key

[root@localhost ~]# systemctl restart httpd ##重启服务

测试:访问https://172.25.254.120 查看证书
这里写图片描述
怎样自动跳转到https://页面呢:
注注注:关于http端口,80端口为正常端口,一般访问都走80端口,443端口为加密传输端口,

[root@localhost ~]# vim /etc/httpd/conf.d/default.conf

<Virtualhost _default_:80>
        DocumentRoot "/var/www/html"
        CustomLog "logs/default.log" combined
</Virtualhost>
<Virtualhost *:80>
        ServerName www.zpy.com
        RewriteEngine on
        RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
</Virtualhost>
[root@localhost ~]# systemctl restart httpd

访问www.zpy.com
这里写图片描述

同理,如果想要在其他默认发布目录里面直接跳到https页面。只要在相应的文件里配置

<Virtualhost *:80>  #80端口
        ServerName www.zpy.com
         RewriteEngine on
        RewriteRule ^(/.*)$ https://%{HTTP_HOST}$1 [redirect=301]
</Virtualhost>

RewriteRule ^(/.*) https:// 1 [redirect=301] 解释

 ^(\.*)$             #客户主机在地址栏中写入的所有字符,不包含换行符

%{HTTP_HOST}   #客户请求主机

$1    #$1的值表示^(\.*)$,也就是地址栏输入的
[redirect=301]  ##临时重定向 302 表示永久重定向 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值