Plesk CLI Komutlarıyla Gelişmiş Sunucu Yönetimi

Plesk CLI Komutlarıyla Gelişmiş Sunucu Yönetimi
Yazı Özetini Göster

Plesk CLI Komutlarıyla Gelişmiş Sunucu Yönetimi (SSH Üzerinden Kontrol)

Plesk CLI (Komut Satırı Arayüzü), Plesk panelini açmadan, root veya yetkili kullanıcı olarak SSH üzerinden yüzlerce yönetim işlemini otomatikleştirmenizi sağlar. Toplu domain oluşturma, SSL atama, e-posta hesap yönetimi, yedek/geri yükleme, servis onarımı, güvenlik ve izleme gibi görevler tek komutla yapılabilir. Bu rehber; Plesk CLI yapısını, sık kullanılan komutları, güvenlik ve otomasyon ipuçlarını, gerçekçi senaryolar ve örneklerle derinlemesine açıklar. Yüksek erişilebilirlik için yapılandırmalarınızı performanslı bir VDS ya da kurumsal ölçekte Sunucu Barındırma altyapıları üzerinde uygulamanız önerilir.

Temel Mimarisi: plesk, bin, sbin ve yardımcı araçlar

Plesk, birden çok CLI katmanı sunar:

  • plesk: Ana dispatcher. Ör. plesk bin, plesk sbin, plesk ext, plesk repair, plesk db.
  • plesk bin/<arac>: Yüksek seviyeli yönetim (domain, subscription, mail, ssl, client, server_pref).
  • plesk sbin/<arac>: Düşük seviyeli, servis odaklı araçlar (ör. websrvmng).
  • plesk db: Plesk veritabanına (psa) doğrudan SQL.
  • plesk repair: Otomatik teşhis ve onarım.
  • plesk ext: Eklenti komutları (ör. JetBackup, ModSecurity vb.).

Komutların yardımını görmek için --help veya -h parametresini kullanın:

plesk help
plesk bin subscription --help

Abonelik (Subscription) ve Domain Yönetimi

Yeni müşteri ve abonelik oluşturma

# Müşteri (client) oluştur
plesk bin customer --create acme \
  -name "ACME LTD" -login acme -passwd 'GucLuParola!' -email admin@acme.com

# Abonelik (domain + hosting) oluştur
plesk bin subscription --create acme.com \
  -owner acme -service-plan "Default" -ip 203.0.113.10

Toplu domain ekleme (CSV ile)

# domains.csv: domain,ip,owner
#   example1.com,203.0.113.10,acme
#   example2.com,203.0.113.10,acme
while IFS=, read -r d ip o; do
  plesk bin subscription --create "$d" -owner "$o" -service-plan "Default" -ip "$ip";
done < domains.csv

Barındırma parametreleri

# PHP sürümü değiştirme
plesk bin subscription_settings --update acme.com -php true -php_handler_id plesk-php82-fastcgi

# Disk kotası ve trafik limiti
plesk bin subscription --update acme.com -hard-disk-quota 20G -traffic-limit 200G

SSL/TLS ve Let’s Encrypt Otomasyonu

CLI ile SSL dağıtımını seri hale getirebilirsiniz. Let’s Encrypt eklentisi kurulu olmalıdır.

# Varsayılan Let’s Encrypt sertifikası oluştur ve bağla
plesk bin extension --exec letsencrypt cli.php -d acme.com -m admin@acme.com --agree-tos

# Wildcard için DNS doğrulamalı (provider’a göre değişir)
plesk bin extension --exec letsencrypt cli.php -d "*.acme.com" -d acme.com \
  -m admin@acme.com --agree-tos --wildcard

E-posta Hesap ve Politika Yönetimi

# Mailbox oluşturma
plesk bin mail --create support@acme.com -mailbox true -passwd 'ZorSifre!'

# Parola reset ve kota
plesk bin mail --update support@acme.com -passwd 'YeniSifre!' -mbox_quota 2048M

# Catch-all ayarı
plesk bin mail --update acme.com -catch-all support@acme.com

Yedekleme ve Geri Yükleme (backup/restore)

Yerleşik Plesk yedeklerini CLI’dan planlayabilir veya anlık alabilirsiniz.

# Tüm sunucunun tam yedeği
plesk bin pleskbackup server --output-file /backup/server_$(date +%F).tar

# Tek abonelik yedeği
plesk bin pleskbackup domain acme.com -o /backup/acme_$(date +%F).tar -v

# Geri yükleme
plesk restore /backup/acme_2025-10-27.tar -level domains -filter list:acme.com

Kurum içi veya bulut depolama kurgularında, gelişmiş senaryolar için JetBackup veya S3 uzantılarıyla entegrasyon değerlendirilebilir; yoğun veri akışlarında Premium VDS planları yedekleme sürelerini kısaltır.

Servis Yönetimi ve Onarım

Hizmet durumları

# Web servis yöneticisi (Apache/Nginx) yeniden yapılandır
plesk sbin websrvmng --reconfigure-all

# Mail hizmeti (Postfix/Qmail) yapılandırma yenile
plesk repair mail -y

Otomatik onarım (tek komutla)

# Genel sağlık taraması ve düzeltmeler
plesk repair all -y

# Web ve DB servislerine odaklı
plesk repair web -y
plesk repair mysql -y

Güvenlik: ModSecurity, Fail2Ban, WAF ve sistem ayarları

CLI ile WAF ve güvenlik katmanlarını da yönetebilirsiniz.

# ModSecurity etkin ve CRS kural seti
plesk bin server_pref --update-security -waf-mode on -waf-rule-set owasp

# Fail2Ban etkinleştirme ve jails
plesk bin ip_ban --enable
plesk bin ip_ban --update-jail plesk-apache -status enabled

Uygulama katmanında ek koruma için WAF Koruma ve kenar güvenlik servisleriyle birleşik mimari önerilir.

Plesk Veritabanına (psa) CLI’dan Erişim

Raporlama veya toplu düzenleme için plesk db ile SQL çalıştırabilirsiniz. Dikkat: Yanlış SQL ciddi hasar verebilir. Her zaman yedek alınız.

# Tüm domainleri listele (örnek)
plesk db "SELECT name, id, cr_date FROM domains ORDER BY cr_date DESC LIMIT 10;"

# Bir müşteriye ait domainler
plesk db "SELECT d.name FROM domains d JOIN clients c ON d.cl_id=c.id WHERE c.login='acme';"

Günlük (Log) ve İzleme

# Plesk panel günlükleri (journalctl kullanan sistemlerde)
journalctl -u psa -f

# Servis durumları
plesk bin service --status

# Apache/Nginx logları (dağıtıma göre değişebilir)
tail -f /var/log/httpd/error_log
tail -f /var/log/nginx/error.log

Toplu Otomasyon: Bash + Plesk CLI

Sık tekrarlanan görevler için Bash scriptleriyle akış tasarlayın.

#!/usr/bin/env bash
set -euo pipefail

DOMAIN="$1"
EMAIL="$2"

plesk bin subscription --create "$DOMAIN" -owner admin -service-plan "Default"
plesk bin mail --create "info@$DOMAIN" -mailbox true -passwd 'GucluSifre!'
plesk bin extension --exec letsencrypt cli.php -d "$DOMAIN" -m "$EMAIL" --agree-tos

echo "Kurulum tamamlandı: $DOMAIN"

Performans ve PHP-FPM Ayarları

Yoğun trafikli sitelerde PHP-FPM havuzları ve handler seçimi kritik önemdedir.

# Abonelik bazlı PHP handler
plesk bin subscription_settings --update acme.com -php true -php_handler_id plesk-php82-fpm

# Havuz parametreleri (şablon tabanlı; değişiklik sonrası reconfigure)
plesk sbin websrvmng --reconfigure-vhost --vhost-name=acme.com

İş yükü büyüdükçe gecikmeyi düşürmek için ölçeklenebilir Kurumsal Hosting veya yüksek IOPS sunan VDS planlarına geçiş değerlendirilebilir.

Gelişmiş: Uzantı (Extension) Komutları

  • Let’s Encrypt: plesk bin extension --exec letsencrypt cli.php ...
  • Fail2Ban: plesk bin ip_ban ...
  • JetBackup: plesk ext jetbackup ... (kuruluysa)

Uzantı her ne kadar GUI odaklı olsa da çoğunun CLI çağrısı vardır. CLI desteği olmayan uzantılar için REST API uçları veya planlanmış görevler (Cron) kullanılabilir.

Güvenlik ve En İyi Pratikler

  • SSH erişimi kısıtlayın: Sadece yönetim IP’leri; anahtar tabanlı doğrulama.
  • Yetki ayrımı: Root dışı yönetim mümkünse sudoers kuralı ile sınırlı komutlar.
  • Değişiklikten önce yedek: CLI ile toplu işlem öncesi tam/inkremental yedek alın.
  • Günlükleri izleyin: Otomasyon hatalarını erken yakalayın; gerekirse Optimizasyon Hizmeti ile düzenli denetim yaptırın.

Tipik Senaryolar

1) Toplu SSL dağıtımı

for d in $(plesk db "SELECT name FROM domains" -N); do
  plesk bin extension --exec letsencrypt cli.php -d "$d" -m admin@"$d" --agree-tos || echo "SSL hata: $d";
done

2) Taşınan sitelerin hızlı onarımı

plesk repair web -y
plesk sbin websrvmng --reconfigure-all

3) E-posta politikasını sertleştirme

# Tüm domainlerde catch-all kapat
for d in $(plesk db "SELECT name FROM domains" -N); do
  plesk bin mail --update "$d" -catch-all none;
done

Sonuç: Plesk CLI ile çevik, güvenli ve otomatik yönetim

Plesk CLI, GUI’nin sunduğu her kabiliyeti otomasyonla birleştirir: tek sunucudan çoklu kümelere kadar hızlı kurulum, güvenli sertleştirme ve tekrarlayan işlerin sıfır hata ile yürütülmesi mümkün olur. Operasyonel verimliliği artırmak, kurtarma sürelerini kısaltmak ve büyüyen iş yüklerine sorunsuz uyum sağlamak için güçlü altyapılarla birleştirmenizi öneririz. HostLigo’nun VDS, Kurumsal Hosting ve yönetilebilir Optimizasyon Hizmeti çözümleriyle Plesk CLI süreçlerinizi güvenle ölçeklendirebilirsiniz.

Bir Yorum Yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Benzer Yazılar