linux命令安装ssl证书

来源:互联网 发布:unity3d everyplay 编辑:程序博客网 时间:2024/06/01 20:04

How to create a self-signed SSL Certificate 

第一步:Generate a Private Key(生成私人密钥)
linux命令:openssl genrsa -des3 -out server.key 1024
终端会弹出一下信息
Generating RSA private key, 1024 bit long modulus
.........................................................++++++
........++++++
e is 65537 (0x10001)
Enter PEM pass phrase:
Verifying password - Enter PEM pass phrase:(pem子句)这里可以随便写,类似于密码一类的,
按enter键后,重复以上的pem子句
第二步:创建一个CSR证书签署的要求
linux命令:openssl req -new -key server.key -out server.csr
终端信息:
Country Name (2 letter code) [GB]:CH
State or Province Name (full name) [Berkshire]:Bern
Locality Name (eg, city) [Newbury]:Oberdiessbach
Organization Name (eg, company) [My Company Ltd]:Akadia AG
Organizational Unit Name (eg, section) []:Information Technology
Common Name (eg, your name or your server's hostname) []:public.akadia.com
Email Address []:martin dot zahn at akadia dot ch
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:以上内容可以根据自己需要随便填写

第三步:Remove Passphrase from Key(从key中删除刚才的pem子句)
linux命令:
cp server.key server.key.org(备份server.key文档并起名为:server.key.org)
openssl rsa -in server.key.org -out server.key
终端信息:

Enter pass phrase for server.key.org:这里需要重新输入刚才的em子句

第四步:Generating a Self-Signed Certificate(生成一个自签名证书)

linux命令:openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

openssl req -new -x509 -newkey rsa:1024  -out server.pem

其中:-days 365是证书有效期,根据自己需要选填

终端信息:

Signature ok
subject=/C=CH/ST=Bern/L=Oberdiessbach/O=Akadia AG/OU=Information
Technology/CN=public.akadia.com/Email=martin dot zahn at akadia dot ch
Getting Private key

第五步:将证书内容输入到pem文档中

linux命令:

cat server.key >>server.pem

cat server.crt >>server.pem 

第六步:将证书文档server.pem拷贝到指定的目录下

linux命令:cp server.pem /usr/local/**

第七步:在ejabberd中使用证书

在ejabberd的配置文件ejabberd.cfg(我的是ejabber.yml)中ejabberd_c2s的监听处加入证书文档

listen:

 -

   port:5222

   module: ejabberd_c2s

    starttls:true

    certfile:"/usr/local/ejabberd/etc/ejabberd/server.pem"

    starttls_required:true












0 0