配置ca服务器和http,mail加密
一·CA介绍
certificate authority 数字证书授权中心
被通信双方信任的、独立的第三方机构
负责证书颁发、验证、撤销等管理
数字证书
经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件

国内常见的CA机构
中国金融认证中心(CFCA)
中国电信安全认证中心(CTCA)
北京数字证书认证中心(BJCA)
PKI public key infrastructure 公钥基础设施
一套标准的密钥管理平台
通过公钥加密、数字证书技术确保信息安全
PKI体系的基本组成
权威认证机构(CA)
数字证书库、密钥备份及恢复系统
证书作废系统、应用接口


openssl 加密工具 做数据加/解密
实现SSL/TLS协议及各种加密用应用
-创建并管理私钥、公钥、证书、证书服务
-使用公钥加解密
-使用各种算法进行加解密
-计算信息摘要
对称加密
enc 指定算法 des3三遍 -e 加密 -d 解密 -in 源文件 -out 加解密输出后的文件
#openssl enc -des3 -e -in f1.txt -out f1.txt.enc
#openssl enc -des3 -d -in f1.txt.enc -out f1.txt
#file f1.txt
#file f1.txt.enc
搭建ca服务器
1.配置CA证书签发环境
# ls /etc/pki/tls/openssl.cnf
# rpm -qf /etc/pki/tls/openssl.cnf
#vim /etc/pki/tls/openssl.cnf
40 [ CA_default ] //默认环境
42 dir = /etc/pki/CA //CA相关文件的默认目录
43 certs = $dir/certs //为用户颁发数字证书的存放位置
45 database = $dir/index.txt //证书数据的索引文件,需手动建立
50 certificate = $dir/my-ca.crt //CA服务器根证书文件
51 serial = $dir/serial //序号记录文件,需手动建立,从01开始
55 private_key = $dir/private/my-ca.key //CA服务器私钥文件
84 [ policy_match ] //匹配策略
85 countryName = match //国家一样
86 stateOrProvinceName = match //省份一样
87 organizationName = match //公司一样
128 [ req_distinguished_name ] //证书请求的识别信息
130 countryName_default = CN //国家
135 stateOrProvinceName_default = beijing //省
138 localityName_default = beijing //城市
141 0.organizationName_default = tarena //公司
148 organizationalUnitName_default = ope //部门
根据需要建立index.txt、serial文件
# touch /etc/pki/CA/index.txt
# echo 01 > /etc/pki/CA/serial
#chmod 600 index.txt serial
2 为CA服务器生成私钥
#cd /etc/pki/CA/private/
# openssl genrsa -des3 2048 > my-ca.key (设置保护私钥的密码123456)
# chmod 600 my-ca.key
3 为CA服务器创建根证书
#cd /etc/pki/CA
#openssl req -new -x509 -key /etc/pki/CA/private/my-ca.key -days 365 > my-ca.crt
req请求 x509证书格式
#chmod 600 my-ca.crt
4 发布根证书 (web ftp 等提供给用户下载)
5 客户端下载安装根证书

中间证书:数字证书
二、网站加密 http+ssl
1 配置网站服务器192.168.4.50 支持客户端使用https 443协议访问
1.1 启用httpd服务
#yum -y install httpd
#echo 12345 > /var/www/html/test.html
#echo "hello boy" > /var/www/html/index.html
#service httpd start ; chkconfig httpd on
#netstat -utnalp | grep httpd (80)
#修改本地hosts(没有dns)
1.2 创建私钥文件
# cd /etc/pki/tls/private/
#openssl genrsa 2048 > www.key
1.3 创建证书请求文件,并上传给ca服务器
#openssl req获取 -new -key /etc/pki/tls/private/www.key > /root/www.csr (必须要与ca服务器policy_match84行规则一样)
#scp /root/www.csr 192.168.4.100:/root/
2 CA服务器的配置192.168.4.100
2.1 审核证书请求文件,并签发数字证书给网站服务器
#ls /root/www.csr
#cd /etc/pki/CA/certs/
# openssl ca -in /root/www.csr > www.crt
#scp www.crt 192.168.4.50:/root/
2.2 配置网站服务4.50运行时加载私钥文件和数字证书文件
#mv /root/www.crt /etc/pki/tls/certs/
#ls /etc/pki/tls/private/www.key
#yum -y install mod_ssl
#sed -n '100p;107p' /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/pki/tls/certs/www.crt
SSLCertificateKeyFile /etc/pki/tls/private/www.key
重启服务
#systemctl restart httpd
#netstat -untlap | grep httpd (443 80)
3 客户端验证4.254
# sed -i '$a192.168.4.50 sec50.chen.com www.chen.com' /etc/hosts
#ping www.chen.com
下载ca根证书并安装
在浏览器里导入根证书
访问: https://www.chen.com (没有不受信任的提示,问题看技术详细--因为没有ca的根证书)
4 配置网站服务接收到访问80端口的请求时把请求转给本机的443端口
#vim /etc/httpd/conf/httpd.conf
<IfModule ssl_module>
SSLRandomSeed startup builtin //执行内建的函数;内键指令
SSLRandomSeed connect builtin
</IfModule>
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$ //重写条件,服务端口,不是443则成立
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R] //重写规则 , .* 表示后面test任意,R替换,将$1替换为https://%{SERVER_NAME}
#systemctl restart httpd
#firefox http://www.chen.com
三、 邮件加密 192.168.4.50
# yum -y install postfix dovecot cyrus-sasl
#systemctl start postfix ; systemctl enable postfix //发邮件
#systemctl start dovecot ; systemctl enable dovecot //收邮件
相关协议及端口
SMTP(25)+ TLS/SSL
POP3(110)、POP3S(995)
IMAP(143)、IMAPS(993)
1 邮件服务器的配置
1.1 生成私钥文件
# cd /etc/pki/tls/private/
# openssl genrsa 2048 > mail.key
1.2 创建证书请求文件并上传给CA服务器 (mail.tedu.cn)
#openssl req -new -key /etc/pki/tls/private/mail.key > /root/mail.csr
# scp /root/mail.csr 192.168.4.100:/root/
2 CA服务器的配置
2.1审核并签发数字证书
#ls /root/mail.csr
#cd /etc/pki/CA/certs/
#openssl ca -in /root/mail.csr > mail.crt
#scp mail.crt 192.168.4.50:/root/
3 邮件服务器配置服务在运行是加载数字证书文件和私钥文件 (收邮件服务)
# vim /etc/dovecot/conf.d/10-ssl.conf
14 ssl_cert = </etc/pki/dovecot/certs/mail.crt
15 ssl_key = </etc/pki/dovecot/private/mail.key
# cp /etc/pki/tls/certs/mail.crt /etc/pki/dovecot/certs/
# cp /etc/pki/tls/private/mail.key /etc/pki/dovecot/private/
重启服务
#systemct restart dovecot
#netstat -untnalp | grep dovecot (110 143 995 993)
4 邮件服务器配置服务在运行是加载数字证书文件和私钥文件 (发邮件服务)
#cp /root/mail.crt /etc/pki/tls/certs/
# vim /etc/postfix/main.cf
smtpd_use_tls = yes //启用加密传输
#smtpd_tls_auth_only = yes //禁用明文加密,若启用此项,则非TLS的SMTP通信将被阻止
smtpd_tls_key_file = /etc/pki/tls/private/mail.key
smtpd_tls_cert_file = /etc/pki/tls/certs/mail.crt
#smtpd_tls_loglevel = 1 //排错阶段可启用此配置
#systemctl restart postfix
#netstat -utnalp | grep master
5 客户端配置:
在客户端软件里配置使用加密收/发邮件
配置ca服务器和http,mail加密的更多相关文章
- linux 搭建CA服务器 http+ssl mail+ssl 扫描与抓包
搭建CA服务器 CA服务是给服务器发放数字证书,被通信双方信任,独立的第三方机构 国内常见的CA机构 中国金融认证中心(CFCA) 中国电信安全认证中心(CTCA) 北京数字证书认证中心(BJCA) ...
- CA服务器的搭建
CA (Certification Authority) 是认证机构的国际通称,它是对数字证书的申请者发放.管理.取消数字证书的机构.CA的作用是检查证书持有者身份的合法性,并签发证书(用数学方法在证 ...
- Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站
http://www.cnblogs.com/zhongweiv/archive/2013/01/07/https.html 配置环境 了解HTTPS 配置CA证书服务器 新建示例网站并发布在IIS ...
- 配置DNS服务器
一.配置基本的DNS 服务器(包含正向解析和反向解析)域名:abc.com服务器IP:10.1.2.11 1. 编辑主配置文件/etc/named.conf---------------------- ...
- 【服务器运维】Windows Server 2008 R2 下配置证书服务器和HTTPS
前言 2017年1月1日起App Store上的所有App应用将强制开启ATS功能. 苹果的ATS(App Transport Security)对服务器硬性3点要求: ① ATS要求TLS1.2或者 ...
- IIS7.0 Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站
配置环境 Windows版本:Windows Server 2008 R2 Enterprise Service Pack 1 系统类型: 64 位操作系统 了解HTTPS 为什么需要 HTTPS ? ...
- 自己搭建CA颁发证书做https加密网站
192.168.10.187 CA服务器 192.168.10.190 web服务器 (1)搭建CA cd /etc/pki/CA 在这个目录下创建serial和index.txt两个文件 echo ...
- 搭建私有CA服务器
1 CA是什么 CA(Certificate Authority)证书颁发机构主要负责证书的颁发.管理以及归档和吊销.证书内包含了拥有证书者的姓名.地址.电子邮件帐号.公钥.证书有效期.发放证书的CA ...
- 自建证书配置HTTPS服务器
1.写这篇博客的初衷是因为最近iOS9出来了,苹果官方默认要求使用HTTPS,所以自己想整一个HTTPS服务器,也想好好了解一下HTTPS通信,也知道了HTTPS其实就是在HTTP的基础上加上了SSL ...
随机推荐
- POJ2186 Popular Cows 题解 强连通分量入门题
题目链接:http://poj.org/problem?id=2186 题目大意: 每头牛都想成为牛群中的红人. 给定N头牛的牛群和M个有序对(A, B),(A, B)表示牛A认为牛B是红人: 该关系 ...
- Java使用RandomAccessFile读写文件
目录 转载自:http://blog.csdn.net/akon_vm/article/details/7429245 Java RandomAccessFile RandomAccessFile是用 ...
- 手把手教你用Python实现自动特征工程
任何参与过机器学习比赛的人,都能深深体会特征工程在构建机器学习模型中的重要性,它决定了你在比赛排行榜中的位置. 特征工程具有强大的潜力,但是手动操作是个缓慢且艰巨的过程.Prateek Joshi,是 ...
- 洛谷P5022 旅行 题解 去环/搜索
题目链接:https://www.luogu.org/problem/P5022 这道题目一开始看的时候没有思路,但是看到数据范围里面有一个: \(m = n-1\) 或 \(m = n\) ,一下子 ...
- Python--day61--Django ORM单表操作之展示用户列表
user_list.html views.py 项目的urls.py文件
- Python--day43--mysql唯一索引和外键变种之多对多
唯一索引:(unique关键字)unique 名字 (num) 外键的变种:
- H3C 什么是路由
- tensorflow在文本处理中的使用——Doc2Vec情感分析
代码来源于:tensorflow机器学习实战指南(曾益强 译,2017年9月)——第七章:自然语言处理 代码地址:https://github.com/nfmcclure/tensorflow-coo ...
- 程序员必备神器(FastStoneCapture)
工欲善其事,必先利其器. 作为程序员,如果我们不知道如何制作动态图或者快捷录屏.录视频等,会给人一种身怀不技的感觉:好!屁话少说,接下来我会废话连篇的介绍一款神器--------那就是FastSton ...
- linux进程互斥等待
我们已经见到当一个进程调用 wake_up 在等待队列上, 所有的在这个队列上等待的进程 被置为可运行的. 在许多情况下, 这是正确的做法. 但是, 在别的情况下, 可能提前知道 只有一个被唤醒的进程 ...