Kategoriler
Apache Cpanel Faydalı Bilgiler SSH üzerine

Lisanssız Cpanel sunucularda domain yada subdomain ekleme!

Arkadaslar cpanel kullaniyorsaniz yuklu bir ucret oduyorsunuz demektirki bu ucret bazen butcemizi zorlayabilir. Ancak lisanssiz kullanima malesef izin verilmiyorki bu kisitlamalardan biride domain yada subdomain ekleyememek. Bunu asmak icin sshyi kullanacagiz.

Lisanssiz cpanel sunucularda domain eklemek icin burdaki yaziyi (Cpanel sunucularda SSH den yeni domain eklemek!) okuyabilirsiniz. Bunun yaninda yeni bir subdomain eklemek isterseniz asagidaki yonergeleri sirasi ile takip edin.

Apache yapilandirma dosyasini acalim: /etc/httpd/conf/httpd.conf

icerisinde domain bilgilerinizin eklendigi (sonlara dogru) bir yer var.

<VirtualHost 144.255.144.144:80>

......

</VirtualHost>

ile biter.

Buraya biz ekleyecegimiz subdomain ile ilgili yeni bilgileri ekleyecegiz. Siz kendi dosyanizdaki herhangi bir domainin VirtualHost kod kismini alip degistirerek ekleyebilirsiniz, yada asagida benim yazdigimi ekleyebilirsiniz. Saglikli olan sizdeki kalibi kullanmaniz olacaktir, cunku bazi sunucularda suphp v.s gibi programlar kurulmamis olabiliyor.

<VirtualHost 144.255.144.144:80>
    ServerName SUBDOMAIN.domain.com
    ServerAlias www.SUBDOMAIN.domain.com
    DocumentRoot /home/anaDOMIANklasoru/public_html/SUBDOMAIN
    ServerAdmin [email protected]
    ## User piclect # Needed for Cpanel::ApacheConf
    <IfModule mod_suphp.c>
        suPHP_UserGroup anaDOMIANklasoru anaDOMIANklasoru
    </IfModule>
    <IfModule !mod_disable_suexec.c>
        SuexecUserGroup anaDOMIANklasoru anaDOMIANklasoru
    </IfModule>
</VirtualHost>

Kodlamadaki renkli kisimlar onemlidir, yanlislik yapmayin.

*144.255.144.144 = Domain’in ip adresi, eger eklememis iseniz default sunucu ipsini girin.
*SUBDOMAIN.domain.com = olusturacaginiz subdomainin ismi
*anaDOMIANklasoru = Ana domainin kurulu oldugu klasor ismi
*SUBDOMAIN = Subdomain klasorunun ismi (ana domainin bulundugu alana yeni klasor acmaniz gerekli)
*anaDOMIANklasoru = UserGroup kisimlarindaki alani ana domainin grup ismine gore degistirin. Genelde olustururken kullandiginiz kullanici adi olur.

Ek not: bunu yaptiktan sonra subdomain icin klasor olusturmayi unutmayin.

Sonrasinda NS tanimlayarak bu domaine gelecek istekleri apachenin yonlendirebilmesini saglayacagiz.

Ana Domain’in Ns yapilandirma dosyasini acin: /var/named/ANADOMAIN.com.db

En altina asagidaki kodlari duzenleyerek ekleyin:

SUBDOMAIN 14400 IN A  144.255.144.144
www.SUBDOMAIN 14400 IN A  144.255.144.144

islem bu kadar. Sonrasinda yapilacak is apache ve dns server’a restart atmak olacaktir. Asagidakileri sirasi ile calistirin:

service httpd restart
service named restart

Eger sisteminizde nginx kurulu ise yapilandirma dosyasinda subdomain bilgilerinizi eklemeniz ve apachede tanimladigimiz port’u (80) degistirmeniz gereklidir.

Kategoriler
Cpanel Faydalı Bilgiler SSH üzerine

Cpanel sunucularda SSH den yeni domain eklemek!

Bazen cpanel kullanmayabiliriz, bunun farkli sebepleri varki bunlarin basinda lisans ucreti gelmektedir. Asagidaki kodu kullanarak SSH den sunucunuza kolayca yeni domain ekleyebilirsiniz:

/scripts/wwwacct DOMAIN.com KULLANICI-adi SIFRE-yaz unlimited advanced -n

Bunu SSH ekranindan kendinize gore duzenleyerek gonderin, karsiniza bir soru kismi gelecek. Eger gercekten olusturmak istiyorsaniz yes yazarak enter yapin, domain hostunuza eklenmis olacaktir.

NOT: kullanici adini fazla uzun girmeyin, kabul etmeyebilir..

Kategoriler
Faydalı Bilgiler mysql hakkında Panelsiz

SSH ile Mysql database oluşturma, kullanıcı oluşturma, database silme

Daha once hazirladigim panelsiz websunucusu hazirlama dokumanini guncelledim, ayri olarak bir konu acip bu bilgiyede ihtiyaci olan arkadaslarin daha cabuk ve kolay sekilde ulasabilmelerini istedim. Soz konusu dokuman ssh ile mysql programiniz da database, kullanici hesabi olusturabilmenizi ogrenmenizi saglayacak..

SSH panelimize girelim (putty), ardindan asagidakini yazip enter yapin: (mysql’ye baglanalim)

mysql -u root -p

Ardindan mysql sifrenizi isteyecek sizden, dokumanin baslarina dogru mysql sifrenizi yenilemeyi gormustunuz, burda yaptiginiz sifreyi yazip enter yaparak mysql programina baglanin.

Sonrasinda asagidaki kodu kullanarak database olusturalim:

CREATE DATABASE db-isminiz-buraya;

db-isminiz-buraya: bu kismi olusturacaginiz database ismi ile degistirin ve enter yapin, sonrasinda asagidaki gibi bir mesaj cikacak, bu islemi dogru yaptiginiz anlamina gelir, aksi halde hata yapmissiniz demektir:

Query OK, 1 row affected (0.00 sec)

Simdide Database adina kullanici ve sifre belirleyelim:

GRANT USAGE ON db-isminiz-buraya.* to [email protected] IDENTIFIED BY 'db-sifreniz-buraya';

db-isminiz-buraya: az once olusturdugumuz db ismi aynen yazin.
db-kullanici-adiniz-buraya: database icin kullanici adini yazin.
db-sifreniz-buraya: Olusturdugunuz kullanici icin sifre belirleyin.

Ve Database ile kullanici ismini birbirine baglayalim:

GRANT ALL  ON db-isminiz-buraya.* to [email protected] ;

db-isminiz-buraya: az once olusturdugumuz db ismi aynen yazin.
db-kullanici-adiniz-buraya: database icin kullanici adini yazin.

Olusturdugunuz bir datebaseyi silme:

DROP database db-isminiz-buraya;

db-isminiz-buraya: Silmek istediginiz db ismi aynen yazin.

Bu islemlerin her kademesinde Query OK seklinde cikti verecek, bu sorunsuz islemleri hallettiniz anlamina gelecektir. Suanda database ve kullanici hesaplarini olusturmus olduk. Artik wordpress yada farkli bir sistem kurarken db bilgilerini istediginde yukarida yaptigimiz kullanici adi, database adi ve sifreyi kullanabilirsiniz..

Kategoriler
Centos hakkında Linux Web sunuculari Plesk

Centos Sunucuya Plesk Kurulumu (Otomatik)

Sunucunuz yeni kurulmus ve panel ihtiyaciniz varsa plesk onerebilecegim panel yazilimlarindan birisidir. Ozellikle son versiyonu ile gercekten cok iyi is cikarmis parallels firmasi. Ozellikle aplikasyon kisminda, bir cok seyi zorlanmadan, tek tik ile kurabiliyorsunuz sunucunuza. Cpanel ayarinda, fazla test etmedim ama gayet basarili gorunuyor, eski versiyonlarina gore.

Suanda biz plesk’in son versiyonunu otomatik olarak kuracagiz, bu son versiyon belli bir sure siniri veriyor, 15 gun ucretsiz kullanabiliyorsunuz, sonrasinda ucret odemeniz gerekli. Anlayacaginiz cpanel gibi bu panel yazilimida ucretli olarak kullanima sunulacak.

Ssh (putty) programinizi acin ve sunucunuza baglanin, ardindan asagidaki kodlardan birini calistirin, ilkini oneririm (denedim calisiyor):

      wget -O - http://autoinstall.plesk.com/one-click-installer | sh
      curl http://autoinstall.plesk.com/one-click-installer | sh
      fetch -o - http://autoinstall.plesk.com/one-click-installer | sh

Sonrasinda arkaniza yaslanin ve 30 dakikaya kadar bekleyin, belki daha erkende bitebilir kurulum. Asagidaki gibi bir ekranla karsilasacaksiniz:

Boylece plesk panelimiz sorunsuz sekilde kurulmus oldu. Simdi sira panele girip baslangic ayarlarini yapmak, ucretsiz trial 15 gunluk kullanim icin dosya islemlerini halletmek, panelimizin tadini cikarmak :)

Sunucunuzun IP adresini adres satirina yazarak panelimize ulasalim. Bunu asagidaki sekilde yapin, aksi halde panele ulasmaniz zor olacaktir :)

https://SUNUCU-IP-ADRESINIZ:8443/

Sonrasinda root sifreniz ile panele giris yapin. Karsiniza kullanici sozlesmesi cikacak, kabul edip devam edelim:

Ardindan acilacak panelde sunucu adi ve ip adresi kisimlari olacak. burada yeni IP ekleyebilirsiniz. Ve en altdan admin sifresi olusturmaniz gerekli..

Burda degistirecek yada ekleyecek biseyiniz yoksa, sifrelerinizi belirleyip okeyleyin, sonraki adima gecin..

Bu adimda sizden bir secim yapmaniz istenecek, bu panelinizin kullanimina yonelik bir secim olacak, yani size uygun olani secin, gelismis webhostin yonetimi icin en usttekini secebilirsiniz:

Diger acilan alanlari duzenlemenize gerek yok, en iyi goruntulenme sekli seciliyor zaten :)

Ardindan bilgilerinizi isteyecek sizden, doldurup devam edin:

Bu adimda plesk panelinizi full sekilde kullanmaniz icin key yuklemesi yapmaniz gerekli, ucretli almayacaksaniz 15 gunluk ucretsiz deneme key dosyasini resimdeki link’e tiklayarak alabilirsiniz, daha sonra ikinci yuvarlak kisimdan da key dosyasini yukleyin, sonrasinda paneliniz full olacak ve kullanmaya baslayabilirsiniz:

Key dosyasini yuklerken altda iki secenek olarak, ikisinide secin, yoksa yukleme gerceklesmez..

Ve ideal son:

Kategoriler
Az önce öğrendim Centos hakkında Cpanel SSH üzerine

Cpanel kurulumu hatasina çözüm ‘Fatal! Perl must be installed before proceeding!’

ilk deva cpanel kuacaksaniz bazen bu hatayi alabilirsiniz: Fatal! Perl must be installed before proceeding!

Bu hata bazi modullerin yoklugundan dolayi ortaya cikmaktadir. Benimde kullandigim bir vpsde sunucuya format attiktan sonra cpanel kurmak istedigim ortaya cikti bu hata. Hata bariz sekilde zaten sorunun ne oldugunu gosteriyordu. Perl uygulamasi ve buna binayen gerekli olan modullerin kurulmasi gerekiyordu. bunu yapmak icin ssh ekranindan asagidakini yum kodunu calistirarak PERL ‘i kuralim.

yum install perl

Bundan sonra Cpanel kurulumuna devam edebilirsiniz, ihtiyaci olan eklentileri kurduk, sorun olmayacaktir.

Kategoriler
Centos hakkında Nginx Plesk

Centos/Plesk panel sunucularda nginx kurulumu!

Plesk panel kullananların yıllardan beri aynıdır sorunu, nginx ‘i iyi şekilde kuramamak :) Aşağıdaki anlatacağım yazı ile 5dk gibi bir sürede sitelerinizi nginx yardımı ile göstermeye başlayabilirsiniz. Yaptığım testlerde hit olmamasına rağmen apache üzerindeki wordpress siteler oldukça yavaş durumdaydı. Nginx e geçtikten sonra bu süre gözle görülür derecede düştü ve sitede dolaşma, gezme oranı arttı..

Testler sırasında kullandığım plesk panel son versiyondu sanırım 10.0.1 15 günlük deneme süresi var. ancak aplıkasyon kısmı çok hoşuma gitti, birçok şeyi kolayca ve hızlıca kurabiliyorsunuz, ilerde bu konuda detaylı bir inceleme yapacağım :)

1: ilk adım nginx’i kuralım
Nginx’i yum deposundan kuracağız, büyük ihtimal yum deponuzda nginx uygulaması yoktur, bu yüzden aşağıda işletim sisteminize uygun olan kısmı ssh den çalıştırın:

CentOS 5

rpm -Uvh http://nginx.org/packages/centos/5/noarch/RPMS/nginx-release-centos-5-0.el5.ngx.noarch.rpm

CentOS 6

rpm -Uvh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

Sonrasında aşağıdaki yum kodu ile nginxi kuralım:

yum install nginx

Kurulum sırasında size kurulsunmu diye soru süracak y yaparak enter yapın kurulum tamamlansın. şuanda nginx sisteminize sorunsuz şekilde kurulmuştur.

Sırada nginx conf dosyasını kendi hazırladığımız ile değiştirmek var:

rm -rf /etc/nginx/nginx.conf
cd /etc/nginx/
wget www.makaleci.com/dersler/nginx/nginx.conf

2: Siteleri Nginx’e tanıtma
Sıra hesabımızdaki siteleri nginx’e tanıtmaya geldi. Bunun için bu dosyayı düzenlememiz gerekli:
/etc/nginx/conf.d/default.conf

Ben düzenlemek için cuteftp yada filezilla programını kullanıyorum. ancak sizde bunlardan birisi yoksa ssh ilede düzenleme yapabilirsiniz.
SSH ile dosyayı düzenlemek için bu şekilde açın: nano /etc/nginx/conf.d/default.conf

Dosya içerisindeki herşeyi silin ve aşağıdaki örnek kodu düzenleyerek ekleyin: (Guncellendi: 22/11/2011 19:26)

server {
access_log off;
error_log /var/log/httpd/nginx.errors.DOMAIN.com.log warn;
listen 80;
server_name DOMAIN.com www.DOMAIN.com;

# Nginx'in calistirmasini istediginiz statik dosya uzantilarini belirleyin.
location ~* .(gif|jpg|jpeg|png|wmv|avi|mpg|mpeg|mp4|js|css)$ {
root /var/www/vhosts/DOMAIN.com/httpdocs; # Burda domaine ait kok dizini belirtiyoruz.
}

location / {
proxy_send_timeout 90;
proxy_read_timeout 90;

proxy_buffer_size 4k;
proxy_buffers 16 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;

proxy_connect_timeout 30s;

proxy_redirect http://www.DOMAIN.com:8080 http://www.DOMAIN.com;
proxy_redirect http://DOMAIN.com:8080 http://DOMAIN.com;

proxy_pass http://DOMAIN-IP-ADRESINIZ:8080/;

proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

Bu kalıp’a dikkat edin, hesabınızda kaç tane domain varsa bu kalıbı kullanarak tanımlamanız gerekli, yani her domain için alt alta yeniden eklemeniz gerekli. Yani bir domain için yukarıdaki kalıbı eklediğinizde default.conf dosyasına, yeni bir domain eklemek isterseniz aynı dosyada en altdan bir satır aşağı geçerek aynı kalıbı kullanarak diğer domaini tanımlamalısınız..

Ne kadar site varsa hepsini default.conf dosyasında tanımladıktan sonra dosyayı kaydedin ve kapatın.

3: Apache portunu düzenlemek
Şimdi yapacağımız işlemde apache portunu düzenleyerek nginx’e yönlendireceğiz, böylece gelen her istek nginx’e giderek işleyecek, statik dosyalar haricindekiler ise apachede kalacak. (hesabınızdaki siteler hariç, o düzenleme sonraki adımda yapılacak)

Bu dosyayı düzenlememiz gerekli: /etc/httpd/conf/httpd.conf
ssh ile yapacaklar: nano /etc/httpd/conf/httpd.conf

Bu dosya içinde Listen 80 kısmı bulup bu şekilde değiştireceğiz: Listen 8080
Kaydedip çıkıyoruz.

3:a – Apache icin mod_rpaf kurulumu:
mod proxy and forward denilen bu modul sayesinde biz nginxden gelen istemlerin normal istemciden gelmis gibi gorunmesini saglayacagiz.

Guncel modul versiyonu icin buraya bakabilirsiniz (asagidaki gunceldir mod_rpaf: 0.6): http://stderr.net/apache/rpaf/download/

cd /usr/local/src
wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
tar xvfz mod_rpaf-0.6.tar.gz
cd mod_rpaf-0.6
apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c

Bu modulu kurabilmeniz icin sunucunuzda httpd-devel, gcc uygulamalarinin kurulu olmasi gereklidir, eger bunlar yoksa yada hata aliyorsaniz mod_rpaf kurulumunda asagidaki kodu ssh den calistirin ve eklentileri kurun:

yum install httpd-devel gcc

Sonrasinda mod_rpaf kurulumu kurulumunu tekrar bastan yapin..

mod_rpaf kurulduktan sonra httpd.conf dosyanizi acin ve musait bir yere ekleyin:

LoadModule rpaf_module modules/mod_rpaf-2.0.so
RPAFenable On
RPAFproxy_ips 127.0.0.1 10.0.0.1 (ornek: 127.0.0.1 IP1 IP2 IP3 v.s)
RPAFsethostname On
RPAFheader X-Forwarded-For

Kod icerisinde de belirtilen ip kisminin devamina sunucuda ekli olan butun ipleri bir bosluk birakarak yazmaniz gerekli, aksi halde istatistik programlari veya scriptleri her ziyaretciyi default sunucu ip sinde gorecektir, yani kod icerisindeki (127.0.0.1) ipsinden.
NOT: 127.0.0.1 ip adresini silmemeniz gerekli, diger ip adreslerini devamina eklemeniz gerekli.. (sunucuda kac ip varsa hepsini bir bosluk birakarak devamina ekleyin.)

4: Hesabımızdaki siteleri nginx’e yönlendirelim
Pleskde sitelerin konfigürasyon dosyaları bu klasör içinde bulunur herzaman: /var/www/vhosts/DOMAİN.COM/conf
Bu klasör içinde domaine ait ip, yönlendirme v.s gibi bilgiler yer alır, burdaki dosyaları düzenleyerek içerisinde 80. portu gelen istekleri nginx portuna yönlendirecek şekilde düzenleyeceğiz. Bu düzenlemeyi her domain için yapmanız gerekli, en azından nginx’in yorumlamasını istediğiniz ve nginx’e tanıttığınız siteleriniz için.

Klasör içindeki bütün dosyaları açın, örnek bu şekilde oluyor isimleri genelde:

ve aşağıdaki gibi bir yer arayın: Genelde 135-140. satırlar arasında yer alır.


ServerName "DOMAIN.COM:80"
ServerAlias "www.DOMAIN.COM"

Yani kısaca ordaki dosyaların hepsini açın ve bunu aratın :80 bulduklarınızı da bununla değiştirin :8080

Yine bu düzenlemeyi o klasördeki bütün dosyalarda aratıp bulduklarınızda yapın. Ve hesabınızda ekli bütün domainler için ayrı ayrı yapmanız gerekli :)

4:a – Birden fazla IP li domain varsa eger:

birden fazla domain ve bu domainlere ayri ayri ip atanmis ise asagidaki gibi ipleri belirtmeniz gerekli her domain ipsi icin:

NameVirtualHost ip1:8080
NameVirtualHost ip2:8080
NameVirtualHost ip3:8080
NameVirtualHost ip4:8080

yani her ip icin tanimlama girmeniz gerekli. Genelde vps sitelerinde cikabilecek bir sorun, eger her domainize ayri ayri ip atamis iseniz bu ayari yapmaniz gerekmektedir. Aki halde acilmama gibi sorunlarla karsilasabilirsiniz.

Sonrasında önce apache’e restart atıp sonrada nginx’i başlatalım.
Apache restart:

service httpd restart

Nginx başlat:

service nginx start

Lazım olabilecekler:
Nginx yeniden başlatma:

service nginx restart

Guncellendi: 21/11/2011 19:39
Son bir adim kaldi. Oda kok dizin chmod ayarini duzenlemek. bunu yapmazsaniz nginx’e yonlendirdigimiz statik dosyalar calismayacaktir ve 404 not found hatasi verecektir.
Sitenizin kok dizininin chmod ayarini 0750 den 0755 e cevirin (degistirin): /var/www/vhosts/DOMAIN.com/httpdocs

Ornek resimdeki gibi olacak:

Buraya kadar sorunsuz ve hatasız geldi iseniz hayırlı olsun artık tanımladığını domainler nginx tarafından yorumlanıyor demektir. Bunu test etmek için buraya girip sitenizi sorgulatın ve çıkan sonuçlarda nginx ile versiyon numarasını görün. Görüyorsanız kendinizle gurur duyun :)

5: Nginx’i yeni versiyona guncelleme
Nginx yeni versiyon ciktiginda asagidaki yum kodunu ssh den yazip enter yapin:

yum update nginx

Sonrasinda size soru soracak y yazip enter yapin nginx guncellensin otomatik olarak :)

sonrasinda nginx e restart atalim:

service nginx restart

Bu dokümanı hazırlarken 3 vds den yararlandım, 3’unde de kurdum sorunsuz çalıştı. Netde ki çoğu anlatımda farklı eklentileride kurduruyorlar size ancak problem çıkmadığı için gerek duymadım onları kurmaya. ancak olaki bir sorun çıkarsa yorum olarak bize bildirin, doküman o yönde güncellenecek, yenilenecek, evrim geçirecektir :)

Su an itibari ile dokuman guncellenmistir: 31/01/2012 19:58 (domainleri nginx’e tanitirken kullandigimiz kalip kodlarinda guncelleme yaptim, nginx in isleyecegi statik dosyalari belirterek nginxden daha fazla yararlanmamizi sagladik.

Yeni guncelleme: mod_rpaf kurulumunu anlattim, bunun eksikliginde ziyaretciler ayni IP den girilmis gibi goruluyor ve ip bazli korumali scriptlerde giris sorunu yasanmaktadir. Ayrica giren herkesi ayni ipden gorundugu icin dogru sonuc alinamamaktadir. bu yuzden boyle eksiklikleri yasamamak icin bu eklentiyi kurmamiz gerekli. Lutfen yukaridaki guncelleme tarihinden once bu dokumani kullananlar mod_rpaf kurulum kismini uygulayarak sunucularini guncellesinler.

Yeni guncelleme: Birden fazla ip li ve degisik ipdeki domainler icin duzenleme. Eger her domaine farkli ip atiyorsaniz, bu ayari yapmaniz yerinde olacaktir. bunun icin 4:a kismini uygulamaniz yeterli olacaktir.

Vatana millete hayirli olsun) :)

Kategoriler
Cpanel Kontrol panelleri Linux Web sunuculari

Sunucuya saldiriyi ogrenmek ve CSF ile ulkeleri komple engellemek!

Bir kac gundur basima geliyor, buyuk saldirlar almaya basladik. Artik ne kadar buyuk bilemiyorum ama bizim sunucularimiza gore yeterince buyuktu. Bu saldirilar genelde oglen vakti 12 den basliyor 5-6 saat araliksiz devam ediyordu. Sunucu ve nginx cok iyi idare etti, elinden geleni yapti bence. Ancak bir yerden sonra iyice yavaslamaya basliyordu sunucu.

incelememin sonucunda gelen isteklerin cogunlugunun çin’den oldugunu gordum.. Simdi size sirasiyla saldiri olup olmadigini anlamayi ve varsa bunu nasil engelleyeceginizi anlatacagim.