Plesk Servisleri

(webmail/Roundcube) Litespeed PHP Sürümünü Yükseltme

Sorun büyük ihtimalle burada:

  • Apache ile webmail açılıyor, LiteSpeed ile açılmıyor → problem LiteSpeed katmanında.
  • LiteSpeed/Plesk dökümantasyonunda, webmail/Roundcube için LiteSpeed’in bazen Plesk’in PHP ayarını değil kendi lsphp binary’sini kullandığı belirtiliyor. Varsayılan eski lsphp bu tip webmail sorunlarına yol açabiliyor.

Sende görünen:

/usr/local/bin/lsphp -v PHP 7.3.33 (litespeed)

Bu sürüm Roundcube için teorik olarak yeterli görünüyor, ama asıl mesele sürümden çok LiteSpeed’in /usr/local/bin/lsphp yolunu kullanması. Plesk ve LiteSpeed kaynakları, bu durumda /usr/local/bin/lsphp’yi Plesk’in kurduğu LSPHP binary’sine yönlendirmeyi öneriyor.

Şunu yap:

mv /usr/local/bin/lsphp /usr/local/bin/lsphp-bk ln -s /opt/plesk/php/8.1/bin/lsphp /usr/local/bin/lsphp systemctl restart lsws

Sunucunda 8.1 yoksa önce kurulu Plesk PHP’leri kontrol et:

ls -d /opt/plesk/php/*

Sonra uygun olanı bağla. Mesela 8.2 varsa:

mv /usr/local/bin/lsphp /usr/local/bin/lsphp-bk ln -s /opt/plesk/php/8.2/bin/lsphp /usr/local/bin/lsphp systemctl restart lsws

Ardından doğrula:

ls -l /usr/local/bin/lsphp /usr/local/bin/lsphp -v

Beklenen çıktı şu mantıkta olmalı:
/usr/local/bin/lsphp -> /opt/plesk/php/8.x/bin/lsphp

Bir de LiteSpeed dökümantasyonuna göre Plesk tarafında PHP yönetimini Plesk’in yapması tercih ediliyor; manuel eski/özel external app tanımları sorun çıkarabiliyor.

error.log’da yalnızca “LSWS stopped” görünüyor olması da ilginç; bu genelde uygulama seviyesinde detay vermediğini gösterir. O yüzden bu aşamada en mantıklı ve resmi çözüm adımı yukarıdaki lsphp symlink düzeltmesi.

Symlink’i değiştirdikten sonra sonuç vermezse ikinci adım olarak LiteSpeed Admin’de eski custom PHP external app tanımları var mı ona bakarız.

[root@server ~]# ls -d /opt/plesk/php/* /opt/plesk/php/7.4  /opt/plesk/php/8.3  /opt/plesk/php/8.4 [root@server ~]#
Daha fazla gösterDaha az göster

Güzel, o zaman bir sonraki adım net:

Sende Plesk PHP olarak şunlar var:

  • /opt/plesk/php/7.4
  • /opt/plesk/php/8.3
  • /opt/plesk/php/8.4

Ama LiteSpeed şu an hâlâ:

/usr/local/bin/lsphp -> PHP 7.3.33

kullanıyor. Bu zaten uyumsuz görünüyor. En mantıklı test: lsphp’yi Plesk’in güncel PHP’sine bağlamak.

Önce ben 8.3 ile denemeni öneririm.

mv /usr/local/bin/lsphp /usr/local/bin/lsphp-bk ln -s /opt/plesk/php/8.3/bin/lsphp /usr/local/bin/lsphp systemctl restart lsws

Sonra doğrula:

ls -l /usr/local/bin/lsphp /usr/local/bin/lsphp -v

Beklenen şey:

  • symlink /opt/plesk/php/8.3/bin/lsphp olsun
  • sürüm 8.3.x görünsün

Ardından webmail’i LiteSpeed altında tekrar test et.

Çalışmazsa ikinci deneme olarak 8.4 bağlarız:

rm -f /usr/local/bin/lsphp ln -s /opt/plesk/php/8.4/bin/lsphp /usr/local/bin/lsphp systemctl restart lsws

Ek olarak rollback için eski binary’yi sakladın; gerekirse geri dönüş:

rm -f /usr/local/bin/lsphp mv /usr/local/bin/lsphp-bk /usr/local/bin/lsphp systemctl restart lsws

Şu anda senin vakada en güçlü şüpheli gerçekten bu:

  • Apache açıyor
  • LiteSpeed açmıyor
  • LiteSpeed eski PHP 7.3.33 kullanıyor
  • Plesk’te güncel PHP’ler var

Önce 8.3 ile bağla ve sonucu yaz.

[root@server ~]# mv /usr/local/bin/lsphp /usr/local/bin/lsphp-bk [root@server ~]# ln -s /opt/plesk/php/8.3/bin/lsphp /usr/local/bin/lsphp [root@server ~]# systemctl restart lsws [root@server ~]# ls -l /usr/local/bin/lsphp lrwxrwxrwx. 1 root root 28 Apr 20 20:32 /usr/local/bin/lsphp -> /opt/plesk/php/8.3/bin/lsphp [root@server ~]# /usr/local/bin/lsphp -v
Daha fazla gösterDaha az göster

Güzel, symlink kısmı doğru olmuş:

/usr/local/bin/lsphp -> /opt/plesk/php/8.3/bin/lsphp

Şimdi 2 şey yap:

/usr/local/bin/lsphp -v systemctl restart lsws

Ardından hemen webmail’i tekrar dene.

Eğer açıldıysa sorun buydu:

  • LiteSpeed eski PHP 7.3.33 binary’sini kullanıyordu
  • webmail/Roundcube LiteSpeed altında buna takılıyordu
  • Plesk PHP 8.3’e geçirince düzelmiş olacak

Eğer hâlâ açılmıyorsa sıradaki kontrol:

tail -n50 /usr/local/lsws/logs/error.log tail -n50 /var/log/httpd/error_log

Bir de bazen lsws restart sonrası süreç tam oturmadığında kısa test olarak:

systemctl status lsws --no-pager

Şu anda en kritik şey /usr/local/bin/lsphp -v çıktısı. Orada gerçekten 8.3.x görünüyor mu, onu paylaş.

Webmail litespeed 403 hatası

? ROOT CAUSE BULUNDU

Logda açıkça görünüyor:

ModSecurity: Access denied with code 403 [id "949110"] [msg "Inbound Anomaly Score Exceeded"]

ve:

[id "932239"] [msg "Remote Command Execution: Unix Command Injection"]

? Yani:
LiteSpeed değil, ModSecurity (OWASP CRS) webmail’i blokluyor.

Özellikle şu satır çok kritik:

Matched Data: =mail& found within https://webmail...

Roundcube’un normal URL parametresi bile:

?_task=mail&_mbox=INBOX

? ModSecurity bunu hack girişimi sanıyor ve 403 basıyor. 


? Neden Apache’de çalışıyor?

Apache’de:

  • ModSecurity ya kapalı
  • ya daha gevşek

LiteSpeed’de:

  • CRS aktif
  • paranoia level yüksek
    → false positive

✅ ÇÖZÜM (3 seçenek)

? 1) EN HIZLI TEST (anında çözülür)

ModSecurity’yi kapat:

Plesk →
Tools & Settings → Web Application Firewall (ModSecurity)

? Mode:

OFF

Sonra test et.

✔ Açılırsa → %100 ModSecurity sorunu


? 2) SADECE WEBMAIL İÇİN disable (EN DOĞRU)

Domain bazlı kapat:

Plesk → Domains → alldaylife.de → Apache & nginx Settings

en alta ekle:

<IfModule mod_security.c> SecRuleEngine Off </IfModule>

? sadece webmail etkilenir


? 3) PROFESYONEL FIX (önerilen)

Sadece problemli rule’ları disable et:

Logda görülen rule ID’ler:

  • 932239
  • 949110

Bunları whitelist et:

SecRuleRemoveById 932239 SecRuleRemoveById 949110

? En temiz çözüm önerim

? Direkt şunu yap:

plesk bin modsecurity_ctl --disable-rule 932239 -domain domain.com plesk bin modsecurity_ctl --disable-rule 949110 -domain domain.com

? Özet

Senin problem:

❌ LiteSpeed bug değil
❌ PHP değil
❌ izin değil

? %100:

ModSecurity (OWASP CRS) false positive → Roundcube bloklanıyor