geoserver发布图层修复安全漏洞

一、关闭geoserver服务web、rest、gwc/rest管理页面

1、tomcat

tomcat发布的geoserver服务中,进入tomcat/webapps/geoserver/WEB-INF,打开web.xml文件,

在文件最后添加如下配置

java 复制代码
<security-constraint>
     <web-resource-collection>
         <web-resource-name>Block web and rest</web-resource-name>
         <url-pattern>/web/*</url-pattern>
         <url-pattern>/rest/*</url-pattern>
         <url-pattern>/gwc/*</url-pattern>
         <url-pattern>/web.html</url-pattern>
         <url-pattern>/web.htm</url-pattern>
         <url-pattern>/web.webj</url-pattern>
         <url-pattern>/web.web</url-pattern>
         <url-pattern>/web.jsp</url-pattern>
         <url-pattern>/web.jspx</url-pattern>
         <url-pattern>/rest.html</url-pattern>
         <url-pattern>/rest.htm</url-pattern>
         <url-pattern>/rest.webj</url-pattern>
         <url-pattern>/rest.web</url-pattern>
         <url-pattern>/rest.jsp</url-pattern>
         <url-pattern>/rest.jspx</url-pattern>
     </web-resource-collection>
     <auth-constraint>
         <!-- 空auth-constraint表示不允许任何角色访问 -->
     </auth-constraint>
 </security-constraint>

配置完成后重启tomcat

2、东方通

通过东方通发布的geoserver服务,与tomcat类似,配置完成后重启东方通

3、nginx

通过nginx代理geoserver服务,在nginx的配置文件nginx.conf中添加相关配置

java 复制代码
http中添加白名单配置
geo  $admin_whitelist {
    default 0;
    127.0.0.1 1;
    192.168.1.0/24 1;
    58.247.17.139 1;
}
java 复制代码
# GeoServer 配置
location /geoserver/ {
	 #       proxy_pass http://127.0.0.1:2443;
	 #       proxy_set_header Host $host;
	 #       proxy_set_header X-Real-IP $remote_addr;


		 location ~* ^/geoserver/(web|rest) {
		
		        # 重要:确保 proxy_pass 正确工作
		        proxy_pass http://127.0.0.1:2443;
		        
		
		        proxy_set_header Host $host;
		        proxy_set_header X-Real-IP $remote_addr;
		        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		        proxy_set_header X-Forwarded-Proto $scheme;
		
		           if ($admin_whitelist != 1) {
		                access_log logs/geoserver_admin_denied.log;
		                return 403;
		            }
		            allow all;
		            access_log logs/geoserver_admin_access.log;
		
		}

		location ~* ^/geoserver/([^/]+)/(wms|wfs|wcs|wmts|ows) {
		        # 重要:确保 proxy_pass 正确工作
		        proxy_pass http://127.0.0.1:2443;
		         
		        proxy_set_header Host $host;
		        proxy_set_header X-Real-IP $remote_addr;
		        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		        proxy_set_header X-Forwarded-Proto $scheme;
		
	            allow all;
	            proxy_read_timeout 120s;
		
		}

   deny all;
   return 404;
}

4、geoserver添加authkey认证访问

第一步:在官网下载对应版本的authkey插件

第二步:将下载的插件jar包,放到geoserver的lib目录中geoserver\WEB-INF\lib

第三步:启动geoserver,进入后台管理页面,一定需要修改密码

第四步:配置权限认证。添加UUID b52d2068-0a9b-45d7-kedu-144d12222025

第五步:设置过滤器


第六步:添加过滤器


第七步:保存配置

第八步:访问测试,访问所有的工作空间都需要加&authkey=b52d2068-0a9b-45d7-kedu-144d12222025

相关推荐
开开心心就好1 小时前
操作简单的ISO文件编辑转换工具
java·前端·科技·edge·pdf·安全威胁分析·ddos
一名优秀的码农16 小时前
vulhub系列-62-dcoffeaddicts(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析
我是李龙19 小时前
第二十六章 全链路监控体系: 服务器资源、中间件状态与业务指标的可视化大屏开发
中间件
别抢我的锅包肉2 天前
FastAPI + Vue3 + Vite 跨域报错全解:从 `Access-Control-Allow-Origin missing` 到彻底修复
中间件·状态模式·fastapi
爱吃烤鸡翅的酸菜鱼2 天前
Java 事件发布-订阅机制全解析:从原生实现到主流中间件
java·中间件·wpf·事件·发布订阅
my_styles2 天前
linux系统下安装 tengine / 宝兰德等国产信创中间件和闭坑
linux·运维·服务器·spring boot·nginx·中间件
ZHENGZJM2 天前
Gin 鉴权中间件设计与实现
中间件·gin
一名优秀的码农2 天前
vulhub系列-64-Cereal: 1(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析
一名优秀的码农2 天前
vulhub系列-66-Hms?: 1(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析
开心码农1号2 天前
mq是什么,常用mq的使用场景有哪些?
中间件·rabbitmq