加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

网络日志管理合理的重要性

发布时间:2021-11-23 20:41:43 所属栏目:安全 来源:互联网
导读:网络日志是一个平时不怎么被重视的东西,今天写到关于网络日志的内容,是在部署网站的时候,看到访问日志里记录的ip地址不对,解决如何获取客户端真实ip地址的问题的同时,想到了关于网络日志合规性的内容,一并记录。 第一个问题:前端使用Nginx反向代理,
网络日志是一个平时不怎么被重视的东西,今天写到关于网络日志的内容,是在部署网站的时候,看到访问日志里记录的ip地址不对,解决如何获取客户端真实ip地址的问题的同时,想到了关于网络日志合规性的内容,一并记录。
 
第一个问题:前端使用Nginx反向代理,后端Aapche如何获取真实ip 在简易的Nginx反向代理架构中,客户端访问网址,直接访问到的是前端代理服务器,代理服务器获取请求后,再将代理转发给后端的服务器,如此,代理服务器拿到了客户端的ip地址,而后端服务器拿到的是代理服务器的ip地址,导致了后端服务器记录的日志内容不准确。
 
 
 
当查看后端Apache服务器的访问日志时,每一行网络请求对应的ip地址都是相同的,而且正是前端nginx反向代理服务器的ip地址。
 
 
nginx和apache都是可配置的,通过修改nginx和apache的配置,可以实现将客户端的真实ip地址传递至后端apache服务器。 直接贴出两个配置文件如下:
 
#nginx 站点配置文件
server {
    listen       80;
    server_name  luoanman.com www.luoanman.com;
    rewrite ^(.*)$ https://$host$1  permanent;
}
server {
    listen       443 ssl;
    server_name  luoanman.com www.luoanman.com;
    ssl_certificate   /var/www/www-luoanman-com/luoanman/www.luoanman.com.pem;
    ssl_certificate_key  /var/www/www-luoanman-com/cert/www.luoanman.com.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-Ip $remote_addr;
        proxy_set_header X-NginX-Proxy true;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://localhost:8080;
        proxy_redirect off;
    }
}
apahce启用remoteip模块,修改两处配置。
 
#启用remoteip_module
LoadModule remoteip_module modules/mod_remoteip.so
#修改httpd.conf
<IfModule remoteip_module>
        RemoteIPHeader X-Forwarded-For
        RemoteIPInternalProxy 127.0.0.1
 
</Ifmodule>
#修改httpd.conf
LogFormat "%a %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined
    LogFormat "%a %l %u %t "%r" %>s %b" common
<IfModule logio_module>
    # You need to enable mod_logio.c to use %I and %O
    LogFormat "%a %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %I %O" combinedio
</IfModule> 

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读