搭建CA服务,实现邮件服务dovecot的CA认证。
配置三台虚拟机 ip CA服务器 邮件服务器 客户机
第一台虚拟机为CA服务器
IP地址192.168.10.100 主机名:ca.ujiuye.com
安装软件bind bind-utils bind-libs
扮演私有CA服务器,实现证书认证请求和签发 ,同时也搭建DNS服务,实现域名解析
第二台虚拟机为dovecot邮件服务器
IP地址192.168.10.150 主机名:mail.ujiuye.com
安装软件postfix和dovecot
实现向CA中心请求签证。并搭建邮件服务,提供客户机访问。
第三台为客户机,
IP地址192.168.10.200 主机名:client.ujiuye.com
安装邮件客户端软件mutt
访问邮件服务器的邮箱服务
修改主机名字 : hostnamectl set-hostname ca.ujiuye.com
1.在CA服务器上安装软件bind 搭建DNS服务
1.)CA服务器配置yum 挂载镜像,
安装DNS软件bind*
yum clear all --清理缓存
yum -y install bind*
2.)增加域 修改主配置文件
vim /etc/named.conf
监听端口 改为任何人
增加域
cd /var/named/
ls
cp named.localhost ujiuye.com.zone ---复制文件去修改内容,增加域
vim ujiuye.com.zone
修改这个权限为 named ---修改用户和组的拥有者
chown named:named ujiuye.com.zone
systemctl restart named重启服务
nslookup ca.ujiuye.com 查看是否可以解析
nslookup ca.ujiuye.com 192.168.10.100
vim /etc/resolv.conf 修改指向DNS的默认配置(三台都要指定)
在其中增加默认指向的DNS(CA)的ip
nameserver 192.168.10.100
检测是否成功
2. ca服务器的文件配置 (签发证书的个人信息)
写完之后就不用再写了 六项
根据openssl工具实现自签证书、配置自身的CA配置文件
CA配置文件:/etc/pki/tls/openssl.cnf
129 countryName = Country Name (2 letter code)
130 countryName_default = CN (默认国家)
134 stateOrProvinceName = State or Province Name
135 #stateOrProvinceName_default =Beijing (默认省)
137 localityName = Locality Name (eg, city)
138 localityName_default =BeiJing (默认市)
140 0.organizationName =Organization Name
141 0.organizationName_default = Ujiuye,Inc. (公司名称)
150 commonName = ca.ujiuye.com (服务器名称)
151 commonName_max = 64
153 emailAddress = ujiuye@ujiuye.com (CA的邮件地址)
3. 在CA根目录/etc/pki/CA下创建序列号文件和索引文件
cd /etc/pki/CA路径
touch index.txt创建索引和序列号文件
echo 01 > serial
4.CA服务器 生成私钥:(可以选择性进行承接加密算法)
openssl genrsa -out private/cakey.pem (可指定私钥位置)
生成私钥 绝对路径或者相对路径 文件 要记住私钥位置/etc/pki/CA/私钥
openssl genrsa -out private/cakey.pem
查看私钥
5.(CA)服务端 提取公钥,生成自签证书
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem ----生成自签证书
openssl req -new --新生成
-x509 --自签
-key /etc/pki/CA/private/cakey.pem ---生成私钥的路径文件
-days 3650 ---有效期
-out /etc/pki/CA/cacert.pem ---保存证书的位置
一定要放CA下面 ,如果没有在这,那么复制到这
openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3650 -out /etc/pki/CA/cacert.pem ----生成自签证书
cat /etc/pki/CA/cacert.pem ---查看
查看
5.在网页上发布自己的自签证书(选择性操作)
6.邮件mail服务器搭建dovecot邮件服务,然后向CA服务器申请证书(前提先创建生成自己私钥)
在mail服务器端 配置yum 挂载镜像,安装软件
yum -y install postfix
yum -y install dovecot
openssl genrsa -out imaps-svr.key 2048 --生成私钥
生成私钥 私钥名字 长度
安装
生成私钥 即在当前目录,必须记住文件位置
7.邮件服务器生成签名请求文件,把请求文件传输给CA
openssl req -new -key imaps-svr.key -days 365 -out imaps-svr.key.crs
生成请求文件
openssl req -new ---新生成 requst
-key imaps-svr.key ---私钥位置
-days 365 ---有效期限
-out imaps-svr.key.crs ---生成请求文件的位置
scp imaps-svr.key.crs 192.168.10.100:/root ---把请求放到CA服务器上
一定记住目录位置
openssl req -new -key imaps-svr.key -days 365 -out imaps-svr.key.crs
生成请求文件
因为没有配置签发证书的个人信息,所以得自己填入 个人信息 密码可不写
注意 逗号 公司 逗号Inc
scp imaps-svr.key.crs 192.168.10.100:/root --上传到CA服务端
CA上查看root
8.CA中心进行签名,认证,然后把认证的证书发往mail邮件服务器。
openssl req -in imaps-svr.key.crs -noout -text (以文本方式先进行输出查看一下证书内容和签名信息)
crs 请求文件
crt 证书
key 私钥
openssl ca -in imaps-svr.key.crs -out imaps-svr.crt (并确认签署)
-in imaps-svr.key.crs ----导入请求文件
-out imaps-svr.crt ----输出的是证书
scp imaps-svr.crt 192.168.10.150:/root ---证书发送给服务端的root
1.)在CA上查看请求
openssl req -in imaps-svr.key.crs -noout -text
2.)依据请求生成证书
openssl ca -in imaps-svr.key.crs -out imaps-svr.crt
crs 请求文件 依据请求文件生成证书
crt 证书
Sign the certificate? [y/n]:y --是否要签发
1 out of 1 certificate requests certified, commit? [y/n]y --提交
3.)查看证书到 CA目录下查看,
4.) scp imaps-svr.crt 192.168.10.150:/root ---证书发送给服务端的root
9.流程解释
imaps-svr.key --私钥
imaps-svr.key.crs --请求
imaps-svr.crt --证书
mail服务端依据私钥生成请求 ,把请求发给CA ,CA依据请求发送证书给服务端
10.部署证书(mail邮件服务器)
确认mail邮件服务器的postfix服务是否开启,并查看devocot配置文件
1.)查看postfix服务是否开启
systemctl status postfix --查看服务状态
netstat -antulp | grep :25 ---查看端口
注意端口为 127 不能提供外网服务,其他服务器不能使用 所以去修改参数,
2.) 修改postfix的配置文件main.cf中的 #interfaces=all,将前面的#去掉
cd /etc/postfix vim main.cf --修改这个即可
3.)重启服务 查看端口
systemctl restart postfix
现在所有客户端的25端口都可连他
11.查看或修改dovecot的ssl配置文件,(mail服务端)查看证书,私钥存放路径.
并查看证书存放路径和私钥存放路径
cd /etc/dovecot /conf.d
Ls
vim 10-ssl.conf ---编写这个文件
查看证书位置
cret为证书存放位置 key为私钥存放位置
12.将mail邮件服务器 自身的证书和私钥放置到指定的路径,并进行启动dovecot,查看端口是否开放,110,143
cp imaps-svr.key /etc/pki/dovecot/private/dovecot.pem
将私钥存放到 这个路径 会显示覆盖,直接覆盖成为这个文件
cp imaps-svr.crt /etc/pki/dovecot/certs/dovecot.pem
将证书存放到 这个路径 会显示覆盖,直接覆盖成为这个文件
查看 /dovecot下两个文件,
/private/dovecot.pem为私钥 /certs/dovecot.pem 为证书
systemctl start dovecot 启动服务 ( dovecot 收邮件)
netstat -antulp |grep :110 查看端口 ---注意冒号后直接跟110没有空格
netstat -antulp |grep :143
13:在客户端安装mutt邮件客户端, 进行设置邮件服务器邮箱地址,验证其邮箱的证书可用性。
cd
mkdir .mutt
vim .mutt/muttrc
mutt 查看证书
内容解释
set folder=imaps://mail.ujiuye.com ---收邮件的地方
set spoolfile=imaps://mail.ujiuye.com ----邮件池
set certificate_file=/root/.mutt/UJIUYE_CA.CRT ---下载的证书位置
查看证书位置