在Debian系統下配置Tomcat時,有幾個關鍵要點需要注意,以確保服務器的安全性、性能和可用性。以下是一些主要的配置要點:
apt-get安裝Tomcat及其管理工具。例如,安裝Tomcat 9:sudo apt update
sudo apt install tomcat9 tomcat9-admin
/etc/tomcat9/tomcat-users.xml中設置管理用戶,賦予他們必要的權限:<tomcat-users>
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="your_strong_password" roles="manager-gui,admin-gui"/>
</tomcat-users>
/etc/tomcat9/server.xml文件,修改HTTP和HTTPS的端口號:<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/>
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true"/>
server.xml中使用<Host>標簽配置多個虛擬主機:<Engine name="Catalina" defaultHost="www.example.com">
<Host name="www.example1.com" appBase="webapps/example1" unpackWARs="true" autoDeploy="true"/>
<Host name="www.example2.com" appBase="webapps/example2" unpackWARs="true" autoDeploy="true"/>
</Engine>
server.xml中配置連接器以優化性能:<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="200" minSpareThreads="10" acceptCount="100" compression="on" compressionMinSize="2048"/>
web.xml中配置錯誤頁面,防止泄露服務器版本信息。logging.properties文件,啟用按天分割日志文件,防止日志文件過大:handlers = 1catalina.org.apache.juli.AsyncFileHandler
/etc/systemd/system/tomcat9.service文件,以便使用systemd管理服務:[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment=JAVA_HOME=/usr/lib/jvm/default-java
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" sslEnabledProtocols="TLSv1.2"/>
通過以上配置要點,可以確保在Debian系統下運行的Tomcat服務器既安全又高效。根據具體需求,可能還需要進行更多的調優和配置。