Ubuntu下Tomcat 6安全配置policy策略

简介: Ubuntu下Tomcat 6安全配置policy策略 之前一直都没了解过Tomcat的安全策略, 一直到一天, 我把在window下开发好的工程, 直接复制到公司测试环境(Redhat + Apache tomcat 6.0.26.tar.gz版)能正常运行, 而拖到虚拟机里的Ubuntu(sudo apt-get install tomcat6)里运行,发现servlet跑不起来。
Ubuntu下Tomcat 6安全配置policy策略

之前一直都没了解过Tomcat安全策略

一直到一天,

我把在window下开发好的工程,

直接复制到公司测试环境(Redhat + Apache tomcat 6.0.26.tar.gz版)能正常运行,

而拖到虚拟机里的Ubuntu(sudo apt-get install tomcat6)里运行,发现servlet跑不起来。。

其中的Exception包括:

javax.servlet.ServletException java.lang.ExceptionInInitializerError org.hibernate.cfg.Configuration.(Configuration.java:120) java.security.AccessControlException: access denied (java.util.PropertyPermission org.apache.commons.logging.LogFactory.HashtableImpl read)

一下给搞蒙了,以为是漏了jar包,

发现一模一样,没少传,

再仔细看第一次运行的时候的报错信息,

找出了一点腻端,发现跟security策略有关,

于是打开tomcat服务启动文件/etc/init.d/tomcat6

发现有一个跟安全配置相关的语句:TOMCAT6_SECURITY=yes

抱着试试看的态度,把它注释掉,

重启tomcat,居然能正常跑起来了。

于是google一番tomcat security配置,

找到原来在tomcat/policy.d/下有一系列的策略文件,

在里面给工程下的WEB-INF/classesWEB-INF/lib目录添加上所有权限即可解决问题

我的解决步骤如下:

1、把工程放到/var/lib/tomcat/webapps/下(自己修改server.xml设置Context虚拟目录也是一样);

2、修改tomcat/policy.d/50local.policy文件,

最后添加上:

// The permissions granted to the context WEB-INF/classes directory
grant codeBase "file:${catalina.base}/webapps/test/WEB-INF/classes/-" {
   permission java.security.AllPermission;
};

// The permissions granted to the context WEB-INF/lib directory
grant codeBase "file:${catalina.base}/webapps/test/WEB-INF/lib/-" {
   permission java.security.AllPermission;
};
注意上面的路径修改为工程的下对应目录的路径即可。

3、重启tomcat,工程顺利跑起来了。


links:http://hi.baidu.com/lane727/blog/item/4a7275d161331938970a16cc.html
目录
相关文章
|
1月前
|
安全 应用服务中间件 网络安全
Tomcat如何配置PFX证书?
【10月更文挑战第2天】Tomcat如何配置PFX证书?
155 7
|
1月前
|
存储 算法 应用服务中间件
Tomcat如何配置JKS证书?
【10月更文挑战第2天】Tomcat如何配置JKS证书?
235 4
|
1天前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
11 2
|
26天前
|
Java Shell 应用服务中间件
Mac系统下配置环境变量:Javajdk、maven、tomcat 环境变量配置及对应配置文件
这篇文章介绍了如何在Mac系统下配置Java JDK、Maven和Tomcat的环境变量,包括配置文件的选择、解决环境变量在zsh shell中无效的问题、查看和设置系统环境变量的方法,以及JDK和Maven的下载、配置和测试步骤。
1038 1
Mac系统下配置环境变量:Javajdk、maven、tomcat 环境变量配置及对应配置文件
|
27天前
|
网络协议 Ubuntu 网络安全
|
1月前
|
消息中间件 监控 Ubuntu
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
66 3
大数据-54 Kafka 安装配置 环境变量配置 启动服务 Ubuntu配置 ZooKeeper
|
1月前
|
资源调度
Ubuntu22.04静态ip配置+yarn build后显示内存超限,变异失败
Ubuntu22.04静态ip配置+yarn build后显示内存超限,变异失败
35 2
Ubuntu22.04静态ip配置+yarn build后显示内存超限,变异失败
|
28天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
223 3
|
2月前
|
应用服务中间件 Docker 容器
docker应用部署---Tomcat的部署配置
这篇文章介绍了如何使用Docker部署Tomcat服务器,包括搜索和拉取Tomcat镜像、创建容器并设置端口映射和目录映射,以及如何创建一个HTML页面并使用外部机器访问Tomcat服务器。
docker应用部署---Tomcat的部署配置
|
1月前
apache+tomcat配置多站点集群的方法
apache+tomcat配置多站点集群的方法
32 4
下一篇
无影云桌面