cPanel Dosya izinleri ve Sahipliğini otomatik düzeltmek

Merhaba,

Bugün cPanel sunucumdaki siteleri bir başka sunucuya cPanel Transfer Tool ile aktardıktan sonra ilgili sitenin kök ve sub dizinlerinde permission ve ownership sorunlarıyla karşı karşıya kaldım.Daha önce de karşılaştığımda blog yazılarımda chmod ve chown komutlarını kullanarak ufak bir bash script yazıp sizlerle paylaşmıştım.Şimdi biraz daha güzelini bulduğum için sizlerle paylaşmak istedim.

CentOS Web Panel Kurulumu

Merhaba Arkadaşlar,

Bu makalemizde Centos 6.4 üzerinde Centos Web Panel kurulumundan bahsedeceğim.Yeni bir panel olmakla beraber geleceği olacakmış gibi hissetiren Web Panel ücretsiz olarak sizlere sunulmaktadır.

Açıkcası bu zamana kadar zPanel’den sonra beğendiğim Web Hosting Kontrol panelleri arasında yer almaya başladı.

Panelin bir çok güzel yanı var ama bunların yanında en çok dikkatimi çeken Varnish oldu, yani Apache sunucunuzun önüne cache

pfSense CaptivePortal bypass Patch

pfSense üzerinde eğer CaptivePortal bacağında Tranparent Proxy hizmeti sunuyorsanız (squid2) sistemi bypass edebilecekleri bir bug ortaya çıkıyor.Kullanıcılar karşılama ekranına uğramadan direk Proxy server üzerinden internet’e erişebiliyorlar.Bu durum’da yaptığınız hotspot’un hiçbir geyiği kalmıyor ve dışarıdan ağınıza kolayca erişebilen kullanıcılar elde etmiş oluyorsunuz.(En son isteyeceğiniz bir durum sanırım.)

Çözümü için squid3 veya squid3 dev paketlerini kurarak çözebilirsiniz.Ama bu squid sürümleri şuan pfSense üzerinde stabil olmadığına ınandığım için veya inanmadığımız için squid2 kurup karşıya geçiyoruz.Bu durumlarda squid2’e aşağıdaki patch’i uygulayarak bu bug’tan kurtulabilirsiniz.

CentOS üzerinde Freeradius ve Ghost Kurulumu

Belirli nedenlerden dolayı Radius sunucunuzu bir başka sunucuda tutmak isteyebilir ve/veya pfSense yerine başka bir firewall tercih etmişsinizdir. Örneğin;Mikrotik ve Ghost’u veya sıfırdan yazdığınız bir ürünü Mikrotik’e göre Attribute değerlerini güncelleyerek daha gelişmiş bir Radius Manager yazmışsınızdır.Mikrotik veya Donanımsal Firewall’lar üzerinde Radius server bulunmuyorsa ve üzerinede kurulum yapmanıza izin vermiyor,desteklemiyorsa Radius sunucuzunuzu dışarıdaki bir sunucu’da tutmanız gerekebilir.Bu durum da benim gibi kaynak olarak bakmak için bu makaleyi takip edebilirsiniz.

Shell Scripting – if else kullanımı

Merhabalar ;

Bu aralar pfSense için yazilimlar geliştirirken aynı zamanda ufak ufak makaleler hazırlayıp sizlerlede paylaşmaya karar verdim.Bir makale serisi olmasa da zamanla Shell Scripting konusunda daha fazla makaleye yer vermeyece calısacagim.

Öncelikle şöyle bir mantık yürütelim.Ben burada network servisini restart ediyorum ve komut başarıyla uygulanmıssa başarıyla uygulanmıştır diye mesaj basıyorum.Eğer uygulanmamıssa uygulanmamıstır diye mesaj basıyorum.

Linux türevlerinde eğer bir önceki komutun çalışıp çalışıp çalışmadığını öğrenmek isterseniz aşağıdaki komutu koşturursunuz.

echo $?

Yukarıdaki komutu koşturduğunuzda bir rakam çıktısı alırsınız.Eğer bu rakam 0’sa koşturduğunuz komut başarıyla çalışmıştır.Eğer 0’dan başka bir rakamsa komutunuzun çalışmadığını anlamanız gerekir.Bizde bu mantığı kullanarak bir bash script hazirlayip if else ile komutumuzun calısıp calısmadigini ekrana yazdıracağız.

#!/bin/sh

#Network servisini yeniden baslatiyoruz.

service network restart

# Eğer $? değeri 0'a eşitse "echo "Servis basariyla yeniden baslatildi.!" ekrana yaz.
if [ "$?" == "0" ]; then
	echo "Servis basariyla yeniden baslatildi.!"
#Eger 0'a eşit değilse ekrana çalıştırılamadı diye yaz.!
else  
	echo "Komut calistirilamadi. Kontrol ediniz.!"
fi

echo komutu ekrana yazı yazdırmanızı sağlayan komut olduğunu bildiğinizi varsayıyorum .

Bir başka makalede görüşmek üzere…

MySQL Komutları Bölüm 3

Bir önceki makalemizde Veritabanı Oluşturma ve Silme , Kullanıcı Oluşturma,Silme ve yetkilendirme gibi işlemleri yaptık. Bu bölümde biraz daha makalemizi ileriye seviyeye götürerek Veritabanı Yedekleme,Tablo Yedekleme ve Yedeklerden geri dönüş gibi işlemleri işleyeceğiz.

Bunun yanın sıra MySQL CLI komutlarının shell üzerinde bash script ile nasıl çalıştırabileceğimize göz atacağız.

MySQL Sunucusu üzerindeki bütün veritabanları yedeklemek ;

mysqldump -u root -p --all-databases > /tmp/alldatabases.sql 

MySQL Sunucu üzerindeki tek bir veritabanının yedeğini almak için ;

mysqldump -u root -p veritabani_adi > /tmp/veritabaniadi.sql

MySQL Sunucusu üzerindeki sadece seçilen veritabanları yedekleme ;

mysqldump -u root -p --databases veritabaniadi_1 veritabaniadi_2 veritabaniadi_3 > /tmp/veritabaniadi_1_2_3.sql 

MySQL Sunucu üzerinde yedeklenen veritabanlarını restore etmek ;

mysql -u root -p veritabaniadi < /tmp/veritabaniadi.sql

MySQL Sunucu üzerindeki yedeklenen birden fazla veritabanını restore islemi ;

mysql -u root -p -D veritabaniadi_1 -D veritabaniadi_2 -D veritabaniadi_3 < /tmp/veritabaniadi_1_2_3.sql

Yukarıda sadece veritabanı yedekleme işlemi gördük.Peki ya tablo yedeklemek istersek ?

mysqldump -c -u username -ppassword veritabaniadi tabloadi > /tmp/veritabaniadi_tabloadi.sql

Biraz daha ileriye gidip bash script hazirlayip bir kaç işlem yapalim.Aşağıdaki Bash Script yeni bir veritabani,yeni bir user ve user yetkilerini olusturur.Sizde buna yakın şeyler yapacaksanız aşağıdaki örneği dikkate alabilirsiniz.

#!/bin/sh
# Samet YILMAZ - 2014 - www.sametyilmaz.com.tr
# Yeni veritabani olusturma
mysql -u root -prootsifresi -e "CREATE DATABASE veritabaniadi;"
# Yeni kullanici olusturma
mysql -u root -prootsifesi -e "CREATE USER 'dbuser'@'localhost';"
# Yeni kullaniciya sifre belirleme
mysql -u root -prootsifresi -e "SET PASSWORD FOR 'dbuser'@'localhost' = PASSWORD('sifre');"
# Yeni kullaniciya veritabani yetkisi verme
mysql -u root -prootsifresi -e "GRANT ALL ON veritabaniadi.* TO 'dbuser'@'localhost';"
# Yeni kullaniciya disaridan erisim yetkisi verme.
mysql -u root -pboxnet -e "GRANT ALL ON veritabaniadi.* TO 'dbuser'@'%' IDENTIFIED BY 'sifre';"

EOF kullanarak bashscript ile mysql komutlarını koşturmak ;

#!/bin/bash
mysql -u root -prootsifreniz << EOF
use mysql;
show tables;
EOF

Umarım bu makale serisi işinize yaramıştır.Eğer hergün benim gibi standart mysql kurulumları vs yapiyorsanız bu tarz çözümler işlerinizi %80 kolaylaştıracaktır.

Başka bir makale serisinde görüşmek üzere. : )

MySQL Komutları Bölüm 2

Bir önceki makalemizde genelde veri arama ve listelemeye göz atmıştık.

Bu bölümde CREATE,DROP,GRANT gibi fonksiyonları kullanarak veritabanı işlemleri yapacağız.Bir sonraki makalemizde bash script ile mysql komutlarını koşturmayı ve yedeklemeye göz atacağız.

Arama
RSS
Beni yukari isinla