Ubuntu işletim sistemlerinde locale problemi yaşayanlar özellikle postgresql ve buna benzer bu locale ayarlarına ihtiyaç duyan yazılımlarda kurulum aşamasında sorun yaşıyor olabilirler.
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = “en_US:en”,
LC_ALL = (unset),
LC_TIME = “tr_TR.UTF-8”,
LC_MONETARY = “tr_TR.UTF-8”,
LC_CTYPE = “en_US.UTF-8”,
LC_ADDRESS = “tr_TR.UTF-8”,
LC_TELEPHONE = “tr_TR.UTF-8”,
LC_NAME = “tr_TR.UTF-8”,
LC_MEASUREMENT = “tr_TR.UTF-8”,
LC_IDENTIFICATION = “tr_TR.UTF-8”,
LC_NUMERIC = “tr_TR.UTF-8”,
LC_PAPER = “tr_TR.UTF-8”,
LANG = “en_US.UTF-8”
are supported and installed on your system.
perl: warning: Falling back to the standard locale (“C”).
locale: Cannot set LC_ALL to default locale: No such file or directory
Bu problemin çözümü için bashrc veya zsh kullanıyorsanız zshrc dosyanıza alt kısımda belirtilen export komutlarını eklemeniz yeterlidir. SSH Session’u kapatmamak için aynı komutları direkt olarak SSH’a da bir defa çalıştırmanız yeterlidir. Ama işlemin geçerli kalması adına bashrc veya zshrc dosyasına eklemeniz önemlidir.
export LC_CTYPE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
Genellikle kullanılan bashrc olduğundan alt kısımda belirtilen komutları direkt ssh üzerinden çalıştırmanız yeterli olacaktır.
echo “export LC_CTYPE=en_US.UTF-8” >> ~/.bashrc
echo “export LC_ALL=en_US.UTF-8” >> ~/.bashrc
Eğer zsh kullanıyorsanız yukarıda yer alan komutlarda ~/.bashrc yerine ~/.zshrc olarak düzenlemeniz yeterli olacaktır.
İyi Çalışmalar.
Hazırladığımız bu doküman VDS veya SSD VDS hizmetlerimizden yararlanıyorsanız, Linux sunucular için sistem performansını arttırabileceğiniz ve müşteri panelinden disk kullanım det aylarınızı görebileceğiniz Heartbeat kurulumunu anlatılmaktadır.
Sanal sunucunuzda Heartbeat kurulu olup, olmadığına müşteri panelinizden sanal sunucu detaylarına geçiş yaparak görebilirsiniz.

Daha önce Heartbeat kurulumu yapıldıysa, Linux sunucunuzda Kernel güncellemesi yapıldığında Heartbeat devre dışı kalacaktır. Tekrar etkinleştirmek için alt kısımdaki komutu sunucunuz da uygulamanız gerekmektedir.
wget -q -O - http://www.netinternet.com.tr/bash/heartbeat.sh | bash
Eğer sunucunuzda kurulum hiç gerçekleştirilmediyse komutu çalıştırdığınızda karşınıza destek bileti atmanız ile ilgili bir hata mesajı çıkar. Bu durumda ilk kez Heartbeat kurulumunun yapılması için sunucu bilgileriniz ile birlikte müşteri panelinize bağlanarak destek ekibine ticket göndermeniz gerekir.
Heartbeat kurulumu hakkında daha fazla bilgi almak için destek talebi üzerinden bizimle iletişime geçebilirsiniz.
İyi Çalışmalar.
Her VDS sanal sunucu kurulumunda, sanal sunucunun düzgün çalışması, saat problemi oluşmaması ve performansı arttırması için vmwaretools kurulması gerekir. Bu kurulumu Windows da yapmak basittir. Sadece sanal sunucuya ters tıklayıp Guest sekmesine gelip Install/Upgrade VMware Tools’u seçiyorsunuz. Bunu yapınca sanal sunucuya bir CD yerleşiyor cd deki setup u çalıştırıp sadece Next butonlarına tıkayarak kurulumu basit bir şekilde yapabilirsiniz.
Linux sistemlerde ise öncelikle CD-Rom’u mount ederek içerisindeki tar.gz uzantılı dosyayı sunucuya kaydedip kurulum yapmak gerekir.Yine öncelikle sanal sunucuya ters tıklayıp Guest sekmesine gelip Install/Upgrade VMware Tools’u seçiyorsunuz.Daha sonrasında ise sunucuda aşağıdaki komutları çalıştırmamız gerekiyor.
mount -r /dev/cdrom /mnt/
cd /mnt
cp VMwareTools-9.0.0-782409.tar.gz /root/
cd
umount -l /mnt/
tar zxf VMwareTools-9.0.0-782409.tar.gz
cd vamware-tools-distrib
perl vmware-install.pl -d
VmwareTools sunucudaki kernel çekirdeğine yapılandığından, eğer bir sunucuda kernel update işlemi yapılırsa VMwaretools çalışmayı durdurur.Bu durumda yukarıdaki işlemlerdeki son komutu tekrar çalıştırmak vmwaretools’u tekrar kurmak için yeterli olacaktır.
VMware (ESX) üzerinde sanal makina oluşturma işlemi hakkında bu makalemizde sizlerle bilgi paylaşacağız.
Öncelikle ana sunucumuz üzerinde Node üzerine fare ile sağ tıklayarak “Create a New Virtual Machine” sekmesini tıklıyoruz.Bu işlemden sonra karşımıza adım adım işlem yapacağımı bir pencere açılacaktır.
Birinci adımda karşımıza gelen pencerede “Typical” ve “Custom” olmak üzere iki farklı seçenek gelecektir.Standart bir sanal sunucu kuracağımız için Typical seçeneği ile devam ediyoruz.

İkinci adımda açacağımız sanal sunucuya isim vermemiz gerekiyor. “Name” bölümüne sunucuya özel bir isim yazabilir ya da sunucunun ana ip adresini yazabilirsiniz.Eğer çok fazla sanal sunucunuz olacak ise sunucu adı kısmına ip adresi yazmak avantajlı olacaktır.

Bu bölümde kuracağımız sanal sunucu için disk seçimi yapmamız gerekiyor.Ana sunucunuz üzerinde ekli olan tüm disklerin ne kadar alanının kullanıldığını ve ne kadar alanının boş olduğunu bu bölümde görebilirsiniz.Sanal sunucuyu hangi disk üzerine kurmak istiyorsanız o diski seçerek işleme devam ediyoruz.

Bu noktada ise sunucuya kuracağımız işletim sistemine göre seçim yapmamız gerekiyor.Windows, linux ya da diğer işletim sistemi seçeneklerini görebilirsiniz. Hangi işletim sistemini kuracaksak, işletim sistemi menüsünden seçimi yapıyoruz ve işleme devam ediyoruz.

İşletim sistemi seçtikten sonra artık sanal sunucunun kullanacağı network katmanını belirlememiz gerekiyor.Eğer sanal switch ile oluşturduğunuz farklı network katmanları yok ise standart olarak VM Network > VMXNET 3 seçeneği ile devam edebilirsiniz.

Network seçiminden sonra sunucumuzda kullanacağımız disk alanını seçiyoruz.Burada 3 farklı seçenek vardır ancak Thin Provision olarak kurmanızı tavsiye ederiz. Thin provision seçeneği ile sunucunuzun disk alanı ne kadar kullanılır ise ana sunucu üzerinde o kadar görünür.Siz sunucunuza 250 GB disk alanı verdiğiniz taktirde bu alanı 100 GB’sini kullandığınızda kullanılan alan ana sunucuda 100 GB olarak görünür.

Kuracağımız sanal sunucu için işletim sistemi, network ve disk işlemlerini tamamladık.Şimdi yapmamız gereken sanal olarak verilecek ram miktari, işlemci çekirdek sayısı gibi diğer işlemleri tamamlamak.Disk bölümünden sonra gelen karşımıza gelen sayfada alt kısımdaki kutucuğu işaretleyerek Continue seçeneği ile işleme devam ediyoruz.

Bir sonraki pencerede sunucudaki ram, cpu, network adaptörü, sanal cd-rom gibi özelliklerin olduğu bölüme geliyoruz.Standart olarak burada sadece verilmek istenen ram ve cpu miktarının değiştirilmesi yeterlidir.Ancak diğer seçeneklerde de işlem yapabilirsiniz.Örneğin; Floppy ya da Video Card özelliği gibi diğer özellikleri devre dışı bırakabilir ya da üst bölümdeki Add.. butonu ile yeni özellikler ekleyebilirsiniz.

CPU seçeneğine geldiğinizde sağ tarafta iki farklı seçenek göreceksiniz.Bu seçeneklerden üst kısımda olan özellik sanal sunucuya vereceğiniz sanal işlemci soketi, diğeri ise soket başına kullanma izni verilecek olan işlemci çekirdeğidir. Örneğin, sunucunuza 4 core işlemci çekirdeği vermek istiyorsanız Virtual Soket : 2 ve Cores per Sockets : 2 seçerek ayarlama yapabilirsiniz.
WHM panelinizden günlük, haftalık ve aylık olarak yedek ayarladıktan sonra sürekli olarak belirlediğimiz dizine periyodik olarak yedek alınır. Ama bir süre sonra hesap iptali olup hesap silinsede backup dosyaları silinmez. Sunucudan hesap silinmesine rağmen yedeklerin silinmemesi gereksiz disk kullanımına yol açacaktır. Eğer sunucunuzda çok fazla hesap var ise tek tek kontrol etmek ve silmek zahmetli bir iştir. Bu işlemi kolayca yapabilmek için Clean Backups yazılımını kullanabilirsiniz. Yazılımın WHM plugin’i de olduğu için arayüz üzerinden ayarlarını ve kontrollerini rahatlıkla yapabilirsiniz.
Kurulum için SSH üzerinden root olarak giriş yaptıktan sonra aşağıdaki komutları çalıştırın.
cd /usr/src
wget http://download.ndchost.com/cleanbackups/latest-cleanbackups
sh latest-cleanbackups
Kurulum tamamlandıktan sonra WHM panelinizin plugins bölümünde Clean Backups bölümünü görebilirsiniz. Varsayılan olarak gelen ayarları değiştirerek gereksiz yedeklerin periyodik olarak silinmesini sağlayabilirsiniz.

Bazı durumlarda WHM panele giriş yapmak istediğinizde aşağıdaki gibi hata ile karşılaşabilirsiniz.
Internal Server Error
500
failed to open session lockfile:
FILE=/var/cpanel/sessions/raw/:vZvEDGFRN4FmDY6ABkYm6Rr6owHlwOS.lock,
No such file or directory at /usr/local/cpanel/Cpanel/Session.pm line 261, line 2.
Eğer aldığınız hata yukarıdaki gibi ise genellikle sorun INODE limitinin dolmasından kaynaklıdır. Sunucuya SSH ile bağlanıp aşağıdaki komutlar ile INODE limitini kontrol edebilir ve sorun çözümü için işlem yapabilirsiniz.
df -i
komutu ile sunucudaki INODE kullanımı görülebilir.
for i in /*; do echo $i; find $i |wc -l; done
Yukarıdaki komut ile de dizinlerdeki INODE kullanımlarını ayrı ayrı görebilirsiniz. Limit aşımı yapan hesaplarda gerekli düzenlemeleri yaparak sorununuzu çözebilirsiniz.
WHM panel üzerinden sunucunuzdaki siteleriniz için paketler oluşturup, siteleri bu paketlerdeki özellikler çerçevesinde host edebilirsiniz.Paketler sayesinde belirli limitler verebilirsiniz.Bu sayede her yeni hesap açtığınızda tüm limitleri baştan düzenlemeniz gerekmez. Daha önceden oluşturduğunuz bir paketi seçmeniz yeterli olacaktır.
WHM panele giriş yaptığınızda sol taraftaki menü içerisinde “Package” bölümü altından Add a Package seçeneğini seçiniz.Bu bölümü seçtiğinizde karşınıza gelen sayfada; disk limiti, trafik limiti, e-posta hesap limiti, ftp kullanıcı limiti gibi sitelerin kullanabileceği alt özellikler gelecektir.Sayfanın en başından paketinize bir isim verebilir ve paketinizin içeriği ne şekilde olsun istiyorsanız bu limitleri belirleyebilirsiniz.Ayarlarınızı yaptıktan sonra sayfanın en altında “Add” butonu ile paketinizi oluşturabilirsiniz.

WHM’de aktif olarak çalışan bir siteye ya da yeni açtığınız bir hizmete reseller yetkisi atayabilir ve bu yetki altında hangi işlemleri yapacağının yetkilerini belirleyebilirsiniz. Sizin belirlemiş olduğunuz yetki ve limitler dahilinde, artık reseller ana hesap kullanıcısı da paketler oluşturabilir ve yeni hesaplar açarak bu paketleri hesaplar ile ilişkilendirebilir.
WHM panel üzerinde sol taraftaki menüde “Reseller Center” bölümü bulunmaktadır.Bu bölüme giriş yaptıktan sonra karşınıza gelen ekranın üst kısmından hangi alan adına reseller yetkisi vermek istiyorsanız o alan adını listeden seçerek “Ok” butonu ile işleminizi tamamlayabilirsiniz.

Reseller yetkisini verdikten sonra bu kullanıcıya verilmesi gereken yetkileri ve limitleri ayarlamanız gerekmektedir.Yine aynı ekran üzerinde sol alt kısımdaki Edit Privileges/Nameservers bölümüne giriş yaparak limitleri ve yetkileri belirleyebilirsiniz.
Bu bölüme giriş yaptıktan sonra öncelikle karşınıza gelen ekranda aşağıdaki resimde göreceğiniz şekilde ayarları yaparak vermek istediğiniz disk kotası ve trafik limitini belirmelisiniz. Buradaki en üstte yer alan “Limit the total number of accounts adanaonl can create to 0 accounts” bölümü, bu reseller sahinin açabileceğini hesap limitini belirmektedir.

Bu limitleri belirledikten sonra aynı sayfanın alt kısmındaki yetkilendirmeleri düzenlemeniz gerekiyor.Bu yetkilendirmeleri dilediğiniz gibi seçebilirsiniz.Karar tamamen sizindir.Ancak dikkat etmeniz gereken en alttaki “Root Acces” yetkisini vermemektedir.Eğer bu yetkiyi verirseniz reseller kullanıcısı root yetkisi ile sunucuda istediği tüm işlemeleri yapabilir.
Eğer reseller kullanıcısı kendisine ait isim sunucularını (nameserver) kullanmak istiyor ise aynı sayfanın en altındaki nameserver düzenleme bölümünden kullanmak istenilen nameserver bilgilerini girebilirsiniz.Bu bilgileri kaydettiğinizde reseller sahibinin yeni açmış olduğu her hesap otomatik olarak kendisine ait nameserver bilgileri ile aktif olacaktır.

WHM panelinizde yeni bir alan adı için hesap açmak istiyorsanız bu işlemi Account Functions altında bulunan “Create a New Account” bölümünden yapabilirsiniz.Alan adı için yeni bir host hizmeti açtıktan sonra FTP üzerinden bağlantı kurduktan sonra sitenizin dosyalarını sunucuya atabilir ve kurulum işlemlerinize başlayabilirsiniz.
WHM panelinizde yeni bir alan adı için hesap açmak istiyorsanız bu işlemi Account Functions bölümü altında bulunan “Create a New Account” bölümünden yapabilirsiniz.
Bu bölüme giriş yaptığınızda karşınıza aşağıdaki gibi bir ekran gelecektir.

Karşınıza gelen sayfada öncelikle alan adı bilgilerinizi doldurmanız gerekir. Alan adınızı yazdığınız zaman sistem otomatik olarak size bir kullanıcı adı belirleyecektir.İster bu otomatik alan adını kullanabilir isterseniz yeni bir kullanıcı adı verebilirsiniz.Yeni bir kullanıcı adı verirken dikkat etmeniz gereken iki kural vardır.cPanel 8 karakterden fazla karakteri kabul etmez ve noktalama işaretlerini kullanamazsınız. Bu iki kurala uygun şekilde yeni bir alan adı verdikten sonra şifrenizi belirmeniz gerekir.Hesabınızın botlar yolu ile kolayca hack edilmemesi için zor bir şifre belirlemenizi tavsiye ederiz.
Bu bölümleri doldurduktan sonra alt kısımda Choose a Package bölümünden sunucunuzda aktif olan paketlerden bir tanesini seçerek yeni hesap ile ilişkilendirebilirsiniz. Alt kısımdaki reseller ayarları, dns ayarları ve mail ayarları bölümlerinden ayarlarınızı yaptıktan sonra en alttaki Create butonu ile hesabı aktif edebilirsiniz.
İki sayfa olarak yazılmış bu yazılarımızın esas amacı Php socket açma yöntemi ile ele geçirilmiş makinelerden yapılan mail-spam saldırılarını durdurmak ve mail serverlerimizin black liste gitmesine engel olmaktır. Bu yapıyı gerçekleştirir kullandığımız araçlar tamamı ile Open Source ve hala geliştirilmeye devam edilen projelerdir.
Kullandığımız yapılardan ve işlevlerinden biraz bahsetmek gerekirse farklı makinelerimizin tek bir yapı altında kontrol edilmesi ve loglanması için relay server mantığını kullandık. Bu yapıda kullandığmız esas programlar MTA olarak kullanılan Postfix, maillerin içeriğini otomatik olarak kontrol eden Spamassasin ve işin büyük kısmını yapan Policyd Cluebringer.
Bir Postfix eklentisi olan Policyd lightweight yapısı ile mail geldiğinde mailin içeriğine bakmadan sadece headerlerini kontrol edip mail atan kişinin bizim müşterimiz olup olmadığını kontrol edip eğer sistemde izinli ise mail atmasına izin vermesidir. Tahmin edebilirsiniz ki bu yapı ile sistemde tanımlı olmayan maillerin engellenmesi ile %60 daha fazla bir oranla outbound maillerde engelleme uygulayabiliyoruz ve kayıtlı kullanıcıların maillerinin sıkıntısız bir şekilde iletiyoruz.
!! Not kurulumda Ubuntu 15.04 versiyonu kullanılmıştır.
nano /etc/exim.conf
Komutu ile var ise smart route satırını editliyoruz yoksa kendimiz ekliyoruz
smart_route:
driver = manualroute
domains = !+local_domains
transport = remote_smtp
route_data = <RELAY SERVER IP>
echo “This is the body of the email” | mail -s “This is the subject line” user@example.com
tcpdump host <CPanel IP>
Postfixi test etmek için Postfix üzerinden çalışan mail mailx gibi komutları içeren mailutils paketi
Postfix ekipmanlarının indirilmesi
Postfix elemanlarının yapılandırılması
Sistemin çalışırlığının test edilmesi
Bu kısımda Postfixte bir eklenti olarak çalışan Spam assaasian yazılımını yükleyeceğiz
Spamassassinin çalışmasının daha düzenli olması için kullanıcı grubu ve kullanıcı ekleyeceğiz
useradd -g spamd -s /bin/false -d /var/log/spamassassin spamd
Logların tutulacağı yer ve yetkilendirmenin yapılması
Burada Spamassassinin gerekli ayarlarını yapacağız
Spamassasinnin aktif edilmesi
satırının bulunup aşağıdaki satır ile değiştiriniz
Güncellenme ve yeni spam listelerini getirmesi için
satırını bulup aşağıdaki satır ile değiştiriniz
SAHOME adında bir değişken oluşturup aşağıdaki gibi set ediniz
OPTIONS değişkenini bulup aşağıdaki değeri atayınız
Herşeyin aktifleşmesi için spamassassini yeniden başlatın
Bu sebeple Postfixin ana konfigürasyon dosyasını editlememiz gerekiyor
Aşağıdaki satırı bulup bir altındaki ile değiştiriniz
Sütunlar bittikten sonraki ilk boşluğa bu satırları ekleyiniz
Değişiklikleri uygulamak için Postfix’i restart ediniz
Öncelikle bu özelleştirmelerin yapılacağı konfigürasyon dosyasını açıyoruz
Aşağıdaki satırları kontrol ederek ekli ise düzenliyoruz ekli değil ise biz kendimiz ekliyoruz
Servisi yeniden başlatıyoruz
Kurulumu apt-get reposu ile yapacağız bu aşağıdaki komut bize web arayüzü ile birlikte gerekli çoğu programıda beraberinde yükleyecektir.
http://wiki.policyd.org/requirements
MySQL, PostgreSQL or SQLite
Net::Server >= 0.96
Net::CIDR
Config::IniFiles (debian: libconfig-inifiles-perl, rpm: perl-Config-IniFiles)
Cache::FastmMap (debian: libcache-fastmmap-perl, rpm: perl-Cache-FastMmap)
Mail::SPF (required for CheckSPF module)
Hangi veritabanını kullanacağımıza karar verdikten sonra bir de bu veritabanımızın versiyonunu öğrenmemiz gerekiyor
mysql Ver 14.14 Distrib 5.5.44, for debian-linux-gnu (x86_64) using readline 6.3
Policyd ekipmanlarının indirilmesi
Şimdiye kadar kendimizin kullanacağı veri tabanımızı hazırladık fakat henüz kullanılabilir şekilde değil bu veri tabanının bağlantısını mysql ile ilişkilendireceğiz.
Bu query dosyasını mysqlde çalıştıracağız
cluebringer dosyasını editleyin
Aşağıdaki değişkenleri bulup değerlerini değiştiriniz
Servisi başlatınız ve kontrol ediniz
Postfixin Policyd izinleri
Bu kısımda policyd nin web arayüzü olan kısmının ayarlarını yapacağız
Aşağıdaki satırları dosyaya ekleyin veya editleyin
Şimdi usr/share altında olan web sayfalarınını link olarak apache2 programına tanıtalım
Php5 mysql driverinin yüklenmesi</p>
Bunların ayarları için diğer yazımızı inceleyebilirsiniz.
Footnotes