Tomcat 安全管理之禁用root用户运行
一、以非root身份运行 Tomcat配置
完成Tomcat安装后,请以非root身份运行Tomcat配置;
- Tomcat安装指引请参考Java应用服务Tomcat实战指南
1.1、基础操作
1、创建用户组 dev
groupadd dev
2、创建用户 tomcat
useradd -g dev -s /usr/sbin/nologin tomcat
3、配置tomcat
cd /application/tomcat/bin/ # 解压 tar xf commons-daemon-native.tar.gz # cd /application/tomcat/bin/commons-daemon-1.1.0-native-src/unix/ # 安装前的配置 及校验 ./configure # 编译/安装 make # 执行make后会生成一个jsvc文件,将其复制到tomcat的bin目录 cp jsvc /application/tomcat/bin
4、修改启动脚本文件
vim /application/tomcat/bin/daemon.sh
5、找到如下内容
test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat JAVA_HONE=/application/jdk
修改TOMCAT_USER=tomcat,"tomcat"为运行tomcat的用户,刚刚我们创建的用户即为tomcat,所以无需修改。
将JAVA_HOME前的注释(即“#”号)去除,并设置为我们当前系统JDK的所在目录(这里我是:/application/jdk)。
6、保存退出
:wq
1.2、更改tomcat目录权限
更改文件所有者
chown -R tomcat:dev /application/tomcat
赋予用户执行权
chmod a+x /application/tomcat/bin/daemon.sh
1.3、Tomcat 操作命令
后台运行
/application/tomcat/bin/daemon.sh start
前台运行
/application/tomcat/bin/daemon.sh run
停止
/application/tomcat/bin/daemon.sh stop
1.4、创建符号链接/软连接
ln -s /application/tomcat/bin/daemon.sh /etc/init.d/tomcat
1.5、配置Tomcat开机自启
vim /etc/init.d/tomcat
#chkconfig: 2345 10 90 #description:tomcat service CATALINA_HOME=/application/tomcat/ JAVA_HOME=/application/jdk
1.6、添加Tomcat至系统服务
赋予执行权限
chmod +x /etc/init.d/tomcat
添加到服务列表中
chkconfig --add tomcat
查看服务列表中是否添加成功
chkconfig --list | grep tomcat
设置开机启动
chkconfig tomcat on
手动启动/停止
/etc/init.d/tomcat stop #或 /etc/init.d/tomcat start service tomcat start #或 service tomcat stop
1.7、测试
手动启动Tomcat Service
service tomcat start
查看8080端口是否开启,开启了代表启动成功
netstat -an | grep 8080
至此已经可以禁用root用户运行并改用自定义用户实现开机自启Tomcat service。