文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Ubuntu安装OpenSSL指的是什么

2023-06-28 17:23

关注

这篇文章给大家介绍Ubuntu安装OpenSSL指的是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

一、OpenSSL简单介绍

    OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。

    SSL是Secure Sockets Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。SSL能使用户/服务器应用之间的通信不被攻击者窃听,并且始终对服务器进行认证,还可选择对用户进行认证。SSL协议要求建立在可靠的传输层协议(TCP)之上。

二、安装相应软件包

$ sudo apt-get install apache2      ##安装Apache$ sudo apt-get install openssl      ##安装openssl$ sudo apt-get install libssl-dev    ##安装openssl开发库$ sudo apt-get install bless       ##编辑器使用 bless 十六进制编辑器,需预先安装

三、openssl.cnf简单释义

$ vi /usr/lib/ssl/openssl.cnf127 [ req_distinguished_name ]128 countryName                     = Country Name (2 letter code)##国家名,2个字母代码简称129 countryName_default             = CN   ##中国就是CN130 countryName_min                 = 2131 countryName_max                 = 2132 133 stateOrProvinceName             = State or Province Name (full name)##州或省的名字134 stateOrProvinceName_default     = beijing135 136 localityName                    = Locality Name (eg, city)   ##本地城市名137 localityName_default            =beijing138 0.organizationName              = Organization Name (eg, company) ##组织(公司)名139 0.organizationName_default      = beijing www company140 145 organizationalUnitName          =Organizational Unit Name(eg,section)##组织单元(部门)名146 organizationalUnitName_default  = www147148 commonName                      = Common Name(e.g.server FQDN or YOUR name)##服务器域名149 commonName                      = www.baidu.com150 commonName_max                  = 64151 152 #emailAddress                   = Email Address      ##Email地址153 emailAddress                    = admin@baidu.com154 emailAddress_max                = 64155 156 # SET-ex3                       = SET extension number 3157 158 [ req_attributes ]159 #challengePassword              = A challenge password   ##修改密码160 challengePassword               = 161 163 challengePassword_min           = 4164 challengePassword_max           = 20

四、成为数字证书认证机构(CA),并为该CA生成证书

①将openssl.cnf配置文件拷贝到当前目录下并创建以下在配置文件中指定的子文件夹

Ubuntu安装OpenSSL指的是什么

$ sudo ln /usr/lib/ssl/openssl.cnf .       $ mkdir demoCA                                          $ cd demoCA                                            $ mkdir certs crl newcerts                        $ touch index.txt serial  ##index.txt为空;                          ##serial必须写入内容,且为字符串格式的数字(比如1111)

设置好这些后,现在就可以创建和发布证书了

②为自己的 CA 生成自签名证书,这意味着该机构是被信任的,而它的证书会作为 root 证书

$ openssl req -new -x509 -keyout ca.key -out ca.crt -config openssl.cnf

Ubuntu安装OpenSSL指的是什么


注:务必记住自己所输入的密码,命令输出的文件存储:ca.key 与 ca.crt 中。文件 ca.key 包括 CA 的私钥,而 ca.crt 包含了公钥证书。

五、为客户生成证书

   现在,我们是 root CA 了,可以为客户签数字证书了,客户是www.baidu.com。

①生成公开/私有密钥对

$ openssl genrsa -des3 -out server.key 1024

Ubuntu安装OpenSSL指的是什么

注:需要提供一个密码来保护你的密钥,密钥会被保存在 server.key 文件中.

②生成证书签名请求 ,一旦公司拥有了密钥文件,它应当生成证书签名请求(CSR)。CSR 将被发送给 CA,CA 会为该请求生成证书(通常在确认 CSR 中的身份信息匹配后)。

$ openssl req -new -key server.key -out server.csr -config openssl.cnf

Ubuntu安装OpenSSL指的是什么

注:请记住自己的输入

③生成证书。CSR 文件需要拥有 CA 的签名来构成证书(在现实世界中,CSR 文件常常被发送给可信任的 CA 签名)。输入CA的密钥,使用我们自己的 CA 来生成证书:

$ openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config openssl.cnf

Ubuntu安装OpenSSL指的是什么

六、在网站中使用PKI

$ sudo vi /etc/hosts127.0.0.1    www.baidu.com

②启动一个拥有之前生成的证书的简单的 web 服务器

$ cp server.key server.pem$ cat server.crt >> server.pem           ##将密钥和证书合并成一个文件$ openssl s_server -cert server.pem -www    ##使用server.pem启动服务器

Ubuntu安装OpenSSL指的是什么

③默认情况下,服务器会监听 4433 端口。输入https://www.baidu.com:4433

Ubuntu安装OpenSSL指的是什么

注:提示此连接不受信任是因为我们的CA是自签名的,如是VeriSign 之类的 CA 授权的话就不会出现该情况了。

在这里可以配置让火狐接受我们的自签名(其他浏览器大同小异),配置如下:

菜单—>首选项—>高级—>证书—>查看证书(证书管理器)—>导入—>进入你配置openssl的目录,选择ca.crt—>打开(下载证书)—>勾上“信任使用此CA标识的网站”—>确定,然后刷新网站

Ubuntu安装OpenSSL指的是什么

Ubuntu安装OpenSSL指的是什么

Ubuntu安装OpenSSL指的是什么

Ubuntu安装OpenSSL指的是什么

关于Ubuntu安装OpenSSL指的是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯