linux 安装tomat

来源:互联网 发布:淘宝直播买翡翠 编辑:程序博客网 时间:2024/05/18 17:39

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>





0 0