Apache Tomcat 9’u Debian 10 Üzerine Kurulum Rehberi
Giriş
Apache Tomcat, Java tabanlı web uygulamalarını barındırmak için yaygın olarak kullanılan açık kaynaklı bir web sunucusu ve servlet konteyneridir. Java Servlet, JavaServer Pages (JSP), Java Expression Language (EL) ve Java WebSocket teknolojilerini destekler. Genellikle “Tomcat” olarak anılır ve Java uygulamaları için hafif, esnek ve performanslı bir çözüm sunar. Debian 10 (Buster), kararlılığı ve geniş paket desteği ile bilinen popüler bir Linux dağıtımıdır. Bu makale, Apache Tomcat 9’u Debian 10 sunucunuza adım adım nasıl kuracağınızı, yapılandıracağınızı ve yöneteceğinizi detaylı bir şekilde açıklayacaktır.
Bu rehber, Tomcat’i manuel olarak indirip kurmayı tercih eden ve sistem üzerinde daha fazla kontrol sahibi olmak isteyen kullanıcılar için tasarlanmıştır. Bu yöntem, Tomcat’in en son stabil sürümünü kullanmanıza ve kurulum dizinleri üzerinde tam esneklik sağlamanıza olanak tanır. Kurulum süreci, gerekli ön gereksinimlerin karşılanmasından, Tomcat servisinin systemd ile yönetilmesine ve temel güvenlik ayarlarının yapılmasına kadar tüm adımları kapsayacaktır.
Ön Gereksinimler
Tomcat 9 kurulumuna başlamadan önce aşağıdaki ön gereksinimlerin karşılandığından emin olmanız gerekmektedir:
* Debian 10 Sunucusu: Temiz bir Debian 10 (Buster) kurulumu.
* Sudo Yetkileri: Kurulumu gerçekleştirecek kullanıcının sudo yetkilerine sahip olması gerekmektedir. Root kullanıcısı olarak da işlem yapabilirsiniz, ancak güvenlik açısından sudo kullanmak daha iyi bir yaklaşımdır.
* İnternet Bağlantısı: Gerekli paketleri indirmek ve Tomcat arşivini çekmek için aktif bir internet bağlantısı.
* Minimum Donanım: Tomcat, genellikle çok fazla kaynak tüketmez, ancak çalıştıracağınız uygulamaların gereksinimlerine bağlı olarak yeterli CPU, RAM ve disk alanına sahip olmanız önemlidir. Genel bir kural olarak, en az 1GB RAM ve 2 CPU çekirdeği önerilir.
Bu ön gereksinimler sağlandığında, Tomcat kurulumuna sorunsuz bir şekilde devam edebilirsiniz.
Sistemi Güncelleme
Herhangi bir yazılım kurulumuna başlamadan önce, sunucunuzdaki paket listelerini güncellemek ve mevcut paketleri en son sürümlerine yükseltmek iyi bir uygulamadır. Bu, potansiyel uyumluluk sorunlarını önler ve sisteminizin güvenliğini artırır.
Terminalinizi açın ve aşağıdaki komutları çalıştırın:
sudo apt update
sudo apt upgrade -y
* sudo apt update: Bu komut, Debian paket yöneticisinin (APT) yerel paket indeksini güncelleyerek, mevcut tüm paketlerin en son sürümleri hakkında bilgi edinmesini sağlar.
* sudo apt upgrade -y: Bu komut, update ile edinilen bilgilere dayanarak, kurulu tüm paketleri mevcut en son sürümlerine yükseltir. -y bayrağı, tüm sorulara otomatik olarak “evet” yanıtı verilmesini sağlar, böylece yükseltme işlemi kesintisiz devam eder.
Sisteminiz güncellendikten sonra, bir sonraki adıma, yani Java Geliştirme Kiti (JDK) kurulumuna geçebiliriz.
Java Geliştirme Kiti (JDK) Kurulumu
Apache Tomcat, Java ile yazılmış bir uygulama olduğundan, çalışabilmesi için bir Java Çalışma Ortamına (JRE) veya daha iyisi bir Java Geliştirme Kitine (JDK) ihtiyaç duyar. JDK, JRE’nin tüm özelliklerine ek olarak derleyici ve hata ayıklayıcı gibi geliştirme araçlarını da içerir. Tomcat 9 için OpenJDK 8 veya OpenJDK 11 önerilir. Bu rehberde OpenJDK 11’i kuracağız, çünkü bu, Debian 10 için kararlı ve uzun süre desteklenen bir sürümdür.
Aşağıdaki komutla OpenJDK 11’i kurun:
sudo apt install openjdk-11-jdk -y
Kurulum tamamlandıktan sonra, Java’nın doğru bir şekilde kurulup kurulmadığını ve varsayılan sürümünü doğrulamak için aşağıdaki komutları kullanabilirsiniz:
java -version
javac -version
Bu komutlar, kurulu Java ve Java derleyicisinin sürümlerini göstermelidir. Çıktıda “OpenJDK Runtime Environment” ve “OpenJDK 64-Bit Server VM” gibi ifadeler görmelisiniz.
JAVA_HOME Ortam Değişkenini Ayarlama
Tomcat ve diğer bazı Java uygulamaları, Java kurulum dizinini bulmak için JAVA_HOME ortam değişkenine ihtiyaç duyar. Bu değişkeni doğru bir şekilde ayarlamak önemlidir.
Öncelikle, Java’nın tam kurulum yolunu bulalım. Genellikle update-alternatives komutu ile bulunabilir:
sudo update-alternatives --config java
Bu komut, sisteminizdeki yüklü Java sürümlerini listeleyecektir. OpenJDK 11 için yol genellikle /usr/lib/jvm/java-11-openjdk-amd64 şeklinde olacaktır. Bu yolu not alın.
Şimdi, JAVA_HOME ortam değişkenini sistem genelinde ayarlayacağız. Bunun için /etc/profile.d/ dizininde yeni bir dosya oluşturmak en iyi yöntemdir. Bu, her kullanıcı oturumu açtığında bu değişkenin otomatik olarak ayarlanmasını sağlar.
sudo nano /etc/profile.d/set-java-home.sh
Dosyanın içine aşağıdaki satırları ekleyin. JAVA_HOME yolunu kendi sisteminizdeki yolla değiştirmeyi unutmayın (genellikle yukarıda belirtilen yoldur):
#!/bin/bash
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin
Dosyayı kaydedin (Ctrl+O, Enter) ve kapatın (Ctrl+X).
Şimdi, bu betiği çalıştırılabilir hale getirin:
sudo chmod +x /etc/profile.d/set-java-home.sh
Ortam değişkeninin etkinleşmesi için oturumu kapatıp tekrar açmanız veya aşağıdaki komutu çalıştırmanız gerekir:
source /etc/profile.d/set-java-home.sh
JAVA_HOME değişkeninin doğru ayarlanıp ayarlanmadığını kontrol etmek için:
echo $JAVA_HOME
Bu komut, az önce ayarladığınız Java yolunu göstermelidir.
Apache Tomcat 9 Kurulumu
Java ortamı hazır olduğuna göre, şimdi Apache Tomcat 9’u indirip kurmaya başlayabiliriz. Tomcat’i doğrudan /opt dizinine kuracağız, bu Linux standartlarına göre isteğe bağlı yazılımlar için uygun bir yerdir.
Tomcat Kullanıcısı Oluşturma
Güvenlik açısından, Tomcat’i root kullanıcısı altında çalıştırmak yerine, özel bir tomcat kullanıcısı oluşturmak en iyi uygulamadır. Bu kullanıcı, yalnızca Tomcat’in ihtiyaç duyduğu minimum izinlere sahip olacaktır.
Aşağıdaki komutu kullanarak tomcat grubunu ve tomcat kullanıcısını oluşturun. -r bayrağı sistem kullanıcısı olduğunu belirtir, -d /opt/tomcat ana dizinini /opt/tomcat olarak ayarlar ve -s /bin/false kullanıcının kabuk erişimine sahip olmamasını sağlar (güvenlik için):
sudo groupadd tomcat
sudo useradd -r -g tomcat -d /opt/tomcat -s /bin/false tomcat
Tomcat Arşivini İndirme
Tomcat 9’un en son stabil sürümünü Apache Tomcat’in resmi web sitesinden indireceğiz. İndirme bağlantısını bulmak için Apache Tomcat 9 indirme sayfasına (örneğin https://tomcat.apache.org/download-90.cgi) gidip “Binary Distributions” altında “Core” bölümündeki “.tar.gz” bağlantısını kopyalayabilirsiniz.
Bu makalenin yazıldığı tarihte Tomcat 9’un en son sürümü 9.0.83 idi. Güncel sürümü kontrol etmek için resmi siteye bakmanız önemlidir.
Aşağıdaki komutu kullanarak Tomcat arşivini /tmp dizinine indirin:
cd /tmp
wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.83/bin/apache-tomcat-9.0.83.tar.gz
Not: v9.0.83 ve apache-tomcat-9.0.83.tar.gz kısmını indirdiğiniz güncel sürüme göre değiştirmeniz gerekebilir.
Tomcat Arşivini Çıkartma
İndirilen arşivi /opt/tomcat dizinine çıkaracağız. Önce /opt/tomcat dizinini oluşturalım:
sudo mkdir /opt/tomcat
Şimdi arşivi çıkarın ve içeriğini /opt/tomcat dizinine taşıyın. tar komutu ile sıkıştırılmış dosyayı açabiliriz:
sudo tar -xf apache-tomcat-9.0.83.tar.gz -C /opt/tomcat
Çıkartma işlemi tamamlandıktan sonra, Tomcat’in sürüm bağımsız bir sembolik bağlantısını oluşturmak iyi bir uygulamadır. Bu, gelecekte Tomcat’i yükseltirken veya farklı sürümler arasında geçiş yaparken kolaylık sağlar.
sudo ln -s /opt/tomcat/apache-tomcat-9.0.83 /opt/tomcat/latest
Artık Tomcat’e /opt/tomcat/latest yolu üzerinden erişebiliriz.
Dizin İzinlerini Ayarlama
tomcat kullanıcısının Tomcat kurulum dizinleri üzerinde doğru izinlere sahip olması çok önemlidir. Bu, Tomcat’in düzgün çalışmasını ve aynı zamanda güvenliğini sağlar.
Öncelikle, /opt/tomcat dizininin ve tüm içeriğinin sahipliğini tomcat kullanıcısı ve grubuna verin:
sudo chown -R tomcat:tomcat /opt/tomcat
Ardından, belirli dizinler ve dosyalar için uygun izinleri ayarlayın:
* conf dizini, tomcat kullanıcısının okuma erişimine sahip olması ve grubun yazma erişimine sahip olması gereken yapılandırma dosyalarını içerir. Diğerleri için yazma izni olmamalıdır.
* webapps, work, temp ve logs dizinleri, Tomcat’in uygulama dağıtımı, geçici dosyalar, çalışma alanı ve log dosyaları için yazma iznine ihtiyaç duyar.
* bin dizinindeki betikler (startup.sh, shutdown.sh vb.) yürütülebilir olmalıdır.
sudo chmod -R u+rwx /opt/tomcat/latest/conf
sudo chmod g+r /opt/tomcat/latest/conf/*
sudo chmod o-rwx /opt/tomcat/latest/conf/*
sudo chmod -R u+rwx /opt/tomcat/latest/webapps /opt/tomcat/latest/work /opt/tomcat/latest/temp /opt/tomcat/latest/logs
sudo chmod -R u+x /opt/tomcat/latest/bin
Bu komutlar, tomcat kullanıcısına gerekli okuma, yazma ve yürütme izinlerini verirken, diğer kullanıcılardan gereksiz erişimi kısıtlar.
Tomcat Servisini Oluşturma (systemd)
Tomcat’i manuel olarak başlatıp durdurmak yerine, systemd kullanarak bir servis olarak yönetmek çok daha pratiktir. Bu, Tomcat’in sistem başlangıcında otomatik olarak başlamasını, kolayca başlatılıp durdurulmasını ve durumunun izlenmesini sağlar.
Yeni bir systemd servis dosyası oluşturalım:
sudo nano /etc/systemd/system/tomcat.service
Dosyanın içine aşağıdaki içeriği yapıştırın. JAVA_HOME değişkenini kendi sisteminizdeki yolla eşleştiğinden emin olun (daha önce ayarladığımız set-java-home.sh dosyasındaki yol ile aynı olmalıdır).
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64"
Environment="CATALINA_PID=/opt/tomcat/latest/tomcat.pid"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_BASE=/opt/tomcat/latest"
ExecStart=/opt/tomcat/latest/bin/startup.sh
ExecStop=/opt/tomcat/latest/bin/shutdown.sh
ExecReload=/bin/kill -HUP $MAINPID
SuccessExitStatus=143
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
* [Unit] Bölümü: Servisin açıklamasını ve hangi servislerden sonra başlaması gerektiğini belirtir (bu durumda network.target‘tan sonra).
* [Service] Bölümü: Servisin nasıl çalıştırılacağını tanımlar.
* Type=forking: Servisin ana işleminin bir alt süreç oluşturup ana sürecin çıkacağını belirtir.
* User ve Group: Servisin tomcat kullanıcısı ve grubu altında çalışacağını belirtir.
* Environment: JAVA_HOME, CATALINA_PID, CATALINA_HOME ve CATALINA_BASE gibi ortam değişkenlerini ayarlar.
* ExecStart: Tomcat’i başlatmak için çalıştırılacak betiği belirtir.
* ExecStop: Tomcat’i durdurmak için çalıştırılacak betiği belirtir.
* ExecReload: Servisi yeniden yüklemek için bir komut sağlar (isteğe bağlı, Tomcat için genellikle restart tercih edilir).
* SuccessExitStatus=143: Servisin başarıyla durdurulduğunu belirtir.
* RestartSec=10: Hata durumunda yeniden başlatmadan önce 10 saniye bekler.
* Restart=always: Servis herhangi bir nedenle durursa otomatik olarak yeniden başlatılır.
* [Install] Bölümü: Servisin sistem başlangıcında nasıl etkinleştirileceğini belirtir. multi-user.target ile ilişkilendirilmiştir, bu da çok kullanıcılı moda geçildiğinde başlayacağı anlamına gelir.
Dosyayı kaydedin (Ctrl+O, Enter) ve kapatın (Ctrl+X).
Şimdi systemd’ye yeni servisi tanıtmak için yapılandırmayı yeniden yükleyin:
sudo systemctl daemon-reload
Tomcat servisini başlatın:
sudo systemctl start tomcat
Tomcat’in sistem başlangıcında otomatik olarak başlamasını sağlamak için etkinleştirin:
sudo systemctl enable tomcat
Servisin durumunu kontrol ederek doğru bir şekilde çalışıp çalışmadığını doğrulayın:
sudo systemctl status tomcat
Çıktıda active (running) ibaresini görmelisiniz.
Tomcat Web Arayüzüne Erişim ve Yönetici Ayarları
Tomcat varsayılan olarak 8080 portunu dinler. Sunucunuzda bir güvenlik duvarı (UFW gibi) etkinse, bu porta gelen trafiğe izin vermeniz gerekir.
Güvenlik Duvarı Yapılandırması (UFW)
Eğer UFW kullanıyorsanız, 8080 portuna izin vermek için aşağıdaki komutu çalıştırın:
sudo ufw allow 8080/tcp
sudo ufw enable # Eğer UFW etkin değilse
Web Arayüzüne Erişim
Şimdi bir web tarayıcısı açın ve sunucunuzun IP adresini veya alan adını 8080 portuyla birlikte kullanarak Tomcat ana sayfasına erişin:
http://SUNUCU_IP_ADRESINIZ:8080
Tomcat varsayılan ana sayfasını görmelisiniz. Bu sayfa, Tomcat’in başarıyla çalıştığını gösterir.
Yönetici Kullanıcıları Yapılandırma
Tomcat’in Yönetici (Manager App) ve Host Manager web arayüzleri, uygulamaları dağıtmak, sunucuyu izlemek ve sanal ana bilgisayarları yönetmek için kullanılır. Bu arayüzlere erişmek için kullanıcı adı ve şifre tanımlamanız gerekir.
Yapılandırma dosyası /opt/tomcat/latest/conf/tomcat-users.xml dosyasındadır. Bu dosyayı düzenleyin:
sudo nano /opt/tomcat/latest/conf/tomcat-users.xml
etiketleri arasına aşağıdaki ve tanımlarını ekleyin. Kendi güvenli kullanıcı adınızı ve güçlü bir şifre belirlediğinizden emin olun:
* manager-gui: Bu rol, Tomcat Manager web arayüzüne (uygulamaları dağıtma, durdurma, başlatma vb.) erişim sağlar.
* admin-gui: Bu rol, Host Manager web arayüzüne (sanal ana bilgisayarları yönetme) erişim sağlar.
Dosyayı kaydedin ve kapatın.
Değişikliklerin etkili olması için Tomcat servisini yeniden başlatmanız gerekir:
sudo systemctl restart tomcat
Şimdi tarayıcınızdan Tomcat ana sayfasına geri dönün (http://SUNUCU_IP_ADRESINIZ:8080). “Manager App” veya “Host Manager” düğmelerine tıkladığınızda, az önce oluşturduğunuz kullanıcı adı ve şifre ile giriş yapmanız istenecektir.
Uzak Erişim Kısıtlamasını Kaldırma (İsteğe Bağlı ve Güvenlik Notu ile)
Varsayılan olarak, Tomcat Manager ve Host Manager web arayüzlerine yalnızca localhost (sunucunun kendisi) üzerinden erişilebilir. Bu, güvenlik için iyi bir önlemdir. Ancak, eğer bu arayüzlere uzaktan erişmeniz gerekiyorsa, bu kısıtlamayı kaldırmanız veya belirli IP adreslerine izin vermeniz gerekir.
ÖNEMLİ GÜVENLİK UYARISI: Bu kısıtlamayı kaldırmak, sunucunuzu potansiyel güvenlik risklerine açık hale getirebilir. Yalnızca güvenli ağlarda veya VPN üzerinden erişim sağlandığında yapılmalıdır. Mümkünse, bu arayüzlere SSH tünelleme ile erişmeyi düşünün.
Kısıtlamayı kaldırmak için, ilgili context.xml dosyalarını düzenlemeniz gerekir:
* Manager App için: /opt/tomcat/latest/webapps/manager/META-INF/context.xml
* Host Manager için: /opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
Örneğin, Manager App için dosyayı açın:
sudo nano /opt/tomcat/latest/webapps/manager/META-INF/context.xml
Aşağıdaki satırı bulun:
Bu satırı yorum satırı yapmak ( arasına almak) veya belirli bir IP adres aralığına izin vermek için allow özniteliğini değiştirmek (örneğin, allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192\.168\.1\.1/24") isteyebilirsiniz.
Her iki context.xml dosyası için de aynı değişikliği yaptıktan sonra, Tomcat servisini yeniden başlatmayı unutmayın:
sudo systemctl restart tomcat
Tomcat Güvenliği İçin Ek Adımlar
Tomcat kurulumunuzu daha güvenli hale getirmek için bazı ek adımlar atmanız önemlidir.
Varsayılan Uygulamaları Kaldırma
Tomcat, kutudan çıktığında birkaç örnek uygulama ve dokümantasyon ile birlikte gelir (webapps/examples, webapps/docs, webapps/host-manager, webapps/manager). Üretim ortamında bu uygulamalara genellikle ihtiyaç duyulmaz ve potansiyel güvenlik açıkları oluşturabilirler. Kullanmayacaksanız bunları kaldırmanız önerilir:
sudo rm -rf /opt/tomcat/latest/webapps/examples
sudo rm -rf /opt/tomcat/latest/webapps/docs
Eğer Host Manager ve Manager App'i uzaktan kullanmıyorsanız ve SSH tünelleme gibi alternatifleriniz varsa, bunları da kaldırabilirsiniz:
sudo rm -rf /opt/tomcat/latest/webapps/host-manager
sudo rm -rf /opt/tomcat/latest/webapps/manager
Tomcat Portunu Değiştirme
Varsayılan 8080 portunu kullanmak yerine, daha az bilinen bir port kullanmak veya bir ters proxy (Nginx/Apache HTTPD) ile 80/443 portlarına yönlendirmek iyi bir güvenlik uygulamasıdır. Portu değiştirmek için /opt/tomcat/latest/conf/server.xml dosyasını düzenlemeniz gerekir:
sudo nano /opt/tomcat/latest/conf/server.xml
Aşağıdaki satırı bulun:
port="8080" değerini istediğiniz başka bir port numarasıyla değiştirin (örneğin, port="8081"). Güvenlik duvarınızı da yeni porta göre güncellemeniz gerekecektir.
SSL/TLS Yapılandırması (HTTPS)
Web uygulamalarınız hassas veriler içeriyorsa, trafiği şifrelemek için SSL/TLS (HTTPS) kullanmak zorunludur. Tomcat’i doğrudan SSL ile yapılandırabilir veya bir ters proxy (Nginx veya Apache HTTPD) kullanarak SSL sonlandırması yapabilirsiniz. Ters proxy yöntemi daha yaygın ve genellikle daha esnektir.
Tomcat’i doğrudan SSL ile yapılandırmak için, bir SSL sertifikasına (Let’s Encrypt veya ticari bir sertifika) ihtiyacınız olacaktır. /opt/tomcat/latest/conf/server.xml dosyasında, yorum satırı yapılmış olan SSL Connector’ü etkinleştirmeniz ve sertifika ayarlarını yapmanız gerekir. Bu, genellikle aşağıdaki gibi bir bölümü içerir:
Bu bölümü etkinleştirip certificateKeystoreFile, certificateKeystorePassword gibi değerleri kendi sertifika bilgilerinizle güncellemeniz gerekecektir. Bu, kendi başına detaylı bir konu olduğu için bu makalenin kapsamı dışındadır, ancak kurulum sonrası yapılması gereken önemli bir adımdır.
AJP Connector’ü Devre Dışı Bırakma
AJP (Apache JServ Protocol) Connector, Apache HTTPD gibi bir web sunucusunun Tomcat ile daha verimli bir şekilde iletişim kurmasını sağlar. Eğer Apache HTTPD veya Nginx gibi bir ters proxy kullanmıyorsanız, AJP Connector’e ihtiyacınız yoktur ve güvenlik nedeniyle devre dışı bırakmanız önerilir.
/opt/tomcat/latest/conf/server.xml dosyasında aşağıdaki satırı bulun ve yorum satırı yapın:
Başlatma Betiklerini Güvenli Hale Getirme ve Optimizasyon
Tomcat’in performansını ve güvenliğini artırmak için JAVA_OPTS ve CATALINA_OPTS ortam değişkenlerini kullanarak JVM (Java Virtual Machine) ayarlarını yapılandırabilirsiniz. Bu ayarlar, bellek limitleri, çöp toplama (garbage collection) stratejileri ve güvenlik politikaları gibi parametreleri içerir.
Bu değişkenleri genellikle /opt/tomcat/latest/bin/setenv.sh adlı bir dosyada tanımlarsınız. Bu dosyayı oluşturun:
sudo nano /opt/tomcat/latest/bin/setenv.sh
İçine aşağıdaki örnek ayarları ekleyebilirsiniz (bu ayarları uygulamanızın gereksinimlerine göre değiştirmeniz gerekecektir):
#!/bin/bash
Minimum ve maksimum heap belleği ayarları
export JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms512m -Xmx1024m"
Tomcat'e özgü seçenekler (örneğin güvenlik yöneticisi)
export CATALINA_OPTS="-Djava.security.manager -Djava.security.policy=/opt/tomcat/latest/conf/catalina.policy"
Dosyayı kaydedin ve çalıştırılabilir hale getirin:
sudo chmod +x /opt/tomcat/latest/bin/setenv.sh
Bu ayarlardan sonra Tomcat servisini yeniden başlatmanız gerekecektir.
Tomcat Uygulama Dağıtımı
Java web uygulamaları genellikle .war (Web Application Archive) formatında paketlenir. Tomcat’e bir uygulama dağıtmanın birkaç yolu vardır:
1. Manager GUI Kullanarak: Tomcat Manager web arayüzüne giriş yapın. “WAR file to deploy” bölümünden WAR dosyanızı seçip “Deploy” düğmesine tıklayarak uygulamanızı kolayca dağıtabilirsiniz.
2. webapps Dizinine Kopyalayarak: WAR dosyanızı doğrudan /opt/tomcat/latest/webapps/ dizinine kopyalayabilirsiniz. Tomcat, bu dizini otomatik olarak izler ve yeni bir WAR dosyası algıladığında onu otomatik olarak dağıtır. Örneğin:
sudo cp /path/to/your/application.war /opt/tomcat/latest/webapps/
Uygulamanızın URL’si http://SUNUCU_IP_ADRESINIZ:8080/application_name olacaktır (burada application_name, WAR dosyasının adıdır, .war uzantısı olmadan).
Sorun Giderme
Tomcat kurulumu veya çalışması sırasında sorunlarla karşılaşırsanız, aşağıdaki adımlar size yardımcı olabilir:
* Log Dosyalarını Kontrol Edin: Tomcat, sorun giderme için çok değerli bilgiler içeren log dosyaları üretir. Ana log dosyaları /opt/tomcat/latest/logs/ dizininde bulunur. Özellikle catalina.out, localhost.log ve manager.log dosyalarını kontrol edin.
tail -f /opt/tomcat/latest/logs/catalina.out
* Systemd Servis Durumunu Kontrol Edin: Tomcat servisinin durumunu kontrol etmek için:
sudo systemctl status tomcat
Hata mesajları veya servisin neden başlamadığını gösteren ipuçları arayın.
* JAVA_HOME Hatası: Eğer JAVA_HOME ortam değişkeni doğru ayarlanmamışsa, Tomcat başlamayabilir. echo $JAVA_HOME komutuyla kontrol edin ve /etc/profile.d/set-java-home.sh dosyasındaki yolu doğrulayın.
* Port Çakışması: Tomcat’in kullandığı 8080 portunun başka bir uygulama tarafından kullanılıp kullanılmadığını kontrol edin:
sudo netstat -tulnp | grep 8080
Eğer başka bir işlem bu portu kullanıyorsa, ya o işlemi durdurun ya da Tomcat’in portunu değiştirin.
* İzin Hataları: Tomcat’in log dosyalarına yazma veya belirli betikleri çalıştırma izni yoksa, sorunlar ortaya çıkabilir. chown ve chmod komutlarıyla izinleri tekrar kontrol edin.
* Bellek Sorunları: Java uygulamaları bellek sorunları yaşayabilir. setenv.sh dosyasındaki -Xms ve -Xmx parametrelerini ayarlayarak JVM’ye ayrılan bellek miktarını artırmayı deneyebilirsiniz.
Sonuç
Bu kapsamlı rehberde, Apache Tomcat 9’u Debian 10 sunucunuza güvenli ve verimli bir şekilde nasıl kuracağınızı adım adım öğrendiniz. Sistem güncellemelerinden başlayarak, Java Development Kit’in kurulumuna, Tomcat’in indirilip yapılandırılmasına, systemd servisi olarak çalıştırılmasına ve temel güvenlik ayarlarının yapılmasına kadar tüm önemli adımları tamamladık.
Artık Debian 10 sunucunuzda çalışan bir Apache Tomcat 9 örneğine sahipsiniz ve Java tabanlı web uygulamalarınızı dağıtmaya hazırsınız. Unutmayın ki üretim ortamları için ek güvenlik önlemleri, performans optimizasyonları ve düzenli bakım kritik öneme sahiptir. SSL/TLS yapılandırması, bir ters proxy kullanımı ve sürekli izleme, sağlam bir web uygulama ortamı için sonraki adımlarınız olmalıdır. Kurulumunuzda başarılar dileriz!
