为GrayLog Web接口配置nginx HTTPS/SSL反向代理

简介: 为GrayLog Web接口配置nginx HTTPS/SSL反向代理

为GrayLog Web接口配置nginx HTTPS/SSL反向代理


本文参考https://docs.graylog.org/docs/web-interface完成


640.png


准备条件

  • 1、域名

根域名walkingcloud.cn

二级域名graylog.walkingcloud.cn

  • 2、SSL(HTTPS)证书

可以在腾讯云SSL证书控制台申请一个免费证书,并下载nginx版本的证书

例如证书对应graylog.walkingcloud.cn域名


具体步骤


域名购买,注册等步骤忽略,下面主要介绍证书申请及nginx配置


1、登陆腾讯云SSL证书控制台申请免费证书


我的证书->申请免费证书

640.png


640.png


证书绑定域名:graylog.walkingcloud.cn

640.png


待申请成功后下载nginx版本证书

640.png

2、Graylog所在服务器安装nginx并配置nginx


yum install epel-release
yum install nginx





640.png

cd /etc/nginx/
vim nginx.conf

640.png


其中graylog的web端口为8000


640.png


修改成如下


server {
        listen       80;
        listen       [::]:80;
        server_name  graylog.walkingcloud.cn;
        rewrite ^(.*)$ https://$host$1;
        location / {
          proxy_set_header Host $http_host;
          proxy_set_header X-Forwarded-Host $host;
          proxy_set_header X-Forwarded-Server $host;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header X-Graylog-Server-URL http://$server_name/;
          proxy_pass       http://127.0.0.1:8000;
    }
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
        error_page 404 /404.html;
        location = /404.html {
        }
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        }
    }


HTTPS/SSL的配置


# Settings for a TLS enabled server.
#
    server {
        listen       443 ssl http2;
        listen       [::]:443 ssl http2;
        server_name  graylog.walkingcloud.cn;
        root         /usr/share/nginx/html;
#
        ssl_certificate "/etc/nginx/ssl/server.crt";
        ssl_certificate_key "/etc/nginx/ssl/server.key";
        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout  10m;
        ssl_ciphers HIGH:!aNULL:!MD5;
        ssl_protocols  TLSv1.2 TLSv1.3;
        ssl_prefer_server_ciphers on;
#
        location /
         {
                 proxy_set_header Host $http_host;
                 proxy_set_header X-Forwarded-Host $host;
                 proxy_set_header X-Forwarded-Server $host;
                 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                 proxy_set_header X-Graylog-Server-URL https://$server_name/;
                 proxy_pass       http://127.0.0.1:8000;
         }
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
        error_page 404 /404.html;
            location = /40x.html {
         }
         error_page 500 502 503 504 /50x.html;
         location = /50x.html {
        }
  }


并将证书上传到配置文件中指定的目录,文件名要与配置文件中一致

640.png


3、接下重启nginx服务


systemctl restart nginx.service 
firewall-cmd --add-port=80/tcp --zone=public --permanent 
firewall-cmd --add-port=443/tcp --zone=public --permanent 
firewall-cmd --reload


640.png


4、配置域名解析验证SSL证书是否OK


先配置域名解析

这里修改客户端访问的本地/etc/hosts文件模拟域名解析,进行测试


Mac下sudo vi /etc/hosts
添加
192.168.31.232  graylog.walkingcloud.cn


640.jpg

浏览器访问


http://graylog.walkingcloud.cn


会自动跳转到https站点 https://graylog.walkingcloud.cn

640.png


如图所示可以看到SSL证书正常有效


640.png

win10机器测试截图

640.png

相关文章
|
7月前
|
算法 Java Go
【GoGin】(1)上手Go Gin 基于Go语言开发的Web框架,本文介绍了各种路由的配置信息;包含各场景下请求参数的基本传入接收
gin 框架中采用的路优酷是基于httprouter做的是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。
604 4
|
安全 算法 网络协议
解析:HTTPS通过SSL/TLS证书加密的原理与逻辑
HTTPS通过SSL/TLS证书加密,结合对称与非对称加密及数字证书验证实现安全通信。首先,服务器发送含公钥的数字证书,客户端验证其合法性后生成随机数并用公钥加密发送给服务器,双方据此生成相同的对称密钥。后续通信使用对称加密确保高效性和安全性。同时,数字证书验证服务器身份,防止中间人攻击;哈希算法和数字签名确保数据完整性,防止篡改。整个流程保障了身份认证、数据加密和完整性保护。
|
10月前
|
网络安全 API CDN
如何将Cloudflare HTTPS的SSL证书更换为Google签发的
将Cloudflare HTTPS的SSL证书更换为Google签发的
|
数据采集 安全 网络安全
使用aiohttp实现异步HTTPS爬虫的SSL优化
使用aiohttp实现异步HTTPS爬虫的SSL优化
644 81
|
10月前
|
存储 Linux Apache
在CentOS上配置SVN至Web目录的自动同步
通过上述配置,每次当SVN仓库中提交新的更改时,`post-commit`钩子将被触发,SVN仓库的内容会自动同步到指定的Web目录,从而实现代码的连续部署。
298 16
|
存储 应用服务中间件 nginx
在使用Nginx之后,如何在web应用中获取用户IP以及相关原理
但总的来说,通过理解网络通信的基础知识,了解http协议以及nginx的工作方式,我们已经能在大多数情况下准确地获取用户的真实IP地址了,在调试问题或者记录日志时会起到很大的帮助。
805 37
|
安全 网络安全 数据安全/隐私保护
HTTP 与 HTTPS 协议及 SSL 证书解析-http和https到底有什么区别?-优雅草卓伊凡
HTTP 与 HTTPS 协议及 SSL 证书解析-http和https到底有什么区别?-优雅草卓伊凡
743 3
|
网络协议 算法 数据建模
IP 地址,包括 IPv6 怎么申请 SSL证书来实现 https
很多企业单位已经开始在使用 IPv6 资源,跟 IPv4 一样,IPv6也是需要SSL证书的。在目前的SSL证书品牌,KeepTrust 是可以支持 IPv6 地址的。跟普通IP地址一样,给IPv6签发SSL证书也是需要验证申请者对 IP 地址的管理权限的。如果是 OV 版,还需要验证组织信息的真实性。
1495 21
|
安全 网络安全 数据安全/隐私保护
HTTPS与SSL证书的关系
**HTTPS 与 SSL 证书:安全通信的基石** 在互联网时代,网络安全至关重要。HTTPS 和 SSL 证书是保障网站安全通信的关键。HTTPS 是 HTTP 的安全版本,通过 SSL/TLS 协议加密数据,防止窃取和篡改。SSL 证书用于验证网站身份并加密通信,包含域名、CA、公钥等信息。两者共同确保数据加密、身份验证,提升用户信任度,并有助于 SEO 优化。部署 HTTPS 和 SSL 证书是提升网站安全性和用户体验的必要措施。
|
Web App开发 测试技术 应用服务中间件