`

nginx使用openssl安装数字证书

 
阅读更多

 

http://blog.sina.com.cn/s/blog_6ad624380101ido7.html

 

nginx下载 http://www.nginx.org/en/download.html 

openssl下载: http://www.openssl.org/source/   版本:1.0.1f

 

1.注意:OPENSSL不需要安装,只需要解压出来就行。不然在编译时会提示类似以下的错误:

make[1]: Entering directory `/root/nginx'
cd /server/openssl \
        && make clean \
        && ./config --prefix=/server/openssl/openssl no-shared  no-threads \
        && make \
        && make install
make[2]: Entering directory `/server/openssl'
make[2]: *** No rule to make target `clean'.  Stop.
make[2]: Leaving directory `/server/openssl'
make[1]: *** [/server/openssl/openssl/include/openssl/ssl.h] Error 2
make[1]: Leaving directory `/root/nginx'
make: *** [build] Error 2

 

2.安装Nginx的时候,把openssl路径指定到解压出来的路径:

./configure  --with-http_stub_status_module --with-http_ssl_module --with-openssl=/root/openssl --with-http_gzip_static_module  --with-http_stub_status_module

之后是一个漫长的等待时间

 

3、生成RSA密钥的方法

openssl genrsa -des3 -out privkey.pem 2048
这个命令会生成一个2048位的密钥,同时有一个des3方法加密的密码,如果你不想要每次都输入密码,可以改成:
openssl genrsa -out privkey.pem 2048
建议用2048位密钥,少于此可能会不安全或很快将不安全。

 

4、生成一个证书请求
openssl req -new -key privkey.pem -out cert.csr
这个命令将会生成一个证书请求,当然,用到了前面生成的密钥privkey.pem文件
这里将生成一个新的文件cert.csr,即一个证书请求文件,你可以拿着这个文件去数字证书颁发机构(即CA)申请一个数字证书。CA会给你一个新的文件cacert.pem,那才是你的数字证书。

如果是自己做测试,那么证书的申请机构和颁发机构都是自己。就可以用下面这个命令来生成证书:
openssl req -new -x509 -key privkey.pem -out cacert.pem -days 1095
这个命令将用上面生成的密钥privkey.pem生成一个数字证书cacert.pem

 

5.Nginx配置中,需要修改的地方:

server {

listen       443;

server_name  localhost;

ssl                  on;

ssl_certificate /usr/local/nginx/conf/cacert.pem;

ssl_certificate_key /usr/local/nginx/conf/privkey.pem;

server_name 192.168.10.70

ssl_session_timeout  5m;

}

 

6.在iptables中打开ssl使用到的443端口,重启iptables.

 

7.测试。访问时,发现有提示需要证书,应该成功了。

分享到:
评论

相关推荐

    Openssl与数字证书

    下面简要介绍如何使用OpenSSL来生成客户端和服务器端的数字证书: 1. **生成私钥**:使用`openssl genpkey`命令生成私钥。 2. **创建证书请求**:使用`openssl req`命令创建证书请求文件。 3. **自签名证书**:如果...

    keystoke证书转换nginx证书工具

    `keytool`是Java Development Kit (JDK) 自带的一个命令行工具,用于管理密钥对和数字证书。 首先,我们需要理解SSL/TLS证书的基础知识。SSL(Secure Socket Layer)和其后续版本TLS(Transport Layer Security)是...

    nginx https 配置和需要的证书可以用来测试使用

    服务器需要拥有一个数字证书,其中包含公钥,而私钥则保存在服务器上,不对外公开。 在 Nginx 中配置 HTTPS,我们需要以下步骤: 1. **生成证书**: - `server.crt` 是服务器的公钥证书文件,通常由证书颁发机构...

    centos7.6部署Nginx1.1.18中间件SSL加密证书改造步骤

    1. 访问https://www.gmssl.cn/gmssl/index.jsp?go=ca,选择“国密数字证书”->“SM2”证书。 2. 按照提示填写证书申请信息,提交后下载证书压缩包。 五、导入证书至Nginx 1. 将下载的SM2证书文件(如sm2.sm2...

    nginx证书手册1

    3. 证书格式转换:如果CA提供的证书格式与Nginx要求的格式不一致,可以使用OpenSSL进行转换,例如`openssl x509 -in certificate.crt -out certificate.pem -outform PEM`。 4. 下载根证书及中级根证书:为了建立...

    nginx安装依赖包

    通过`openssl`,Nginx可以处理SSL/TLS的握手过程,加密和解密数据,以及验证客户端的数字证书。 接下来是`zlib`。Zlib是一个免费的、跨平台的数据压缩库,广泛用于数据压缩和解压缩。在Nginx中,`zlib`主要用于启用...

    安装openssl和openssl-develd 的依赖包

    **openssl** 是一个开源的密码学库,包含了各种常用的加密算法、数字证书、随机数生成器等功能。在服务器上安装openssl可以提供SSL/TLS支持,使得服务器能够处理HTTPS连接。这对于需要处理敏感信息的网站,如在线...

    nginx依赖包.rar

    OpenSSL还支持证书管理,包括生成、验证和存储数字证书。 3. Zlib: Zlib是一个通用的、无损的数据压缩库,常用于HTTP压缩。Nginx可以利用Zlib对HTTP响应内容进行GZIP压缩,从而减少网络传输的数据量,提高网页...

    gcc以及nginx环境.zip

    Nginx配置中会使用openssl生成证书和密钥。 在实际应用中,GCC和Nginx的结合使用常常涉及到开发、测试和部署Web应用程序。开发者可能使用GCC编译C/C++程序,并通过Nginx提供静态资源和服务。同时,Nginx可以与后端...

    加载 ssl证书的 nginx

    SSL证书是由受信任的证书颁发机构(CA)签发的数字证书,包含了网站的身份信息和公钥,用于验证网站身份和建立加密连接。主要组成部分有:域名、组织信息、公钥和CA的签名。 加载SSL证书到Nginx需要两个文件:私钥...

    openssl生成的证书demo

    通过这个“openssl生成的证书demo”,我们可以了解到OpenSSL在创建和管理数字证书方面的强大功能,这对于构建安全的网络服务和客户端应用至关重要。在理解和实践这些步骤后,你将能够更好地处理SSL/TLS证书相关的...

    Windows下用Nginx配置https服务器.docx

    本文档详细介绍了在Windows系统下使用Nginx配置HTTPS服务器的全过程,包括安装OpenSSL、安装Nginx、生成证书以及配置Nginx等关键步骤。通过遵循上述指南,用户可以在本地或生产环境中搭建一个安全可靠的HTTPS服务器...

    Openssl for windows 64位 完整安装包

    2. **证书管理**:可以生成、导入、导出和管理X.509数字证书,用于身份验证和数据加密。 3. **SSL/TLS协议支持**:提供SSLv2、SSLv3、TLSv1.0、TLSv1.1、TLSv1.2和TLSv1.3的支持,确保网络通信的安全。 4. **命令行...

    Nginx搭建https服务器1

    证书是一个数字证书,它包含了服务器的公钥和私钥。我们可以使用OpenSSL工具来生成证书。 首先,我们需要安装OpenSSL和OpenSSL-devel: ``` # yum install openssl # yum install openssl-devel ``` 然后,我们可以...

    centos中nginx所需资源包

    OpenSSL是一个强大的安全套接层(SSL)和传输层安全(TLS)协议实现,用于加密通信和创建数字证书。Nginx使用OpenSSL来支持HTTPS协议,提供安全的Web服务。版本1.1.1包含了最新的安全更新和性能改进,确保了与各种...

    linux nginx双向认证服务搭建

    对于64位系统,则应下载Linux x64版本。 2. **安装JDK**: - 假设您下载的是`.tar.gz`格式的压缩包,例如`jdk-7u40-linux-i586.tar.gz`。 - 将该文件移动至`/usr/java`目录下。 - 解压缩文件:`tar -zxvf jdk-7...

    5分钟完成nginx ssl配置

    1. **SSL证书**:这是用于验证网站身份并加密数据传输的数字证书。通常由权威的证书颁发机构(CA)签发,如Let's Encrypt、Comodo、Symantec等。 2. **公钥和私钥**:SSL证书包含一个公钥和一个与之配对的私钥。...

    openssl 证书生产工具

    要启用HTTPS,服务器必须拥有一个数字证书,这个证书就是通过OpenSSL工具生成的。 **证书生成过程** 1. **生成私钥**:首先,我们需要使用OpenSSL生成一个私钥,这将用于签署和解密数据。命令通常如下: ``` ...

    Win64OpenSSL-1_0_2L安装包

    3. **数字证书**: 提供证书生成、签名、验证等功能,用于身份认证和防止中间人攻击。 4. **SSL/TLS服务器**: OpenSSL可以被集成到Web服务器中,如Apache或Nginx,以支持HTTPS服务。 5. **命令行工具**: 包含`openssl...

    Nginx下配置Https证书详细过程

    openssl req -x509 -nodes -days 36500 -newkey rsa:2048 -keyout /usr/local/ssl/nginx.key -out /usr/local/ssl/nginx.crt ``` 在这个过程中,你需要输入一些关于证书的信息,如国家、省份、城市、组织名、电子...

Global site tag (gtag.js) - Google Analytics