15 Nisan 2013 Pazartesi

FreeBSD üzerine Ezjail Kurulumu & İlk Jaillerin Oluşturulması

Geçen hafta kullanacağımız sanallaştırma teknolojisi olarak seçtiğimiz Jails için öncelikle FreeBSD kurmalı ve üzerine de Ezjail ile ilk denemelerimize başlama vaktimiz geldi. Denemeler sırasında ilk bilgisayar deneyimlerim sırasında klasörler içerisine klasörler oluşturarak birşeyleri saklamaya (saklayacak ne varsa!) çalıştığımız o yıllar geldi aklıma ve şimdi de sanki birşey saklıyormuşcasına işletim sistemleri içerisinde işletim sistemleri oluşturmaya başladık.


Apache, MySQL, PHP ve PhpMyAdmin kurulmasında olduğu gibi FreeBSD 9.1 üzerinde çalışmaya devam edeceğiz.

Ön Hazırlık

IP Adresimiz: 192.168.2.222 (ifconfig ile kontrol edebilirsiniz)
Jail IP Adresi: 192.168.2.223 (ileriki aşamalarda kullanılacak)

SSH Deamon'unun sadece ana ip'ye bind edilmesi
$ ee /etc/ssh/sshd_config

Config dosyasında aşağıdaki satırı bulup (ctrl + y ile arama yapabilirsiniz)
#ListenAddress 0.0.0.0

Aşağıdaki ile değiştirin
ListenAddress 192.168.2.222

Burada belirtilen 192.168.2.222 ip adresi sizin belirlediğiniz ip adresi olmalı.

Şimdi ssh deamon'unu yeniden başlatalım
$ /etc/rc.d/sshd restart

Düzenlemenin geçerli olup olmadığını kontrol edelim
$ netstat -an | grep 22 | grep LISTEN

sonuç aşağıdaki gibi ise işlem tamamdır
tcp4 0 0 <mevcut ip>.22 *.* LISTEN

Syslog Deamon'unun sadece ana ip'ye bind edilmesi

Syslog deamon'unu aktif ediyoruz, ana ip'ye atıyoruz, yeniden başlatıyoruz ve son olarak da netstat ile kontrol ediyoruz.
$ echo 'syslogd_enable="YES"' >> /etc/rc.conf
$ echo 'syslogd_flags="-s -b 192.168.2.222"' >> /etc/rc.conf
$ /etc/rc.d/syslogd restart
$ netstat -an | grep udp | grep 514

Eğer sonuç aşağıdaki gibi ise işlemlerimiz başarılı demektir.
udp4   0   0   192.168.2.222.514   *.*


Ezjail Kurulumu


Depomuz da olduğunu varsayıyorum (yoksa ftp'den indirecektir fakat bunun için bağlantınızın olması gerekir)
$ cd /usr/ports/sysutils/ezjail/ && make install clean

Ezjail Template'in Kurulması (ftp'den indirerek kuracak)
$ ezjail-admin install

Jail icin IP Alias Olusturulması
$ ifconfig em0 alias 192.168.2.223 netmask 255.255.255.255

Alias'ın sabitlenmesi (sistem yeniden başladığında alias'ımızın silinmemesi için)
$ echo 'ifconfig_em0_alias0="inet 192.168.2.223/32"' >> /etc/rc.conf

Jail oluşturulması
$ ezjail-admin create virtlabnet2.dyndys.org 192.168.2.223

Jaillerin otomatik başlatılması için
$ echo 'ezjail_enable="YES"' >> /etc/rc.conf

Jail'lerin başlatılması (tüm jailler)
$ /usr/local/etc/rc.d/ezjail.sh start

Jail'in başlatılması (tek jail)
$ /usr/local/etc/rc.d/ezjail.sh start <jail-adi>

Jaillerin listelenmesi
$ jls

Jail sisteme login olmak (henüz jail'de bash olmadığı için ezjail konsolu ile bağlanılacaktır)
ezjail-admin console virtlabnet2.dyndns.org

Jail içinden internete çıkmak (jail oluşturulduğunda resolv.conf oluşmamaktadır)
$ echo 'nameserver 8.8.8.8' >> /etc/resolv.conf

Jail'e bash kurulması (sürüme göre ftp deposu değişmiş olabilir)
$ pkg_add -r bash

Jail'in SSH Bind edilmesi
$ ee /etc/ssh/sshd_config

#ListenAddress 0.0.0.0

Aşağıdaki ile değiştirin
ListenAddress 192.168.2.223

SSH'ın açılışta başlatılması
$ echo 'sshd_enable="YES"' >> /etc/rc.conf

SSH'ın başlatılması
$ /etc/rc.d/sshd start

Kaynaklar:
http://www.syslogs.org/freebsd-jail-kurulumu/
http://www.cyberciti.biz/faq/howto-setup-freebsd-jail-with-ezjail/

Kaynakları özellikle belirtmekte fayda var çünkü bazen kendi özel yapımız gereği kaynak makaleler de anlatılan fakat bizim üzerinde durmadığımız konular mevcut. Bazı hata gidermeleri veya farklı yöntemler de kaynaklarda yer almaktadır. Özellikle Çağrı Ersen'e syslogs.org ile paylaşımları için teşekkür ederim.

2 yorum:

  1. noman öztürk1 Temmuz 2013 14:45

    benimde son zamanlarda ilgilendiğim ve araştırdığım bir konuyu ele almanız güzel.
    ilerleyen zamanlarda ve projelerde kapınızı çalacağımdan emin olunuz. ;)

    emeğinize ve klavyenize sağlık.

    YanıtlaSil
  2. Teşekkür ederim, yardımcı olabilirsem ne mutlu..

    YanıtlaSil