Linux搭建CA服务

什么是CA认证?

CA认证,即CA认证机构,为电子签名相关各方提供真实性、可靠性验证的行为。

什么是CA证书?

证书实际是由证书签证机关(CA)签发的对用户的公钥的认证。

CA证书类型?

  • 证书颁发机构自签名证书
  • 服务器证书
  • 用户证书

Linux系统如何搭建CA服务?

1.安装相关工具:openssl
yum install openssl -y
2.openssl相关配置文件:/etc/pki/tls/openssl.cnf
指定默认使用的CA

[ ca ]
default_ca      = CA_default            # The default ca section
CA的相关配置
[ CA_default ]
dir             = /etc/pki/CA               ?    ?    ?    ?# Where everything is kept,CA的工作目录
certs           = $dir/certs                ?    ?         # Where the issued certs are kept,已经颁发的证书存放目录
crl_dir         = $dir/crl                  ?    ?        ?  ? # Where the issued crl are kept,证书吊销列表存放目录
database        = $dir/index.txt            ?      ? # database index file,证书的索引数据库

new_certs_dir   = $dir/newcerts             ?   # default place for new certs,新证书存放目录
certificate     = $dir/cacert.pem           ?    ? # The CA certificate,CA证书
serial          = $dir/serial               ?    ?    ?    ?# The current serial number,当前证书编号
crlnumber       = $dir/crlnumber            ?  # the current crl number,当前吊销证书编号

crl             = $dir/crl.pem              ?    ?    ?   # The current CRL,当前的吊销证书
private_key     = $dir/private/cakey.pem # The private key,CA私钥
RANDFILE        = $dir/private/.rand        ? # private random number file,随机文件

default_days    = 365                       ?    ?    ?# how long to certify for,证书有效期
default_crl_days= 30                        ?    ?    ?# how long before next CRL,发布证书 吊销列表的周期
default_md      = sha256                    ?    ?  # use SHA-256 by default,算法
preserve        = no                                    # keep passed DN ordering

policy          = policy_match    ?    ?    ?    ?    ?    ?#选择使用的策略类型
\# For the CA policy
[ policy_match ]    ?    ?    ?    ?    ?    ?    ?    ?    ?    ?#第一种策略
countryName             = match    ?    ?    ?    ?     ?#是否匹配国家
stateOrProvinceName     = match    ?    ?    ?    #是否匹配省

organizationName        = match    ?    ?    ?    ?  #是否匹配组织名称
organizationalUnitName  = optional    ?    ?   #是否单元名称
commonName              = supplied    ?    ?    ?  #通用名
emailAddress            = optional    ?    ?    ?    ?   #邮箱

# For the ‘anything‘ policy
# At this point in time, you must list all acceptable ‘object‘
# types.
[ policy_anything ]
countryName             = optional
stateOrProvinceName     = optional
localityName            = optional
organizationName        = optional
organizationalUnitName  = optional
commonName              = supplied
emailAddress            = optional

3.创建CA

(1)创建索引数据库文件和指定证书编号 ? ? ?

touch /etc/pki/CA/index.txt
echo 01 >/etc/pki/CA/serial

(2)CA自签名证书

生成私钥:

(umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)

生成自签名证书:

openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 365


(3)客户端创建申请文件
生成客户端私钥:

(umask 066;openssl genrsa -out app.key 1024)

生成申请文件:

 openssl req -new -key app.key -out app.csr


将生成的申请文件发送到CA颁发服务器

scp app.csr 192.168.128.130:/etc/pki/CA/

(4)CA服务器为客户端颁发证书

openssl ca -in app.csr -out certs/app.crt -days 100


(5)将生成的证书发送给申请的客户端

 scp certs/app.crt 192.168.128.129:

证书吊销
生成吊销证书序号文件

echo 01 >crlnumber

吊销证书

openssl ca -revoke /etc/pki/CA/newcerts/01.pem

生成吊销列表

openssl ca -gencrl -out /etc/pki/CA/crl.pem

注意事项:
1.必须要提前创建证书数据库引导文件/etc/pki/CA/index.txt
2.指定证书编号,证书颁发完成后会自动更新证书序号

原文地址:http://blog.51cto.com/zchui/2325311

时间: 2025-01-14 23:10:11

Linux搭建CA服务的相关文章

华旭收-RedHat5.X系列linux搭建NTP服务详细方法

华旭收-RedHat5.X系列linux搭建NTP服务详细方法华旭是小白鼠,请勿纠结标题.ntp也就是时间服务器原理和作用:1.大数据产生与处理系统是各种计算设备集群的,计算设备将统一.同步的标准时间用于记录各种事件发生时序,如E-MAIL信息.文件创建和访问时间.数据库处理时间等.2.大数据系统内不同计算设备之间控制.计算.处理.应用等数据或操作都具有时序性,若计算机时间不同步,这些应用或操作或将无法正常进行.3.大数据系统是对时间敏感的计算处理系统,时间同步是大数据能够得到正确处理的基础保障

linux 搭建CA服务器 http+ssl mail+ssl 扫描与抓包

搭建CA服务器 CA服务是给服务器发放数字证书,被通信双方信任,独立的第三方机构 国内常见的CA机构 中国金融认证中心(CFCA) 中国电信安全认证中心(CTCA) 北京数字证书认证中心(BJCA) PKI公钥基础设施 一套标准的密钥管理平台 通过公钥加密,数字证书技术确保信息安全 PKI体系的基本组成 权威认证机构(CA) 数字证书库,密钥备份及恢复系统 证书作废系统,应用接口 ----------------------------------------------OpenSSL加密工具

linux 搭建SVN服务端

搞了个服务器,然后现在想搞点事情,于是乎整个SVN在上面,算是熟悉下svn的操作过程 以下内容转载自: https://yq.aliyun.com/articles/6693 -------------------------------------------------- Linux搭建SVN 服务器 作者: 沈小然    日期:2014年 8月 5日 1          安装SVN 官网下载:http://subversion.apache.org/packages.html SVN客户

Linux搭建DNS服务

在Linux中搭建dns服务跟Windows上一样,服务原理都一样,DNS服务默认使用UDP53端口,在Linux中称为BIND服务,在Linux中,DNS分为不同的类型,常见的类型有:缓存域名服务器:只是提供域名解析结果的缓存结果,目的在于提高查询速度和效率.但是没有自己控制的区域地址 数据:主域名服务器:维护一个特定的DNS区域的地址数据库,对其中的解析服务具有自主控制权,是指定区域中唯一存在 的权威服务器.官方服务器: 从域名服务器:与主域名服务器提供相同的DNS解析服务,常常用于DNS服

基于Linux搭建apache服务后,怎么构建web虚拟主机?

虚拟web主机指的是在同一台服务器中运行多个web站点,其中的每个站点实际上并不独立占用整个服务器,因此被称为"虚拟"web主机,通过虚拟web主机服务可以充分利用服务器的硬件资源. 使用httpd可以非常方便的去搭建虚拟主机服务器,只需要运行一个httpd服务就能够同时支撑大量的web站点.httpd支持的虚拟主机类型有这么三种(与Windows 的IIS服务一样): 1.相同IP.端口号.不同域名的虚拟主机: 2.相同IP.不同端口号的虚拟主机: 3.不同IP.相同端口号的虚拟主机

Linux 搭建Sftp服务并进行权限设置

一.最近接到一个项目组的需求搭建文件服务器,需求如下 1.用户:amovs.upload.download 2.组:amovs.dataload.download 3.具体需求是upload和download的家目录都为同一个目录dataload 4.upload能上传也就是能读能写.download用户只能下载 5.amovs因需要进行批量自动化删除日志等操作,所以对于dataload目录权限需要读.写权限 6.并且upload和download只能使用sftp软件上传和下载文件使用,不能作为

Linux搭建svn服务

svn是为了方便代码进行版本控制 Linux)svn服务器 --> windows) svn访问端 ********* [[email protected] ~]# yum install -y subversion #新建目录存储svn所有文件 [[email protected] ~]# mkdir -p /data/svn #新建资源仓库 [[email protected] ~]# svnadmin create /data/svn/project [[email protected]

linux搭建SS服务

基本准备: 购买主机:www.virmach.com LINUX系统操作经验:vim , apt-get 等命令的使用 putty.exe连接ssh工具的使用 开始 使用putty连接上去,并输入密码: [email protected]50.3.82.152 apt更新数据源: apt-get update 系统如果python版本比较低,那也更新下: 安装pip环境: apt-get install python-pip 使用pip工具,安装shadowsocks pip install s

Linux 搭建Apache服务个人静态页面

(1)把镜像挂载到/media/cdrom(2)配置Yum源文件(3)安装Apache服务程序httpd(4)开始httpd服务,并设置成开机自启(5)在浏览器输入?http://127.0.0.1?就可以看到web的默认页面(6)vi /etc/httpd/conf.d/userdir.conf在userdir.conf文件中注释掉UserDir disabled 去掉注释UserDir public_html(7)在用户家目录中创建public_html 在public_html中创建ind