VestaCP (Vesta CPanel) Nedir?
VestaCP arayüzü PHP ve Javascript, çekirdeği ise Linux bash ile yazılmış, açık kaynak kodlu, kullanımı basit, arayüzü sade, ücretsiz bir web hosting kontrol paneli sistemidir.
VestaCP üzerinde Apache, NGINX, DNS, firewall, Exim, SpamAssasin, ClamAV, MySQL, FTP, cron, yedekleme, sunucu ve servis monitör etme vb. gibi birçok özellik barındırmaktadır. Ek olarak Türkçe dil desteği de bulunmaktadır.
VestaCP Sistem Gereksinimleri
- RHEL / CentOS 5, 6, 7 dağıtımlarından biri
- Debian 7, 8, 9 dağıtımlarından biri
- Ubuntu 12.04-18.10 arasındaki dağıtımlardan biri
- Minimum 512 MB RAM
- Minimum 20 GB disk alanı
- Minimum 1 Ghz CPU
VestaCP Kurulumu
VestaCP için Ubuntu 18.04 dağıtımını kullandım. Ubuntu 18.04 kurulumuna https://www.bilgiambari.com/sunucu/linux/ubuntu-server-18-04-kurulumu/ linkinden ulaşabilirsiniz.
Kurulumdan önce sunucu tarafında yapmanızı önerdiğim, ileride çıkacak sorunların önüne geçecek birkaç ayarımız mevcut.
VestaCP kurulumdan sonra admin olarak kullanıcı oluşturacak ve bir parola belirleyecektir. Bu parolayı isteğinize göre değiştirebilirsiniz. root kullanıcısının parolasını, admin kullanıcısının parolasıyla aynı yapmanızı öneriyorum. Aşağıdaki komut ile root kullanıcısının parolasını değiştirebilirsiniz.
passwd root
Şimdi GPG, yani GNU Privacy Guard yazılımını kurmamız gerekli. GnuPG verilerinizi ve iletişimlerinizi şifrelemeye, imzalamaya yarayan açık kaynak kodlu bir komut satırı aracıdır. Daha fazla bilgi için bkz: https://gnupg.org/
sudo apt install gnupg2
Artık ön gereksinimleri tamamladıktan sonra VestaCP kurulumuna geçebiliriz.
VestaCP kurulum komutları https://vestacp.com/install/ linkinde yer almaktadır. VestaCP servisleri kendimize göre özelleştirme imkanı sunmakta ve bu sayfada seçimlerimize göre özel kurulum kodu veren bir form bulunmaktadır.
Seçimlerimizi yapmaya başlayalım.
Web kısmında nginx + php-fpm seçiyorum. Yapılan testler sonucunda NGINX’in yüksek trafikli web sitelerinde Apache’ye göre 2 kat daha performanslı çalıştığı tespit edilmiştir. PHP yorumcusunun bir modülü olan fpm ise ağır yüklü sitelerde PHP yorumcusunu hızlandırmaktadır. Bunun için tercih edeceğimiz modül budur.
FTP kısmında daha saf bir FTP hizmeti olan vsftpd yerine, daha gelişmiş ve bir FTP hizmeti olan proftpd’yi seçiyorum.
Mail kısmında exim + dovecot + spamassassin + clamav seçiyorum. ClamAV yüksek RAM’e ihtiyaç duymasına rağmen mail güvenliği açısından faydalı bir servistir. Sisteminizin yetersiz kalması durumunda ileride pasif hale getirebilirsiniz.
DNS kullanmak zorunda olduğum ve tek seçenek olduğu için named seçiyorum.
Firewall iptables + fail2ban seçiyorum. iptables ile belirlediğimiz port, IP adresi kısıtlamalarından sonra fail2ban ile yetkisiz erişimleri bloklayabilir, loglayabiliriz.
Additional Repository remi seçiyorum.
File System Quota no diyorum.
DB MySQL seçiyorum. İsteğinize göre karar verebilirsiniz ama bu ve sonraki makalelerde MySQL ile devam edeceğim.
Seçimlerimizi bitirdikten sonra artık son aşama olan hostname, email ve password kısmına geldik. Son hali bu şekilde olmalı.
Seçimlerimizi bitirip, bilgileri de doldurduktan sonra “Generate Install Command” ile kodumuzun çıktısını alalım.
PuTTY ile sunucumuza SSH bağlantısı yapıp, kuruluma başlayabiliriz.
Bash dosyasını çalıştırıyorum.
curl -O http://vestacp.com/pub/vst-install.sh
Ardından seçimlerimizin sonucunda çıkan kurulum kodumuzu girelim.
bash vst-install.sh --nginx yes --phpfpm yes --apache no --named yes --remi yes --vsftpd no --proftpd yes --iptables yes --fail2ban yes --quota no --exim yes --dovecot yes --spamassassin yes --clamav yes --softaculous yes --mysql yes --postgresql no --hostname bilgiambari.com --email [email protected] --password Test123456
Kodu girdikten sonra devam etmek istediğimizi soruyor.
y ve entera basıp, devam edelim.
Kurulumun 15 dakika süreceğini belirtiyor ve VestaCP’yi kurmaya başlıyor.
Kurulum bittikten sonra erişim bilgilerini göreceksiniz.
Oturum açalım.
Evet, VestaCP kurulumunu tamamladık ve kontrol paneli karşımızda. Gördüğünüz üzere varsayılan olarak admin kullanıcısı mevcut. User kısmında istediğiniz kadar kullanıcı ekleyebilir, bu kullanıcıları düzenleyebilir, silebilir ve kullanıcıların istatistiklerini görebilirsiniz.
Web kısmında alan adlarınızı görebilir, yeni alan adları ekleyebilir ve alan adlarını düzenleyebilirsiniz (Web Template ve Backend Template seçme, SSL yükleme, Web Statics ayarı, FTP hesabı ekleme)
DNS kısmında alan adlarınızın DNS kayıtlarını görüntüleyebilir, değiştirebilir, yeni DNS kayıtları ekleyebilir veya mevcut DNS kayıtlarını silebilirsiniz.
Mail kısmında alan adlarınıza bağlı olarak antivirüs, spam, DKIM ve catchall yönetimini yapabilir, mail adresleri ekleyebilir, parolalarını değiştirebilir ve yönetebilirsiniz.
DB kısmında veritabanı ekleyebilir, karakter setini değiştirebilir, kullanıcı ekleyebilir, silebilir ve seçtiğiniz veritabanına göre (MySQL, PostgreSQL) arayüzden de veritabanı yönetimini yapabilirsiniz.
Cron Linux’da bir görevi belirli bir zamanda tekrarlamak için kullanılan bir programdır. Bu kısımda VestaCP için otomatik olarak oluşturulmuş cronjob’ları görebilirsiniz ve yönetebilirsiniz.
Grafik sekmesinde sunucunuzun kaynak tüketimlerini günlük, haftalık, aylık veya yıllık olarak takip edebilirsiniz.
Firewall kısmında port, protokol (TCP/UDP) ve bu portlara erişecek IP adreslerini belirleyebilir, fail2ban’ı yönetebilirsiniz.
Server kısmında mevcut servislerinizi görüntüleyebilir, durdurabilir, başlatabilir, yeniden başlatabilir ve konfigürasyonlarını yapabilirsiniz.
Burada soldaki çark butonuna basarak Vesta sunucumuzla ilgili ayarları yapabiliriz (Time Zone, varsayılan dil, web sunucu ve backend sunucu ayarları, DNS ayarları, mail sunucu, antispam ve webmail URL ayarları, veritabanı ve phpMyAdmin URL ayarları, yedekleme ayarları ve VestaCP SSL sertifikası)