阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux下非root用户运行Tomcat

111次阅读
没有评论

共计 2317 个字符,预计需要花费 6 分钟才能阅读完成。

# 前言:Linux 下为什么要使用非 root 用户运行 tomcat

root 用户启动 tomcat 有一个严重的问题,那就是 tomcat 具有 root 权限。

这意味着你的任何一个页面脚本 (html/js) 都具有 root 权限,所以可以轻易地用页面脚本 修改整个硬盘里的文件!

所以 最好不要使用 root 启动 tomcat

#  正文:非 root 用户运行 tomcat

## tomcat 安装

略 … 本文安装目录为 /opt/tomcat8

##  创建用户

# 创建用户组 dev
groupadd dev

# 创建用户 tomcat
useradd -g dev -s /usr/sbin/nologin tomcat

说明:-s /usr/sbin/nologin 禁止该用户登录。

也可以在用户创建之后执行

useradd -g dev
usermod -s | --shell /usr/sbin/nologin username

## tomcat 配置

### 编译安装服务守护程序

 
#
cd /opt/tomcat8/bin/
# 解压
tar vzxf commons-daemon-native.tar.gz
# 
cd /opt/tomcat8/bin/commons-daemon-1.0.15-native-src/unix/
# 安装前的配置 及校验
./configure
# 若未配置 $java_home 需指定 JDK 目录
./configure --with-java=/opt/jdk_1.7
 

如果出现如下错误提示,说明未设置 JAVA_HOME 变量

*** Java compilation tools ***
checking for JDK location... configure: error: Java Home not defined. Rerun with --with-java=... parameter

如果看到以下信息,就可以编译 / 安装了

*** All done ***
Now you can issue "make"

 

# 编译 / 安装
make
# 执行 make 后会生成一个 jsvc 文件,将其复制到 tomcat 的 bin 目录
cp jsvc /opt/tomcat8/bin

### 修改启动脚本文件

vi /opt/tomcat8/bin/daemon.sh

找到如下内容

test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
# Set JAVA_HOME to working JDK or JRE
# JAVA_HOME=/opt/jdk-1.6.0.22

修改 TOMCAT_USER=tomcat,”tomcat” 为运行 tomcat 的用户,本文创建的用户即为 tomcat,所以不用修改。

去除 JAVA_HOME 前的注释(即“#”号),并设置为 JDK 的所在目录(/opt/jdk_1.7)。

## 更改 tomcat 目录权限

# 更改文件所有者
chown -R tomcat:dev /opt/tomcat8
# 赋予用户执行权
chmod a+x /opt/tomcat8/bin/daemon.sh

# 附:tomcat 命令

# 后台运行
/opt/tomcat/bin/daemon.sh  start
# 前台运行
/opt/tomcat/bin/daemon.sh  run
# 停止
/opt/tomcat/bin/daemon.sh  stop
 
# 创建符号链接 / 软连接
ln -s /opt/tomcat8/bin/daemon.sh /etc/init.d/tomcat8
# tomcat8 添加至系统服务
chkconfig –-add tomcat8
#启动 / 停止
service  tomcat8 start/stop

更多 Tomcat 相关教程见以下内容

CentOS 6.6 下安装配置 Tomcat 环境  http://www.linuxidc.com/Linux/2015-08/122234.htm

RedHat Linux 5.5 安装 JDK+Tomcat 并部署 Java 项目  http://www.linuxidc.com/Linux/2015-02/113528.htm 

Tomcat 权威指南(第二版)(中英高清 PDF 版 + 带书签)  http://www.linuxidc.com/Linux/2015-02/113062.htm 

Tomcat 安全配置与性能优化 http://www.linuxidc.com/Linux/2015-02/113060.htm 

Linux 下使用 Xshell 查看 Tomcat 实时日志中文乱码解决方案 http://www.linuxidc.com/Linux/2015-01/112395.htm 

CentOS 64-bit 下安装 JDK 和 Tomcat 并设置 Tomcat 开机启动操作步骤 http://www.linuxidc.com/Linux/2015-01/111485.htm 

Ubuntu 16.04 下安装 Tomcat 8.5.9  http://www.linuxidc.com/Linux/2017-06/144809.htm

Ubuntu 16.04 安装 Tomcat 8 图解  http://www.linuxidc.com/Linux/2017-10/147773.htm

Tomcat 配置文件 server.xml 详解  http://www.linuxidc.com/Linux/2017-10/148003.htm

Tomcat 单机多实例部署 - 多项目部署  http://www.linuxidc.com/Linux/2017-10/147259.htm

Tomcat 的详细介绍:请点这里
Tomcat 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-12/149760.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2317字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中