婚嫁网站建设计划,网推app下载,wordpress 附件下载统计,表格制作教程从零开始目录
Linux之基于HTTPS的静态网站
定义
SSL协议
使用Apachemod_ssl组件的加密认证网站
mod_ssl模组
安装
配置文件
ssl配置文件的主要参数
案例 案例1 --- 搭建HTTPSSL的加密认证的web服务器 案例2 --- 组建多个子目录的网站www.joker.com#xff0c;该网站下有2个子…目录
Linux之基于HTTPS的静态网站
定义
SSL协议
使用Apachemod_ssl组件的加密认证网站
mod_ssl模组
安装
配置文件
ssl配置文件的主要参数
案例 案例1 --- 搭建HTTPSSL的加密认证的web服务器 案例2 --- 组建多个子目录的网站www.joker.com该网站下有2个子目录www.joker.com/file和www.joker.com/ftp要求file数据使用http读取ftp数据使用https读取 Linux之基于HTTPS的静态网站
定义 超文本传输协议HTTP协议备用于在Web浏览器和网站服务器之间传递信息 HTTP协议以明文方式发送内容不提供任何方式的数据加密如果攻击者截取了Web浏览器和网站服务器之间的传输报文就可以直接读懂其中的信息因此HTTP协议不适合传输一些敏感信息比如信用卡号、密码等。为了解决HTTP协议的这一缺陷需要使用另一种协议安全套接字层超文本传输协议HTTPS HTTPS全称Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext TransferProtocol Secure超文本传输安全协议是以安全为目标的HTTP通道 HTTPS并不是一个新协议而是HTTPSSLTLS。原本HTTP先和TCP假定传输层是TCP协议直接通信而加了SSL后就变成HTTP先和SSL通信再由SSL和TCP通信相当于SSL被嵌在了HTTP和TCP之间 SSL协议
定义 SSL --- 是“Secure Sockets Layer”的缩写中文叫做“安全套接层”。它是在上世纪90年代中期由网景公司设计的。到了1999年SSL 应用广泛已经成为互联网上的事实标准。IETF 就把SSL 标准化。标准化之后SSL被改为 TLSTransport Layer Security传输层安全协议
SSL协议分层 SSL记录协议 SSL Record Protocol它建立在可靠的传输协议如TCP之上为高层协议提供数据封装、压缩、加密等基本功能 SSL握手协议SSL Handshake Protocol它建立在SSL记录协议之上用于在实际的数据传输开始前通讯双方进行身份认证、协商加密算法、交换加密密钥等
SSL协议提供的服务 认证用户和服务器确保数据发送到正确的客户机和服务器 加密数据以防止数据中途被窃取 维护数据的完整性确保数据在传输过程中不被改变
使用Apachemod_ssl组件的加密认证网站
mod_ssl模组 mod_ssl组件 --- 是apache的一个模块以openssl的工具箱为基础专门为apache提供密码保护的一种组件模块
安装
[rootwww conf.d]# yum install mod_ssl -y
配置文件 主配置文件 --- /etc/httpd/conf.d/ssl.conf 证书文件 --- /etc/pki/tls/certs/xxxx.crt 私钥文件 ---/etc/pki/tls/private/xxxx.key
ssl配置文件的主要参数
[rootwww /]# vim /etc/httpd/conf.d/ssl.conf # 常用参数如下
5 Listen 443 https # 监听的端口号18 SSLPassPhraseDialog exec:/usr/libexec/httpd-ssl-pass-dialog # 存储证书的密码信息23 SSLSessionCache shmcb:/run/httpd/sslcache(512000) # ssl的缓存位置24 SSLSessionCacheTimeout 300 # 换存的超时时长40 VirtualHost _default_:443 # 重要定义虚拟主机的信息48 ErrorLog logs/ssl_error_log # 错误日志49 TransferLog logs/ssl_access_log # 传输日志50 LogLevel warn # 日志等级54 SSLEngine on # ssl引擎开启66 SSLHonorCipherOrder on # 协商算法85 SSLCertificateFile /etc/pki/tls/certs/localhost.crt # 证书存储路径93 SSLCertificateKeyFile /etc/pki/tls/private/localhost.key # 私钥文件路径202 /VirtualHost # 虚拟主机结束定义
案例 案例1 --- 搭建HTTPSSL的加密认证的web服务器
创建存储网页的目录xftp上传网页数据
[rootwww /]# mkdir -p /test/zy
[rootwww /]# cd /test/zy/
[rootwww zy]# vim index.html
[rootwww zy]# cat index.html
this is zy
在/etc/pki/tls/private/目录中生成私钥文件
[rootwww zy]# cd /etc/pki/tls/private/
[rootwww private]# ls
sendmail.key
[rootwww private]# openssl genrsa -aes128 2048 zy.key
Generating RSA private key, 2048 bit long modulus (2 primes)
.............
........................
e is 65537 (0x010001)
Enter pass phrase: # 设置对私钥加密的密码123456
Verifying - Enter pass phrase: # 在输入一遍
[rootwww private]# 在/etc/pki/tls/certs/目录中新建数字证书
[rootwww private]# cd /etc/pki/tls/certs/
[rootwww certs]# ls
ca-bundle.crt ca-bundle.trust.crt sendmail.pem
[rootwww certs]# openssl req -utf8 -new -key /etc/pki/tls/private/zy.key -x509 -days 365 -out zy.crt
Enter pass phrase for /etc/pki/tls/private/zy.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) [XX]:86 # 国家代码
State or Province Name (full name) []:shanxi # 省份
Locality Name (eg, city) [Default City]:xian # 城市
Organization Name (eg, company) [Default Company Ltd]:tiandi # 公司
Organizational Unit Name (eg, section) []:Hcip # 部门
Common Name (eg, your name or your servers hostname) []:192.168.149.130 # 主机名
Email Address []:145246820qq.com # 邮件地址
编辑配置文件
[rootwww certs]# cd ~
[rootwww ~]# vim /etc/httpd/conf.d/ssl.conf
virtualhost 192.168.149.130:443 # https的虚拟主机设置SSLEngine on # 开启引擎SSLCertificateFile /etc/pki/tls/certs/zy.crt # 证书存储路径SSLCertificateKeyFile /etc/pki/tls/private/zy.key # 私钥文件存储路径servername 192.168.149.130 # 域名documentroot /test/zy # 启动目录directory /test/zy # 启动目录权限设置allowoverride nonerequire all granted/directory
/virtualhost 重启服务
[rootlocalhost ~]# systemctl restart httpdEnter TLS private key passphrase for 192.168.149.128:443 (RSA) : ****** #密码为先前设置的123456 案例2 --- 组建多个子目录的网站www.joker.com该网站下有2个子目录www.joker.com/file和www.joker.com/ftp要求file数据使用http读取ftp数据使用https读取
安装mod_ssl已经Apache
[rootlocalhost ~]# yum install httpd
[rootlocalhost ~]# yum install mod_ssl -y
#关闭selinux以及防火墙
[rootlocalhost ~]# setenforce 0
[rootlocalhost ~]# systemctl stop firewalld
新建网页目录并创建文件
[rootlocalhost ~]# mkdir -p /www/file
[rootlocalhost ~]# mkdir -p /www/ftp
[rootlocalhost ~]# vim /www/file/index.html
[rootlocalhost ~]# vim /www/ftp/index.html
[rootlocalhost ~]# cat /www/file/index.html
this is joker/file
[rootlocalhost ~]# cat /www/ftp/index.html
this is ftp 修改/etc/hosts的映射
[rootlocalhost ~]# vim /etc/hosts 建立file网站
[rootlocalhost ~]# vim /etc/httpd/conf/httpd.conf
virtualhost 192.168.149.128servername filedocumentroot /www/filealias /file /www/filedirectory /www/fileallowoverride nonerequire all granted/directory
/virtualhost 建立https的ftp网站
[rootlocalhost ~]# openssl genrsa -aes128 2048 /etc/pki/tls/private/sxhkt.key
Generating RSA private key, 2048 bit long modulus (2 primes)
............................................................................................................................................
..............................................................................e is 65537 (0x010001)
Enter pass phrase: #密码123456
Verifying - Enter pass phrase: [rootlocalhost ~]# touch /etc/pki/tls/certs/sxhkt.crt
[rootlocalhost ~]# openssl req -utf8 -new -key /etc/pki/tls/private/sxhkt.key -x509 -days 365 -out /etc/pki/tls/certs/sxhkt.crt
Enter pass phrase for /etc/pki/tls/private/sxhkt.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) [XX]:86
State or Province Name (full name) []:shanxi
Locality Name (eg, city) [Default City]:xian
Organization Name (eg, company) [Default Company Ltd]:joker
Organizational Unit Name (eg, section) []:linux
Common Name (eg, your name or your servers hostname) []:192.168.149.128
Email Address []:joker.com 编辑配置文件
[rootlocalhost ~]# vim /etc/httpd/conf.d/ssl.conf
virtualhost 192.168.149.128:443sslengine onSSLCertificateFile /etc/pki/tls/certs/sxhkt.crtSSLCertificateKeyFile /etc/pki/tls/private/sxhkt.keyservername ftpdocumentroot /www/ftpalias /ftp /www/ftp # 设置别名访问二级目录directory /www/ftpallowoverride nonerequire all granted/directory
/virtualhost
重启服务测试
[rootlocalhost ~]# systemctl restart httpd