2013年10月13日

Linux 安裝 tomcat 筆記

安裝JDK或JRE

Oracle JAVA 下載 JDK,請根據系統環境下載安裝程式,我選用 tarball 安裝。
shell># jdk-6u42-linux-x64.tar.gz
shell># chmod 700 jdk-6u42-linux-x64.bin
shell># ./jdk-6u42-linux-x64.bin

執行後會安裝於 /usr/java 下,安裝程式會自動建立符號連結 /usr/java/latest 到最新一版的目錄,若要設定使用者的 JAVA_HOME 環境,請依如下設定
shell># vim ~/.bash_profile
新增
JAVA_HOME=/usr/java/latest
export JAVA_HOME


安裝Tomcat


step1:
下載Tomcat 7版二進位安裝檔,解壓縮後放在 /volume/apache-tomcat-7.0.42 ( 安裝路徑端看你想安裝於哪個目錄下 ),並建立符號連結到該目錄,目的是為了日後升級 tomcat 時,所有的環境設定都統一設定為 /volume/tomcat


step2:
新增 tomcat 系統帳號,且不允許該帳號登入
shell># useradd tomcat -c “Tomcat service” -u 400 -d /volume/tomcat -M -s /sbin/nologin


step3:
編譯 jsvc 服務管理程式( 需 gcc make autoconf才能編譯 )
shell># cd $CATALINA_HOME/bin  ( $CATALINA_HOME 就是 tomcat 家目錄,以我的環境為 /volume/tomcat )
shell># tar xvfz commons-daemon-native.tar.gz
shell># cd commons-daemon-1.0.x-native-src/unix
shell># ./configure --with-java=/usr/java/latest
shell># make
shell># cp jsvc ../..
shell># cd ../..


step4:
編輯啟動script設定
shell># vim /volume/tomcat/bin/daemon.sh
修改 88 行設定JAVA環境變數,請將註解拿掉
JAVA_HOME=/usr/java/latest
tomcat預設的帳號就是 tomcat,若要更換其他帳號請修改第 86 行
test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat  ← 將最後的 tomcat 換成想要的帳號


啟動服務
shell># /volume/tomcat/bin/daemon start


停用服務

shell># /volume/tomcat/bin/daemon stop


強化Tomcat的資安設定

1.不要使用root帳號啟動Tomcat, 而是用較小權限的帳號執行服務
2.除temp, work及logs目錄權限為tomcat.tomcat外, 其餘目錄權限為root.tomcat, 此外擁有者權限為read/write, 群組權限為read
3.將shutdown port設定為-1來關閉功能或設定密碼限制
4.因Tomcat附帶的webapps曾經發生資安問題, 請直接移除(tomcat/webapps/{docs,ROOT,manager,host-manager}
5.關閉自動佈署功能

 

沒有留言:

張貼留言