unix类系统的root用户具有极大的权利,所以很多时候我们不希望程序以root身份启动,这也就是配置Tomcat以指定身份(非root)启动的初衷,虽然也没人来攻击我的服务器,但本着学习学习的目的,也来玩一下。
1.首先进入Tomcat官网(http://tomcat.apache.org/)下载Tomcat9的以.tar.gz打包压缩方式的二进制压缩包。
2.在Ubuntu中使用wget命令下载到本地
3.Ubuntu下一般将第三方程序安装到/usr/local目录下,所以将下载好的tomcat安装包移动到/usr/local目录下执行tar -zvxf apache-tomcat-9.0.0.M4.tar.gz
4.解压完成后进入Tomcat安装目录的bin文件夹找到commons-daemon-native.tar.gz,同样执行tar -zvxf commons-daemon-native.tar.gz
5.解压完成后会在bin目录下生成一个commons-daemon-1.0.15-native-src目录,进入./commons-daemon-1.0.15-native-src/unix目录
6.执行目录下./configure文件(注:执行此命令需配置java环境变量,如果未配置需以--with-java= 指定java安装目录)
7.上一步成功后执行make命令
8.执行成功后会在当前目录生成一个jsvc的目录,将其复制到tomcat的bin目录下,cp jsvc ../../
9.为Tomcat添加一个指定的用户,本例中以tomcat为用户名:useradd tomcat -M -d / -s /usr/sbin/nologin。(-M不创建用户主目录 -d指定用户主目录 -s指定用户shell)
10.回到Tomcat安装目录的bin目录中:cd ../../
11.使用vi或者vim修改bin目录下的daemon.sh文件,设置TOMCAT_USER=tomcat,JAVA_HOME=/usr/lib/jdk1.8.0_91,保存退出
12.设置tomcat安装目录下所有文件的所有者和所属组为tomcat(由于tomcat是由root解压的,所有文件所属权为root,如果不进行移权其他用户将无法启动tomcat服务):chown -R tomcat:tomcat /usr/local/Tomcat9
13.然后在Tomcat安装目录的bin目录下就可以使用daemon.sh start命令启动Tomcat服务
14.为了方便我们将Tomcat设置为服务(在init.d下创建软连接):ln -s /usr/local/Tomcat9/bin/daemon.sh /etc/init.d/Tomcat9
15.这样就可以使用service Tomcat9 start进行启动了
16.设置Tomcat为开机自启动服务,需先将tomcat设置为服务:update-rc.d Tomcat9 defaults
17.如果想移除Tomcat开机自启动,执行以下命令:update-rc.d Tomcat9 remove
以上内容是在http://www.2cto.com/os/201405/297777.html指导下,根据实际情况进行的配置
Ubuntu配置Tomcat9非root用户启动的更多相关文章
-
二进制方式安装docker(非root用户启动docker)
二进制方式安装docker(非root用户启动docker) 一.下载安装包: 地址:https://download.docker.com/linux/static/stable/x86_64/ 这 ...
-
【出错记录】Tomcat非root用户启动无法拥有权限读写文件
简单记录下,如有必要,将深入补充: 一.非root用户运行Tomcat及原因 由于项目中,为了安全需要,Tomcat将禁止以root形式启动,原因很简单,举个例子,一旦有人恶意将jsp文件透过某个别的 ...
-
Ubuntu环境下非root用户指定版本Python的安装及虚拟环境virtualenv的使用
Ubuntu环境下非root用户指定版本Python的安装及虚拟环境virtualenv的使用 参考博客: https://blog.csdn.net/leviopku/article/details ...
-
centos7新增用户并授权root权限、非root用户启动tomcat程序
一.centos7新增用户并授权root权限 cat /etc/redhat-release查看centos版本号 1.禁用root账户登录 vim /etc/ssh/sshd_config 找到这一 ...
-
使用非root用户启动tomcat
以下操作均为以root用户运行1.添加tomcat用户组 /usr/sbin/groupadd tomcat 2.添加tomcat用户,并限制登录 /usr/sbin/useradd -s /bin/ ...
-
短网址资料-nginx非root用户启动-systemctl启动脚本-分割root权限
https://www.cnblogs.com/aspnethot/articles/3492191.htmlhttps://www.cnblogs.com/aspnethot/articles/34 ...
-
Centos6.4 设置开机自动以某个非root用户启动脚本
开机自动运行脚本,可以将脚本的执行命令放在 /etc/rc.d/rc.local 文件中,但是这样开机自动运行这个脚本的用户默认为root. 如果想以某个非root用户运行脚本,可以使用如下命令: s ...
-
zzw原创_非root用户启动apache的问题解决(非root用户启动apache的1024以下端口)
场景:普通用户编译的apache,要在该用户下启动1024端口以下的apache端口 1.假设普通用户为sims20,用该用户编译 安装了一个apache,安装路径为/opt/aspire/produ ...
-
非ROOT用户启动Tomcat
[root@Z ~]# adduser tomcat [root@Z ~]# chown -R tomcat:tomcat /usr/local/tomcat/ [root@Z ~]# chown - ...
随机推荐
-
Mono for Android—初体验之“电话拨号器”
1.Main.axml文件: <?xml version="1.0" encoding="utf-8"?><LinearLayout xmln ...
-
后台树状菜单,js实现递归无限分类
//新闻类别管理 public function new_classify() { $arr = M('news_classify')->where("fid = 0")-& ...
-
CF# 334 Alternative Thinking
A. Alternative Thinking time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
-
C++文件操作(输入输出、格式控制、文件打开模式、测试流状态、二进制读写)
1.向文件写数据 头文件#include <ofstream> ①Create an instance of ofstream(创建ofstream实例) ②Open the file w ...
-
JZ2440开发笔记(7)——2440启动方式
JZ2440的启动方式有两种,一种是从NOR FLASH中启动,还有一种就是从NAND FLASH中启动. 如果从NOR FLASH启动,CPU会访问NOR FLASH的0地址,而0地址位于BANK0 ...
-
更多隐式Intent用法
上几篇无论是显示的Intent或者隐式的Intent,都是要跳转的自己添加指定的页面,如果想要跳转到百度首页或者跳转到联系人面板等,前面的知识显然是很不实用的.这里,将要针对其它的一些Intent用法 ...
-
Java 集合 持有引用 &; WeakHashMap
Java 集合 持有引用 & WeakHashMap @author ixenos 摘要:强引用.弱引用.WeakHashMap动态回收步骤 Reference引用对象 可获得的(reacha ...
-
【Java SE】如何用Java实现插入排序
摘要:前面三期分别写了三篇简单排序的算法,今天来讲一点稍微难一点的排序算法-----插入排序. 基本思想: 设n个数据已经按照顺序排列好(假定从小排到大). 输入一个数据x,将其放在恰当的位置,使其顺 ...
-
[AH/HNOI2017]礼物
\[推推公式,即求\Sigma^{n}_{i=1} (x_{i+k}-y_i+c)^2最小,c范围为[-m, m]\] \[拆开,就是\Sigma x_i^2 + \Sigma y_i^2 + n * ...
-
EECS 649 Introduction to Artificial Intelligence
EECS 649 Introduction to Artificial IntelligenceExamElectronic Blackboard Submission Due: April 24, ...