配置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 ...
随机推荐
- 一、JVM内存区域组成
一.JVM内存区域组成 java把内存分四种: 1.栈区(stack segment)— 由编译器自动分配释放,存放函数的参数值,局部变量的值等,具体方法执行结束之后,系统自动释放内存资源 2. ...
- colab找不到模块 no name
https://www.jianshu.com/p/2cf00bb9db34?utm_source=oschina-app 穷学生学习神经网络一定体会过“等待”的痛苦... 循环一次epoch急死人, ...
- lavarel 响应宏
宏的概念 计算机里的宏是批量处理的意思.比如我们在进行文本编辑的时候,打错字会有回退的功能——control+z:但是这是我们的键盘操作,计算机在进行处理的时候是不能理解的,他必须对最近两次操作进行比 ...
- Flex AIR使用ADT命令打包 ipa
1. 配置环境变量. 2. 测试adt命令 3. 将ShepherdPhone0815.mobileprovision和 my.p12文件都放入编译好的工程目录下,如下图: 4.切换到上述编译好的目录 ...
- Educational Codeforces Round 5(A,B题)
虽然是水题但还是贴下代码把 A #include<cstring> #include<cstdio> using namespace std; ; char x[qq],y[q ...
- 洛谷P2719 搞笑世界杯 题解 概率DP入门
作者:zifeiy 标签:概率DP 题目链接:https://www.luogu.org/problem/P2719 我们设 f[n][m] 用于表示还剩下n张A类票m张B类票时最后两张票相同的概率, ...
- 关于scipy包的安装
先安装好scikit-learn和numpy,从网上下载scipy的whl文件,通过pip install+安装包地址的方法安装
- P1038 间谍入侵
题目描述 爱丽丝魔法王国成立10周年,于是决定矩形国庆大阅兵. 在国庆大阅兵期间,为了防止暗黑王国的间谍乔装成平民混入,需要对每一个进城的人做检测. 因为暗黑王国的人长得和爱丽丝魔法王国的人长得很像, ...
- P1017 聪聪排数字
题目描述 今天聪聪收到了n张卡片,他需要给他们从小到大排序. 输入格式 输入的第一行包含一个整数 \(n(1 \le n \le 10^3)\) . 输入的第二行包含 \(n\) 个正整数,以空格间隔 ...
- C# 命令行如何静默调用 del 删除文件
如果在 C# 命令行调用 del 删除文件,很多时候会提示是否需要删除,本文告诉大家如何调用命令行的时候静默删除 在C# 命令行 调用 del 删除文件的时候,会提示是否删除,通过在命令行加上 \Q ...