linux 安装tomat

2024-02-09 19:38
文章标签 linux 安装 tomat

本文主要是介绍linux 安装tomat,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.1     安装JDK

[root@genilex01 ~]#sh jdk-6u45-linux-x64.bin

[root@genilex01 ~]#mkdir -p /app/jdk

[root@genilex01 ~]#mv jdk1.6.0_45/ /app/jdk

在/etc/profile文件的最后增加如下内容:

[root@genilex01java]#vi /etc/profile

exportJAVA_HOME=/app/jdk

exportCLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar

exportPATH=$PATH:$JAVA_HOME/bin

1.2     验证JDK

[root@genilex01 java]# java -version

java version"1.6.0_45"

Java(TM) SE RuntimeEnvironment (build 1.6.0_45-b06)

Java HotSpot(TM)64-Bit Server VM (build 20.45-b01, mixed mode)

2      安装Tomcat

2.1     系统准备

#更急实际的用户名进行更改

[root@localhost ~]#groupadd tomcat

[root@localhost ~]#useradd -g –s/sbin/nologin tomcat tomcat

[root@localhost ~]#mkdir -p /app/tomcat

[root@localhost ~]#chown tomcat:tomcat /app/tomcat/

2.2     安装插件

插件用root用户安装

2.2.1  APR

mkdir –p /software

cp apr-1.4.8.tar.gz/software/

cd /software

tar -xzfapr-1.4.8.tar.gz

cd apr-1.4.8

./configure ;make;make install

2.2.2  APR-UTIL

cpapr-util-1.5.2.tar.gz /software

cd /software

tar -xzfapr-util-1.5.2.tar.gz

cd apr-util-1.5.2

./configure--with-apr=/usr/local/apr  ;make;make install

2.3     解压tomcat

[root @genilex01 ~]#unzip apache-tomcat-7.0.42.zip

[root @genilex01 ~]#mv apache-tomcat-7.0.42 /app/tomcat

[tomcat@genilex01 ~]#

[root @genilex01 ~]#chown -R tomcat:tomcat /app/tomcat

 

2.4     配置Tomcat环境

2.4.1  配置RPR插件

[root@genilex01 ~]cd/app/tomcat/bin/

[root@genilex01 ~]tarzxvf tomcat-native.tar.gz  

[root@genilex01 ~]cdtomcat-native-1.1.27-src/jni/native  

[root@genilex01~]./configure --with-apr=/usr/local/apr --with-java-home=/app/jdk/

[root@genilex01~]make  

[root@genilex01~]make install

2.4.2  为Tomcat的启动脚本等增加权限

使用Tomcat用户操作

[root@genilex01 ~]su- tomcat

[tomcat@genilex01 ~]# cd /app/tomcat/bin/

[tomcat@genilex01 bin]# chmod u+x startup.sh catalina.sh shutdown.sh setclasspath.sh

2.4.3  修改用户的环境变量

使用Tomcat用户操作,增加用户的环境变量

vi .bash_profile

 

exportCATALINA_HOME=/app/tomcat

exportPATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$CATALINA_HOME/bin

exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib

[tomcat@test ~]$ ..bash_profile

2.4.4  优化JVM

在100行位置增加jvm的选项

说明:

-Xms256m 设置为物理内存*1/2

-Xmx512m设置为物理内存*1/2

PermSize设置为物理内存*1/64

MaxPermSize设置为物理内存*1/4

如下是24G物理内存的配置结果

[tomcat@test bin]$ vi/app01/tomcat7/bin/catalina.sh

JAVA_OPTS="-server–Xms1024m –Xmx2048m -XX:PermSize=384M -XX:MaxPermSize=6144M"

2.4.1   Tomcat优化

修改/app/tomcat/conf/server.xml

修改前:

   <Connector port="8080" protocol="HTTP/1.1"

              connectionTimeout="20000"

              redirectPort="8443" />

修改后:

    <Connector port="8080" protocol="HTTP/1.1"

                  maxHttpHeaderSize="8192" useBodyEncodingForURI="true"

                  maxThreads="2000"

                  enableLookups="false"

                  connectionTimeout="20000"

                  compression="on"

                  compressionMinSize="2048"

compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"

                  redirectPort="8443" />

2.5     日常维护

2.5.1  启动Tomcat

使用Tomcat用户操作

[tomcat@genilex01 ~]# cd /app/tomcat/bin/

[tomcat@genilex01  bin]# su - tomcat -c “catalina.sh start"

./startup.sh

2.5.2  关闭Tomcat

使用Tomcat用户操作

[tomcat@genilex01 ~]# cd /app/tomcat/bin/

[tomcat@genilex01 bin]# ./shutdown.sh

2.6      tomat安全

4.6.1 .删除%tomcatRoot%/webapps目录下的examples、docs文件夹

4.6.2.修改%tomcatRoot%/conf/tomcat-users.xml

所有用户都注释掉,配置如下:

<?xmlversion='1.0' encoding='utf-8'?>

<tomcat-users>

<!—

  <rolerolename="tomcat"/> 

  <rolerolename="role1"/> 

  <rolerolename="manager"/> 

  <rolerolename="admin"/> 

  <user username="tomcat"password="tomcat" roles="tomcat"/> 

  <userusername="both" password="tomcat"roles="tomcat,role1"/> 

  <userusername="role1" password="tomcat"roles="role1"/> 

  <userusername="admin" password="admin"roles="manager"/> 

-->

</tomcat-users>

如果业务需要内置的Tomcat用户,则需要给其分配合理的权限,密码设置符合密码策略,Tomcat角色类型如下: role1:具有读权限; tomcat:具有读和运行权限; admin:具有读、运行和写权限; manager:具有远程管理权限。

4.6.3

1) 删除webapps目录下Tomcat原有的所有内容

2) 删除conf/Catalina/localhost/下的host-manager.xml和manager.xml这两个文件

 

4.6.4 禁止列目录

修改%tomcatRoot%/conf/tomcat-users.xml 将Listtings的值设置成false(6.0的版本已经默认设置成false,其他版本的请自行查看哈)

<init-param><param-name>listings</param-name><param-value>false</param-value></init-param>

4.6.5关闭服务器端口:

server.xml默认有下面一行

<Server port="8005" shutdown="Genilex@2016">

4.6.6编辑conf/web.xml,在</web-app>标签上添加以下内容:

  <error-page>

    <error-code>404</error-code>

    <location>/404.html</location>

</error-page>

<error-page>

    <error-code>500</error-code>

    <location>/500.html</location>

</error-page>

4.6.7 用普通用户启动

useradd -M -s /sbin/false tomcat

chown -R tomcat.tomcat /usr/local/src/apache-tomcat-6.0.37

su - tomcat -c "/usr/local/src/apache-tomcat-6.0.37/bin/catalina.shstart"

 

 4.6.8  隐藏Tomcat版本信息

在默认配置下,当应用出现异常时,客户端会显示Tomcat的版本信息。攻击者可以根据Tomcat版本信息选择漏洞库攻击,所以需要将Tomcat的版本信息隐藏,将$CATALINA_HOME\lib\catalina.jar\org\apache\catalina\util中的配置ServerInfo.properties如下:

server.info=需要展现的信息如SmartCity

server.number=SmartCity

server.built=20140101

4.6.9关闭war自动部署

默认的配置war放在$CATALINA_HOME\webapps中会自动部署,所以关闭war自动部署防止被植入木马等恶意程序。将$CATALINA_HOME\conf\server.xml配置如下:

<Hostname="localhost"

       appBase="webapps"

    unpackWARs="false"

   autoDeploy="false"

    xmlValidation="false"

    xmlNamespaceAware="false">

 




注意:域名问题

删除原 webapps/ROOT 目录下的所有文件,修改文件“conf/server.xml”,在Host节点下增加如下Context的内容配置:

<Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true"xmlValidation="false" xmlNamespaceAware="false">......    <Context path="" docBase="C:/apache-tomcat-6.0.32/myapps/bc.war"></Context>
</Host>





这篇关于linux 安装tomat的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/695114

相关文章

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全