• 微课视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 程序设计
  • 信息安全
微课江湖
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 微课视频
  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统
您的位置:首页 > 操作系统 >RedHat/Centos > CentOS下生成自签名的证书的方法详解

CentOS下生成自签名的证书的方法详解

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-12

佚名 通过本文向大家介绍了centos分区详解,centos iptables详解,centos安装https证书,centos安装方法,centos使用方法等相关知识,希望对您有所帮助,也希望大家多多支持微课江湖

1. 生成自签名的证书

通常要配置 https 的服务器,都需要一个由正式的 CA 机构认证的 X509 证书。当客户端连接 https 服务器时,会通过 CA 的共钥来检查这个证书的正确性。但要获得 CA 的证书是一件很麻烦的事情,而且还要花费一定的费用。因此通常一些小的机构会是使用自签名的证书。也就是自己做 CA,给自己的服务器证书签名。

这个过程有两个主要的步骤,首先是生成自己的 CA 证书,然后再生成各个服务器的证书并为它们签名。 我是用 OpenSSL 来生成自签名证书的。

第一步是制作 CA 的证书:

openssl genrsa -des3 -out my-ca.key 2048

openssl req -new -x509 -days 3650 -key my-ca.key -out my-ca.crt

这会生成 my-ca.key 和 my-ca.crt 文件,前者存放着使用 my-ca.crt 制作签名时必须的密钥,应当妥善保管。而后者是可以公开的。上面的命令为 my-ca.key 设定的有效期为 10 年。

用命令

openssl x509 -in my-ca.crt -text -noout

可以查看 my-ca.crt 文件的内容。

有了 CA 证书之后,就可以为自己的服务器生成证书了:

openssl genrsa -des3 -out mars-server.key 1024

openssl req -new -key mars-server.key -out mars-server.csr

openssl x509 -req -in mars-server.csr -out mars-server.crt -sha1 -CA my-ca.crt -CAkey my-ca.key -CAcreateserial -days 3650

前两个命令会生成 key、csr 文件,最后一个命令则通过 my-ca.crt 为 mars-server.csr 制作了 x509 的签名证书。

需要注意的是,在执行上述第二个命令时,Common Name 选项应当输入的是服务器的域名,否则在用户通过 https 协议访问时每次都会有额外的提示信息。

用命令

openssl x509 -in mars-server.crt -text -noout

可以查看 mars-server.crt 文件的内容。

2. 配置 Apache 服务器

首先,创建 /etc/apache2/ssl 目录,将刚刚制作的 my-ca.crt、mars-server.key 和 mars-server.crt 文件拷贝到这个目录中。

接着执行命令

a2emod ssl

激活 Apache 的 SSL 模块,然后在 /etc/apache2/sites-enable/ 中添加虚拟主机,这个过程与添加普通的虚拟主机类似,不同点在于该主机的端口应为 443。配置如下:

NameVirtualHost *:443

<VirtualHost *:443>

ServerName localhost

DocumentRoot /var/www

SSLEngine On

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /etc/apache2/ssl/mars-server.crt

SSLCertificateKeyFile /etc/apache2/ssl/mars-server.key

SSLCACertificateFile /etc/apache2/ssl/my-ca.crt

<Directory /var/www>

   Order deny,allow

   Allow from localhost

</Directory>

</VirtualHost>

<VirtualHost *:80>

ServerName localhost

DocumentRoot /var/www

<Directory /var/www>    Order deny,allow

   Allow from localhost

</Directory>

</VirtualHost>

以上配置保证了用户在访问 443 和 80 端口时可以看到相同的内容,而仅仅是使用的协议不同。修改好配置后,便可以重启 Apache 服务器,这时需要输入 mars-server.key 的密码。用浏览器访问

https://localhost/

这时应当看到一个弹出对话框,让你确认是否信任该站点的证书,选择信任后,便可以查看该站点的内容了。

由于大多数 Apache 服务器都是在服务器启动时自动启动,为了避免在启动 Apache 时输入密码,可以用以下命令生成不加密的 mars-server.key 文件:

openssl rsa -in mars-server.key -out mars-server.key.insecure

用新生成的 mars-server.key.insecure 代替原有的 key 文件即可。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • centos 联合编译动态连接库详解
  • CentOS 7安装后实用优化详解
  • CentOS的网络配置的命令详解
  • CentOS下的系统负荷详解
  • CentOS分区cfdisk操作详解
  • CentOS 7.1开机运行模式run level详解
  • CentOS常用的文本查看命令详解
  • CentOS下对SSD寿命的检查和健康判断详解
  • 安装Centos 6.5时包组安装建议详解
  • CentOS系统中与时间的相关命令详解

相关文章

  • 2017-05-12optimize table出错解决方法
  • 2017-05-12linux系统加载raid驱动的教程
  • 2017-05-12CentOS安装锐速serverspeeder教程
  • 2017-05-12CentOS6.x上部署Docker容器环境的全流程攻略
  • 2017-05-12CentOS系统下软件包的制作方法和过程详解
  • 2017-05-12centos5 源码安装Nginx + mysql + apache + php的方法
  • 2017-05-12如何在CentOS上安装Shutter屏幕截图程序? 成功安装Shutter的命令
  • 2017-05-12linux 操作技巧收集_
  • 2017-05-12CentOS服务器ntpdate同步的方法
  • 2017-05-12Centos常用方便的命令与技巧集合介绍

文章分类

  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统

最近更新的内容

    • CentOS7 如何设置截图的快捷键?
    • centos7下systemd实现tomcat多实例配置方法
    • centos7系统中挂盘硬盘报错该怎么办?
    • Centos下如何为进程绑定CPU?Centos下为进程绑定CPU的方法
    • CentOS小心被suid shell与inetd后门利用的详细讲解
    • CentOS权限系统如何恢复?CentOS权限系统恢复方法
    • centos7配置虚拟交换机的方法
    • CentOS双向免密码登录教程
    • CentOS如何安装配置maven?
    • Centos7安装时注意事项详解

关于我们 - 联系我们 - 免责声明 - 网站地图 - 投诉建议

©CopyRight 2015-2017 www.weikejianghu.com Inc All Rights Reserved. 微课江湖 版权所有