安服崽生存指南之nginx安装SSL证书

admin 2024年12月23日14:49:33评论9 views字数 2343阅读7分48秒阅读模式

如果只是想看有问题的服务器使用nginx安装SSL证书的可以直接跳到正文操作部分

前言

世界是一个巨大的草台班子,你以为的安服和实际上的安服区别真的太大了。至少我从来没想到过因为甲方运维太逆天需要我这种臭安服来做运维的事情。 事情简短描述就是甲方的服务器需要安装证书,但是服务器是有问题的,无法执行编译相关的命令,比如yum什么的。然后nginx也不能直接装证书,原因是缺模块。

故事

起因是某个客户单位要过等保,然后整改项中有需要安装SSL证书这一项。我原以为不就装个证书吗,能有多难,必须手拿把掐啊🤔,结果这件事超过了一个月,心累。

我们单位提出需要SSL证书的整改要求后,甲方的运维在折腾了一段时间后,选择找我们单位来解决这个事情,说是这方面我们才是专业的,逆天。之后我直接SSH上甲方服务器操作。既然是装证书,那么肯定要先解决中间件nginx的问题啊,查看nginx的版本

nginx -V
安服崽生存指南之nginx安装SSL证书
得知nginx当前版本为1.22.1,那么我们就可以使用相同版本的源码包去编译SSL,完成安装证书的任务。我们先检查依赖是否齐全
rpm -q gcc
安服崽生存指南之nginx安装SSL证书

???坏了,rpm命令出问题了,此时我已经意识到了不对,但是我想着还能救一下,既然查有问题,那我就直接装依赖,我就不信邪。

yum -y install gcc gcc-c++ openssl openssl-devel pcre pcre-devel zlib zlib-devel
安服崽生存指南之nginx安装SSL证书

???啥子鸟?yum命令g了?不怕,yum在centos上的Python依赖默认是Python2,所以我只需要用python重新链接到yum就行了。查看python

python
安服崽生存指南之nginx安装SSL证书

nice!Centos6.5能用python2.6,接下来我只需要保证python2.6完整就能救回yum了

ls /usr/lib/python2.6/site-packages/| grep yum
安服崽生存指南之nginx安装SSL证书

丸辣😎😭,此时我已经不想干了,然后我突然想到我直接编译就完事了,这些问题又不是我搞出来的,我只需要把SSL证书装上去就行了。说干就干,下载相同版本的源码包

wget http://nginx.org/download/nginx-1.22.1.tar.gz
安服崽生存指南之nginx安装SSL证书

解压刚刚下载的源码包

安服崽生存指南之nginx安装SSL证书

配置编译命令

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module --with-stream
安服崽生存指南之nginx安装SSL证书
安服崽生存指南之nginx安装SSL证书

丸辣!😭,系统缺少SSL模块,但是yum用不了。。。。。。。。逆天。我当时和同事都只觉得甲方的运维实在是太逆天了,是怎么能把系统搞坏的。但是谁让我们是吗喽安服呢,只能硬着头皮上了,尝试修复yum

wget https://vault.centos.org/6.5/os/x86_64/Packages/yum-3.2.29-40.el6.centos.noarch.rpm
wget https://vault.centos.org/6.5/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm
rpm -Uvh yum-3.2.29-40.el6.centos.noarch.rpm --force --nodeps
rpm -Uvh python-iniparse-0.3.1-2.1.el6.noarch.rpm --force --nodeps

但是

rpm -V glibc
安服崽生存指南之nginx安装SSL证书

悠悠苍天,何薄于我😭。

正文

无法了,这种情况只能上面杀手锏了“nginx静态编译”。本地创建一个和目标服务器一样的环境,避免到时候出现程序不适用的问题。

安装依赖项

yum -y install gcc-c++make wget
安服崽生存指南之nginx安装SSL证书

下载nginx模块依赖的软件包和nginx源码包

wget https://www.openssl.org/source/openssl-1.0.2s.tar.gz
wget https://sourceforge.net/projects/pcre/files/pcre/8.43/pcre-8.43.tar.gz/download
wget https://zlib.net/zlib-1.2.11.tar.gz
wget http://nginx.org/download/nginx-1.22.1.tar.gz
安服崽生存指南之nginx安装SSL证书

解压上面下载的压缩包

安服崽生存指南之nginx安装SSL证书

进入nginx文件夹中执行配置编译命令

./configure 
--with-openssl=../openssl-1.0.2s
--with-pcre=../pcre-8.43
--with-zlib=../zlib-1.2.11
--with-pcre-jit --user=root
--prefix=/root/nginx
--with-http_ssl_module
--with-http_v2_module 
安服崽生存指南之nginx安装SSL证书

编译安装,执行后等待一会即可

make&&make install
安服崽生存指南之nginx安装SSL证书

完成之后进入root目录打包nginx

cd /root && tar -zcvf nginx-green.tar.gz nginx

然后将刚刚打包的nginx上传到甲方的服务器上,使用root账号登录,在root 目录下解压nginx

tar -zxvf nginx-green.tar.gz
cd /root/nginx/sbin/

然后编写SSL配置,使用下面的命令加载nginx.conf文件

./nginx -<nginx.conf 路径>
安服崽生存指南之nginx安装SSL证书
顺利解决,又活一天😭

原文始发于微信公众号(苍夜安全):安服崽生存指南之nginx安装SSL证书

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月23日14:49:33
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   安服崽生存指南之nginx安装SSL证书http://cn-sec.com/archives/3535340.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息