26 Eylül 2012 Çarşamba

Shared SSL ile Joomla 2.5 Yönetim Panelini çalıştırmak

Bildiğiniz gibi Joomla kurduğunuzda varsayılan olarak SSL kullanmadan çalışmaktadır. Sizin kullandığınız uygulamalar sertifikaya ihtiyaç duymasa da en azından yönetim panelinizin SSL ile çalışması kullanıcı adı ve şifrenizin güvenliğini sağlayacaktır.

Sadece yönetim paneliniz ve özellikle kullanıcı adı ve şifrenizin açık bir ağda güvenlini sağlamak sertifika almanıza da gerek yok tabi ki. Bunun için hosting aldığınız firmaların size ücretsiz olarak sağlamış olduğu Shared SSL hizmetinden faydalanabilirsiniz.

Shared SSL kullanabilmeniz için öncelikle web sitenizi host ettiğiniz sunucunun tam adını öğrenmelisiniz. Genelde hosting firmalarının sıkça sorulan sorular bölümlerinde bunu bulabilirsiniz. Hostgator firması, sunucu adınızı nasıl bulacağınızı burada detaylıca anlatmış.

Sunucu adınızı bulduktan sonra bir de cpanel kullanıcı adınıza ihtiyacınız var. Bu iki paramtreyi bulduktan sonra web sitenizin shared SSL ile çalışan adresi aşağıdaki şekilde olacaktır.

https://sunucuadiniz.hostingfirmanizinalanadi.com/~cpanelkullaniciadiniz

Yukarıdaki örnek özellikle hostgator hosting firması için geçerlidir. Siz kendi hosting firmanızdan shared ssl için çalışacak dizilimi bulabilirsiniz.

Bu işlemlerden sonra Joomla sayfalarında yapmanız gereken 1-2 değişiklik kaldı. Bunun için Joomla klasörlerinden /library/joomla/enviroment içindeki uri.php dosyasını açalım.

Önce public static function getInstance($uri = 'SERVER') fonksiyonuda aşağıdaki 2 değişikliği yapalım


if (!empty($_SERVER['PHP_SELF']) && !empty($_SERVER['REQUEST_URI']))
{

/* Eklenecek kısım 1 başlangıç */
if (JPATH_BASE == JPATH_ADMINISTRATOR) {

$theURI = 'https://sentra.websitewelcome.com/~cat' . $_SERVER['REQUEST_URI'];

} else {
/* Eklenecek kısım 1 bitiş */


// To build the entire URI we need to prepend the protocol, and the http host
// to the URI string.
$theURI = 'http' . $https . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];

/* Eklenecek kısım 2 başlangıç */
}
/* Eklenecek kısım 2 bitiş */
}
else


Daha sonra aynı dosyada public static function base($pathonly = false) fonksiyonunda aşağıdaki değişikliği yapalım



self::$base['path'] = rtrim(dirname($script_name), '/\\');
}


/* Eklenecek kısım başlangıç */

if(JPATH_BASE == JPATH_ADMINISTRATOR) {
 $base['path'] = '~cat' . $base['path'];
}

/* Eklenecek kısım bitiş */

}

return $pathonly === false ? self::$base['prefix'] . self::$base['path'] . '/' : self::$base['path'];



Artık yönetim panelinizi https://sunucuadiniz.hostingfirmanizinalanadi.com/~cpanelkullaniciadiniz adresi ile çalıştırabilirsiniz.

24 Eylül 2012 Pazartesi

Adım adım Zabbix 2.0 kurulumu 2

Bir önceki makalemde Zabbix 2.0 kurulumu için gereken işletim sistemi Ubuntu Server 12.04 kurulumunu anlatmıştım. Şimdi bu işletim sisteminin üstüne Zabbix 2.0 kurulumunu anlatacağım.

Zabbix kurulumuna geçmeden önce Ubuntu'da yapmamız gereken ayarları yapalım.

Öncelikle işlem yaparken bir kısıtlama ile karşılaşmamak için root olalım. Bunun için komut satırına aşağıdaki komutu yazıp enterlayalım. Şifre soracak ve şifremizi girelim.

sudo su -

İlk olarak sunucumuzun IP adresini sabitleyelim. Sunucunun şu andaki IP ayarlarını görmek için komut satırında ifconfig yazalım.


Şu anda sunucumun IP adresi 192.168.2.114 müş. Bu IP adresini 192.168.2.25 yapacağım. Bunun için her zaman kullandığım vi editör ile /etc/network/interfaces dosyasında aşağıdaki satırda değişiklik yapacağız. Benim sunucumda tek ethernet olduğu için sadece eth0 var. Sizdeki sunucunuzun ethernetlerine göre bu değişkenlik gösterebilir. Siz IP ayarlarınızı kendi ağınıza göre yapmalısınız.

aşağıdaki satır yerine
iface eth0 inte dhcp

şu şekilde olacak

iface eth0 inet static
address 192.168.2.25
netmask 255.255.255.0
gateway 192.168.2.254
network 192.168.2.0
broadcast 192.168.2.255
dns-nameservers 192.168.2.254


Daha sonra kaydedip çıkalım ve bu ayarların aktif olması için network servisini yeniden başlatalım. Bunun için aşağıdaki komutu kullanalım.

# /etc/init.d/networking restart

Ayarlarımızın aktif olduğunu kontrol etmek için tekrar ifconfig komutunu kullanabilirsiniz. Artık 192.168.2.25 IP si ile sunucuma bağlanabilirim.

Şimdi Zabbix kurulumuza geçebiliriz. Öncelikle Zabbix sunucumuzu buradan indirelim. İndirdiğimiz dosyayı (zabbix-2.0.2.tar.gz) sunucu içerisinde /var/tmp içine kopyalayalım. Ben bu işlem için windowsta çalışan WinSCP programını kullanıyorum.

Daha sonra sunucumuzda # cd /var/tmp komutu ile klasör içine girelim ve aşağıdaki komut ile sıkıştırılmış dosyayı açalım.

# tar -zxvf zabbix-2.0.2.tar.gz

Dosyalar açıldıktan sonra kalsörün içine girelim.
# cd zabbix-2.0.2/

Dikkat: Bundan sonra yazacağım komutlar bu klasör içindeyken çalışacaktır. Başka bir klasör içindeyseniz komutları ona göre güncellemelisiniz.

Zabbix grubu ve kullanıcısını yaratalım

# groupadd zabbix
# useradd -g zabbix zabbix

Zabbix kullanıcısına şifre atayalım
# passwd zabbix


MySQL kurulumu yapalım
# apt-get install mysql-server

Kurulum sırasında sizden mysql root için şifre isteyecek sadece.

MySQL Database yaratalım
# mysql -u root -p
mysql > create database zabbix character set utf8;
mysql > quit;

Databasede gerekli verileri import edelim.
# mysql -u root -p zabbix < database/mysql/schema.sql
# mysql -u root -p zabbix < database/mysql/images.sql
# mysql -u root -p zabbix < database/mysql/data.sql

Gerekli olan diğer programların kurulması
# apt-get install build-essential
# apt-get install libmysqld-dev
# apt-get install libcurl4-openssl-dev
# apt-get install libsnmp-dev
# apt-get install make

Zabbix konfigürasyon dosyasının oluşturulması
# ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl

Kurulumu başlatalım
# make install

Zabbix konfigürasiyon dosyası ayarları
# vi /usr/local/etc/zabbix_server.conf

Bu dosyanın içine database parolasını girelim.
DBPassword=***

Daha sonra Zabbix Server ve Zabbix Agent servislerini başlatalım.
# zabbix_server
# zabbix_agentd

Sunucu kurulumumuz tamamlanmış oldu. Şimdi Sunucunun Web arayüzünü kuralım. Önce gerekli programları kuralım.

# apt-get install apache2
# apt-get install php5
# apt-get install libapache2-mod-php5
# apt-get install php5-mysql
# apt-get install php5-gd

Apache sunucusunu yeniden başlatalım
# /etc/init.d/apache2 restart

Web dosyalarını kopyalayalım
# mkdir /var/www/zabbix
# cp -r frontends/php/* /var/www/zabbix/

php.ini dosyasında düzeltmeler
# vi /etc/php5/apache2/php.ini


post_max_size = 8M > post_max_size = 16M
max_execution_time = 30 > max_execution_time = 300
max_input_time = 60 > max_input_time = 300
date.timezone = > date.timezone = Turkey

Bu değişiklikler çalışsın diye Apache sunucusunu tekrar yeniden başlatalım.
# /etc/init.d/apache2 restart

Artık web arayüzünden kurulumu yapabiliriz. Bunun için bir makinadan sunucuya browser ile ulaşalım.

http://192.168.2.25/zabbix/

Karşımıza kurulum sihirbazı çıkacak, next diyerek devam edelim.




Karşımıza php ayarlarının kontrol edildiği ekran çıkacak. Herşeyin tamam olması lazım, next diyerek devam edelim.


Database ayarlarının olduğu sayfa çıkacak. Database şifresini yazıp "Test connection" diyelim. Herşey doğru ise Next aktif olacak, next diyelim.


Zabbix Server detaylarının olduğu sayfa gelecek. Name kısmına Zabix Server yazarak next diyelim.


Son kontrolleri yapacağımız sayfa karşımıza çıkacak. Next diyerek devam edelim.


Zabbix konfigürasyon dosyasının oluşturulacağı sayfa gelecek. Download configuration file diyerek dosyayı bilgisayarımıza indirelim ve dosyayı /var/tmp içine atalım. Buradan root ile var/www/zabbix/conf klasörüne kopyalayalım ve web arayüzünden Retry diyerek Finish tuşunun aktif olmasını sağlayalım ve finish diyelim.

# cp /var/tmp/zabbix.conf.php /var/www/zabbix/conf



Finish dediğimizde kurulum tamamlanmış olacak ve karşınıza kullanıcı adı ve şifre soran ana ekran gelecek. Zabbix kurulumunda varsayılan kullanıcı adı ve şifre aşağıdaki gibidir.

Kullanıcı adı : admin
Şifre : zabbix

Suucumuz artık kurulmuş oldu. Yalnız bilgisayar bağladığında sunucumuz otomatik başlayacak şekilde ayarlanmış durumda değil. Şu an her seferinden elinizle servisleri başlatmanız gerekecek. Şimdi bu otomatik ayarları da yapalım.

Log ve Pid dosyası ayarları

# mkdir /var/log/zabbix-server
# chown zabbix:zabbix /var/log/zabbix-server
# mkdir /var/run/zabbix-server
# chown zabbix:zabbix /var/run/zabbix-server
# mkdir /var/log/zabbix-agent
# chown zabbix:zabbix /var/log/zabbix-agent
# mkdir /var/run/zabbix-agent
# chown zabbix:zabbix /var/run/zabbix-agent

Konfigürasyon dosyası ayarları
# vi /usr/local/etc/zabbix_server.conf
Log dosyası için : /var/log/zabbix-server/zabbix_server.log olacak

# vi /usr/local/etc/zabbix_agentd.conf
Log dosyası için : /var/log/zabbix-agent/zabbix_agentd.log olacak

Servis dosyalarını kopyalayalım
# cp misc/init.d/debian/zabbix-* /etc/init.d/

Zabbix Server servis dosyalarındaki değişiklikler için 
# vi /etc/init.d/zabbix-server
Pid dosyası için : /var/run/zabbix-server/$NAME.pid olacak

echo "Starting $DESC: $NAME" satırının altına aşağıdaki satırlar eklenecek


if test ! -d $(dirname $PID); then
mkdir $(dirname $PID)
chown -R zabbix:zabbix $(dirname $PID)
fi

Zabbix Agent servis dosyalarındaki değişiklikler için

# vi /etc/init.d/zabbix-agent
Pid dosyası için : /var/run/zabbix-agent/$NAME.pid olacak

echo "Starting $DESC: $NAME" satırının altına aşağıdaki satırlar eklenecek


if test ! -d $(dirname $PID); then
mkdir $(dirname $PID)
chown -R zabbix:zabbix $(dirname $PID)
fi


Servislerin otomatik başlaması için gerekli ayarlar
# update-rc.d zabbix-server defaults
# update-rc.d zabbix-agent defaults

Son olarak loglarımızın rotasyonlu yazılması için gerekli ayarlar
/etc/logrotate.d/ içine zabbix-server dosyası yaratarak,
# vi /etc/logrotate.d/zabbix-server

içerisine aşağıdaki satırları kaydedelim.


/var/log/zabbix-server/zabbix_server.log {
daily
rotate 7
compress
missingok
notifempty
create 0640 zabbix zabbix
sharedscripts
}

Aynı şekilde
/etc/logrotate.d/ içine zabbix-agent yaratarak,

# vi /etc/logrotate.d/zabbix-agent

içerisine aşağıdaki satırları kaydedelim.


/var/log/zabbix-agent/zabbix_agentd.log {
daily
rotate 7
compress
missingok
notifempty
create 0640 zabbix zabbix
sharedscripts
}

Daha sonra herşeyin çalıştığını test etmek için sunucumuzu reboot komutu ile yeniden başlatalım.
# reboot

Zabbix 2.0 sunucumuz kurulmuş oldu.








19 Eylül 2012 Çarşamba

Adım adım Ubuntu Server kurulumu (Adım adım Zabbix 2.0 kurulumu 1)

Bu makalede Zabbix 2.0 kurulumu için kullanacağımız Ubuntu Server kurulumunu adım adım anlatacağım.

Ubuntu Server indirelim
http://www.ubuntu.com/download/server

Ben kurulum için Ubuntu Server 12.04 64 Bit versiyonunu kullandım. Çektiğiniz ISO dosyasını bir cd ye yazıp sunucuya takalım.

Sunucuyu CD den başlattığımızda ilk olarak karşımıza Ubuntu kurulum dili seçeneği çıkacaktır. Ben ingilizce versiyonu seçerek devam ediyorum.


Bir sonraki ekranda Install Ubuntu Server seçeneğini seçip devam edelim.


Sonraki ekranda kurulum sırasında kullanılacak dili seçiyoruz. Ben yine ingilizce seçerek devam ediyorum.


Sonraki seçenekte bulunduğumuz ülkeyi soruyor. Buradai seçeneklerde doğrudan Türkiye bulunmuyor. Bu yüzden önce "other" seçiyoruz, ardından "Asia" yı seçiyoruz ve çıkan menüde "Turkey" seçeneğini seçip devam ediyoruz.


Daha sonra dil ve ülke seçimine göre local değerler için seçim yapmamızı istiyor. United States - en_US.UTF-8 seçip devam ediyoruz.


Seçtiğimiz değerlere göre klavyemizi otomatik tanıyabileceğini söyleyen ekran çıktığında Yes diyebilirsiniz.


Bu ekranda karşınıza bazı karakterleri çıkaracak ve siz bu karakterleri sırayla girmeye başladığınızda klavyenizi tanıyacak. + karakterine basar basmaz sizin Türkçe klavye kullandığınızı söylüyor zaten. Bunu kabul ederek geçelim.



Daha sonra Ubuntu Server kurulumu başlayacak. Sonra size sunucu adını soracak. Ben ZabbixDemo yazarak ilerliyorum.


Daha sonra size sunucu için bir kullanıcı oluşturmanızı isteyecek. Önce tam adınızı, sonra kullanıcı adınızı ve sonunda da şifrenizi iki kez girmenizi isteyecek.



Daha sonra ana dizininizi şifrelemek isteyip istemediğinizi soracak. Buna No diyerek devam edelim.


Karşımıza bulunduğumuz timezone'u çıkaracak.  Asia/Istanbul bulduysa devam edelim. Başka bir bölge seçmek için No diyerek seçim yapabilirsiniz.


Daha sonra diskinizi biçimlendirme seçeneği karşınıza çıkacak. Burada "Guided - use entire disk and set up LVM" seçeneğini seçelim.


Yeni ekranda disklerinizden hangisini kullanacağınızı seçin. Benim 20 GB lık tek diskim var ve onu seçiyorum.


Daha sonra yaptığınız değişikliklerin kaydedileceğine dair uyarı çıkıyor. Buna da Yes diyerek devam edelim.


Sonra diskinizin ne kadarını kullanacağınızı soruyor. Ben tamamını kullan diyerek devam ediyorum.


Tekrardan yapılan değişiklikleri diske kaydetmemiz için uyarı çıkarıyor. Yes diyerek devam edelim.


Kurulum devam ederek internet çıkışı için proxy kullanıp kullanmadığınız soracak. Ben kullanmadığım için proxy ayarlarını boş bırakıp devam ediyorum.


Daha sonra güncelleştirme seçeneği karşınıza çıkacak. Ben güvenlik güncelleştirmelerinin otomatik yapılmasını seçerek kuruluma devam ediyorum.


Kurulumun sonunda sunucuya kurmak istediğiniz servislerin olup olmadığını sorduğunda sadece OpenSSH Server'ı seçip devam edelim.


Artık kurulum tamamlanacak ve GRUB Boot Loader kurulumu için onay isteyecek. Sunucuda başka işletim sistemi olmadığını düşünerek buna da Yes diyerek kurulumu tamamlıyoruz.


Kurulum tamamlandığında varsa kurulum sistemini CDRom dan çıkarmamızı söylüyor bize. Bunu yapıp devam dediğimizde kurulum bitip sunucu yeniden başlatılıyor.


Böylece Ubuntu Server 12.04 64 Bit kurulumu tamamlanmış oluyor. Bir sonraki makalede ise Ubuntu üzerine Zabbix kurulumunu anlatacağım.