配置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 客户端配置:
在客户端软件里配置使用加密收/发邮件
转载于:https://www.cnblogs.com/wwchihiro/p/9372649.html
配置ca服务器和http,mail加密相关推荐
- Apache Httpd 2.2 配置CA证书,实现Https加密通讯
什么是CA证书 关于什么是CA证书,以及如何使用Open-SSL申请和搭建CA证书,我们在之前的文章中已经有过介绍,这里不再赘述.若有疑问,可参考之前的文章. http://www.pojun.tec ...
- centos7搭建CA服务器颁发ssl证书
2019年12月16日 星期一 CQCEE 使用ssl来保证web通信安全 apache服务器与客户机采用明文通信 对HTTP传输加密的协议为HTTPS,是通过ssl进行http传输的协议,它通过公用 ...
- linux服务器如何配置qq邮箱,linux用mail往qq邮箱发邮件
因为qq邮箱的一些安全设置,本机用mail命令投递的邮件 smtp服务器用的是localhost的sendmail或者postfix 所以邮件的from是来自localhost.localdomain ...
- ca 服务器的搭建 和证书的申请与颁发
CA是证书的签发机构,它是PKI的核心.CA是负责签发证书.认证证书.管理已颁发证书的机关.它要制定政策和具体步骤来验证.识别用户身份,并对用户证书进行签名,以确保证书持有者的身份和公钥的拥有权,那么 ...
- apache配置CA证书通过https通信
Apache Httpd 2.2 实现https加密通讯 实际生产中CA证书一般是向一些专业认证的国际机构来进行申请的.我们会模拟使用OpenSSL生成的证书,来实现Apache的安全加密通讯,这与实 ...
- Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站
Windows Server 2008 R2 下配置证书服务器和HTTPS方式访问网站 http://www.cnblogs.com/zhongweiv/archive/2013/01/07/http ...
- Linux下配置DNS服务器之一--Master服务器
Linux下配置DNS服务器之一--Master服务器 系统环境: RedHat EL55 Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概 ...
- Ubuntu 配置Samba 服务器
安装Ubuntu samba服务器 sudo apt-get install samba sudo apt-get install smbfs 配置samba服务器 samba配置文件: /etc/s ...
- 如何在 Debian 下配置邮件服务器
本教程将讨论如何在Debian(或Ubuntu)配置一个可工作的邮件服务器.我们知道在邮件服务器使用的主要协议有SMTP.POP和IMAP.在本教程中,SMTP协议使用postfix,POP/IMAP ...
最新文章
- 字节跳动面试官:你离50w年薪就差答对了这个算法题!
- Python中的字符串驻留
- gnupg环境搭建时遇到的问题
- linux makefile 宏定义
- python 和php的数据通信_python服务端 和 php客户端通信一
- 1.1 基本图像导入、处理和导出
- android 市场自动安装软件,Android 应用中跳转到应用市场评分示例
- BZOJ 3085: 反质数加强版SAPGAP (反素数搜索)
- Linux centos 6.7设置MySQL为开机启动
- JAVA 求数组中的最大值
- 如何将cv::Mat类型转换为imgui中的ImTextureID类型
- float在python_如何在python中读取.float文件? - python
- 公司这个月要同时完成好多项目!!!
- Nacos分布式配置实践
- Dubbo学习总结(3)——Dubbo-Admin管理平台和Zookeeper注册中心的搭建
- mysql 添加列,修改列,删除列
- MetaMask新版本新增获取并修改用户剪切板内容权限
- 单目 3D 目标检测——SMOKE
- 2021-11-03 - 英文/英语简写 - 收集
- ubuntu禁止指定软件包更新