Ana içeriğe geç

🚀 Apache Tomcat 10 Kurulumu (Ubuntu 20.04)

Bu rehberde Ubuntu 20.04 üzerinde Apache Tomcat 10 kurulumunu ve temel yapılandırmasını yapacağız.
Amaç, Java (Jakarta EE) uygulamalarını güvenli ve sürdürülebilir şekilde çalıştırmaktır.


📌 Bu Rehberde Ne Öğreneceksiniz?

  • Tomcat 10 için ayrı ve güvenli kullanıcı oluşturma
  • Java Geliştirme Kiti (JDK) kurulumu
  • Tomcat 10 indirme ve yapılandırma
  • Yönetim arayüzü (Manager / Host Manager) erişimi
  • Tomcat’i systemd servisi olarak çalıştırma

⚙️ Ön Koşullar

  • Ubuntu 20.04 sunucu
  • Sudo yetkisine sahip non-root kullanıcı
  • UFW güvenlik duvarı aktif

1️⃣ Tomcat Kullanıcısı ve JDK Kurulumu

Tomcat, güvenlik için ayrı ve yetkisiz bir kullanıcıyla çalıştırılmalıdır.

sudo useradd -m -d /opt/tomcat -U -s /bin/false tomcat
  • Bu komut login olamayan bir sistem kullanıcısı oluşturur.

1. Java paket listesini güncelleyin:


sudo apt update

2. JDK kurulumunu yapın:


sudo apt install default-jdk

3. Kurulumu kontrol edin:


java -version

2️⃣ Apache Tomcat 10 Kurulumu

1. Geçici dizine geçin:


cd /tmp

2. Tomcat 10 arşivini indirin:


wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz

3. Arşivi çıkarın:


sudo tar xzvf apache-tomcat-10*.tar.gz -C /opt/tomcat --strip-components=1

4. Dosya sahipliğini ayarlayın:


sudo chown -R tomcat:tomcat /opt/tomcat

5. Çalıştırma izinlerini verin:


sudo chmod -R u+x /opt/tomcat/bin

3️⃣ Yönetici Kullanıcılarını Tanımlama

1. Tomcat yönetim arayüzüne erişmek için kullanıcı ekleyin:


sudo nano /opt/tomcat/conf/tomcat-users.xml
  • Aşağıdaki satırları /tomcat-users öncesine ekleyin:

<role rolename="manager-gui" />
<role rolename="admin-gui" />

<user username="manager" password="GUVENLI_SIFRE" roles="manager-gui" />
<user username="admin" password="GUVENLI_SIFRE" roles="manager-gui,admin-gui" />

4️⃣ Yönetim Arayüzü Erişim Engellerini Kaldırma

1. Manager uygulaması için:


sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
  • Aşağıdaki satırı yorum satırı yapın:

<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" /> -->

2. Host Manager için:


sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
  • Aynı satırı burada da kapatın.

5️⃣ systemd Servisi Oluşturma

1. Java yolunu öğrenin:


sudo update-java-alternatives -l
Servis dosyasını oluşturun:

sudo nano /etc/systemd/system/tomcat.service

[Unit]
Description=Apache Tomcat
After=network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server"

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

2. Servisi etkinleştirin:


sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat

3. Durum kontrolü:


sudo systemctl status tomcat

6️⃣ Web Arayüzüne Erişim

  • 8080 portunu açın:

sudo ufw allow 8080
  • Tarayıcıdan erişin:

http://SUNUCU_IP:8080
  • Manager App ve Host Manager üzerinden uygulamalarınızı yönetin.

❓ Sıkça Sorulan Sorular (SSS)

1. Tomcat 10 neden Jakarta EE kullanıyor? Java EE, Jakarta EE olarak yeniden isimlendirilmiştir.

2. Tomcat neden root ile çalıştırılmıyor? Güvenlik açıklarının tüm sisteme yayılmasını önlemek için.

3. HTTPS neden yok? Üretim ortamında Apache veya Nginx + Let’s Encrypt önerilir.

4. Port 8080 açık kalmalı mı? Reverse proxy kullanılıyorsa kapatılmalıdır.


✅ Sonuç

Apache Tomcat 10, Ubuntu 20.04 üzerinde stabil ve güvenli biçimde kuruldu. Artık Java uygulamalarınızı canlıya alabilirsiniz.

🔐 Üretim ortamı için HTTPS yapılandırmasını Apache veya Nginx + Let’s Encrypt ile tamamlaman önerilir.

Bu altyapıyı Rabisu Bulut üzerinde dakikalar içinde yayına alabilirsin 🚀