设为首页 收藏本站
查看: 809|回复: 0

[经验分享] Tomcat以Daemon的方式启动(CentOS6&7)

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-11-29 10:02:13 | 显示全部楼层 |阅读模式
1 前言
一直以来都觉得Tomcat以root身份运行非常不安全,故研究Tomcat如何以普通用户身份运行,以下是参考网络上的一些配置实现Tomcat以daemon方式运行于CentOS 6&7系统下面。
2 实践部分
2.1 环境配置
2.1.1 系统环境
ipaddress=10.168.0.157
OS=CentOS 6&7
2.1.2 配置编译环境
1
yum -y install gcc gcc-c++ make expat-devel



2.1.3 下载JDK

1)下载页面:
http://www.oracle.com/technetwor ... nloads-2133151.html
2)下载选择
请选择“jdk-8u111-linux-x64.tar.gz”下载,命令行如下:
1
wget http://download.oracle.com/otn-p ... bbc10f72c89ee38910b



2.1.4 下载Tomcat
1)下载页面
http://tomcat.apache.org/
2)下载选择
请选择“Tomcat 9.0.0.M13”下载(注意选择“Binary Distributions”)版本,命令行如下:
1
wget http://apache.fayea.com/tomcat/t ... at-9.0.0.M13.tar.gz



2.1.5 配置防火墙
In CentOS 6
1
vim /etc/sysconfig/iptables



增加如下行:
1
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT



重启防火墙使服务生效
1
/etc/init.d/iptables restart



In CentOS 7
1
2
3
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --reload
firewall-cmd --list-all



2.2 配置JDK
2.2.1 创建java目录
1
mkdir /usr/java



2.2.2 解压

1
2
tar xf jdk-8u111-linux-x64.tar.gz
mv jdk1.8.0_111 /usr/java/



2.2.3 配置环境变量
1
vim /etc/profile



末尾加入如下内容:
1
2
3
4
export JAVA_HOME=/usr/java/jdk1.8.0_111
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH



注:以上配置只是为了下面的daemon环境的编译,编译完可以注释
2.2.4 配置生效
1
source /etc/profile



2.2.5 环境变量测试
1
java -version



2.3 配置Tomcat

2.3.1 创建tomcat目录
1
mkdir /usr/tomcat



2.3.2 解压
1
2
tar -xf apache-tomcat-9.0.0.M13.tar.gz
mv apache-tomcat-9.0.0.M13 /usr/tomcat/



2.3.3 配置环境变量
1
vim /usr/tomcat/apache-tomcat-9.0.0.M13/bin/setenv.sh



输入如下配置
1
2
3
4
5
JAVA_HOME=/usr/java/jdk1.8.0_111
JRE_HOME=${JAVA_HOME}/jre
CATALINA_HOME=/usr/tomcat/apache-tomcat-9.0.0.M13
CATALINA_BASE=${CATALINA_HOME}
JAVA_OPTS='-server -Xms2048m -Xmx4096m -Xss512k'



环境变量配置请参考以下命令输出的内容:
1
grep '^#' /usr/tomcat/apache-tomcat-9.0.0.M13/bin/catalina.sh



2.3.4 解压daemon工具包

1
tar -xf /usr/tomcat/apache-tomcat-9.0.0.M13/bin/commons-daemon-native.tar.gz



2.3.5 编译daemon工具包
1
2
3
cd /usr/tomcat/apache-tomcat-9.0.0.M13/bin/commons-daemon-1.0.15-native-src/unix/
./configure
make



2.3.6 配置daemon运行环境
1
2
3
cp jsvc /usr/tomcat/apache-tomcat-9.0.0.M13/bin/
useradd -M -d /usr/tomcat/apache-tomcat-9.0.0.M13/ -s /sbin/nologin tomcat
chown -R tomcat: /usr/tomcat/apache-tomcat-9.0.0.M13



2.3.7 手动测试服务启停

1
2
sudo -u tomcat /usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh start
sudo -u tomcat /usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh stop



确认服务正常启动与关闭:
1
netstat -antp



浏览器测试确认:
http://10.168.0.157:8080/
wKioL1g74fjwykvxAAJK_eYL5d8442.jpg
2.3.8 启动服务与配置服务开机启动
In CentOS 6
1
2
3
ln -s /usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh /etc/init.d/tomcat9
/etc/init.d/tomcat9 start
vim /etc/init.d/tomcat9



第二行加入如下内容:
1
# chkconfig: 2345 55 25



配置服务自启动:
1
chkconfig tomcat9 on



In CentOS 7
1
vim /lib/systemd/system/tomcat9.service



输入如下内容:
1
2
3
4
5
6
7
8
9
10
11
12
13
[Unit]
Description=seafile
After=network.target

[Service]
Type=forking
ExecStart=/usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh start
ExecReload=/usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh restart
ExecStop=/usr/tomcat/apache-tomcat-9.0.0.M13/bin/daemon.sh stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target



测试服务运行
1
2
3
systemctl start tomcat9.service
systemctl restart tomcat9.service
systemctl stop tomcat9.service



配置服务自启动
1
systemctl enable tomcat9.service



===============================================================


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-307070-1-1.html 上篇帖子: tomcat配置 下篇帖子: Tomcat使用JDBC Realm配置Basic认证
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表