Quantcast
Channel: Linux Unix
Viewing all 96 articles
Browse latest View live

REDHAT ve Türevlerinde Ethernet NIC Teaming - Bonding

$
0
0

Kesintisizlik adına yapılan en önemli işlemlerden biridir network teaming. Yani birden fazla network kartının tek network kartı gibi tanınması ve bağlantılardan birinin kopması durumunda diğer bağlantılardan kesintisizlik sağlanması. Öncelikle bu işlemin artılarına bakıldığında çok önemli etkiler görebiliriz. Farklı 2 switchten gelen kabloları farklı 2 ethernet kartına bağlayıp 1 ethernet portu altında topladığımızda switchlerden biri donanımsal olarak göçtüğü anda kesintisiz çalışma diğer sağlam olan network bağlantısı ile devam edecektir. Bu yapıyı 4 adet nic kartına çıkardığımızı 4 farklı switch’ten fiziksel bağlantı aldığımızı düşünelim. 3 switch donanımsal olarak çökse bile kesintisizlik devam edecektir.

 

Bu işlemleri Windows altında donanım üreticileri tarafından sağlanan yazılımlarla yapmak mümkün. Bir takım kısıtlarla birlikte sorunsuz denilebilecek seviyede çalışabilmektedir. Aslen araya bir balancer koymadığınız takdirde yazılım bile olsa tam olarak yük dengelemesi yapılamamaktadır. Peki biz bu işi Linux sunucularda nasıl yapabiliriz? Ya da yapabilirmiyiz?

 

Elbette yapabiliriz. Donanım üreticilerinin bu konudaki yazılımlarınada ihtiyaç duymamaktayız. Linux bunu kendi yeteneği ile yapabilmektedir. Nasıl yapılır onu inceleyelim.

 

Benim test ortamımda 1 adet CentOS 6.2 linux sunucu mevcut. Bu sunucu üzerinde 4 adet NIC mevcut. Bu NIC kartların nasıl bir ethernet altında toplanacağını ve nasıl HA çalıştığını görelim.

 

NIC kartlarımızı bir inceleyelim,

 

# ifconfig

 

 

image001

 

 

Bu ethernet kartlarımdan birine 192.168.1.30 olarak ip verdim. Diğer 3 ethernet kartının DHCP’den ip almasını sağladım. Ben buradaki tüm ethernetleri tek bir etherhernet teaming altında toplayacağım. Bu işlem için bir adet bond0 aygıtı tanımlamam gerekiyor. Hemen gerekli lokasyona giderek dosyayı oluşturalım. Bu dosya normalde ortalıkta yoktur. Biz oluşturacağız.

 

# cd /etc/sysconfig/network-scripts

 

# nano ifcfg-bond0

 

Ve içeriğini aşağıdaki gibi yazıyoruz.

 

DEVICE=bond0

IPADDR=192.168.1.30

NETMASK=255.255.255.0

NETWORK=192.168.1.0

BROADCAST=192.168.1.255

BONDING_OPTS="miimon=100 mode=balance-alb"

BOOTPROTO=none

TYPE=Ethernet

ONBOOT=yes

IPV6INIT=no

 

 

 

image002

 

 

Daha sonra ctrl+x ve y diyerek çıkıyoruz. Bu işlem sonrası bonding (bağ) device tanımlanmış oluyor. Şimdi ethernet kartlarının modifikasyonu nu yapıyoruz. Bu işlemi 4 device içinde yapmak gerekiyor.

 

# nano /etc/sysconfig/network-scripts/ifcfg-eth0

 

Dosyanın içeriğini aşağıdaki gibi değiştiriyoruz. Burada mac adresine dokunmuyoruz. 4ncü satırdan sonrasını silerek aşağıdaki bold şekilde yazılı olan ilave satırları yazıyoruz.

 

DEVICE=eth0

HWADDR=00:0c:29:49:7b:9a

NM_CONTROLLED=yes

ONBOOT=yes

MASTER=bond0

SLAVE=yes

BOOTPROTO=none

TYPE=Ethernet

 

 

Dosyanın modifiye olmuş son hali yukarıdaki gibi olacaktır. Gördüğünüz gibi ip adresi vermedim. Çünkü ip’yi bond0 device’ına verdim. Aynı işlemi diğer 3 adet ethernet kartınada vereceğiz. İçerikleri aşağıdaki gibi olacak,

 

# nano /etc/sysconfig/network-scripts/ifcfg-eth1

 

DEVICE=eth1

HWADDR=00:0C:29:49:7B:A4

NM_CONTROLLED=yes

ONBOOT=yes

MASTER=bond0

SLAVE=yes

BOOTPROTO=none

TYPE=Ethernet

 

 

# nano /etc/sysconfig/network-scripts/ifcfg-eth2

 

DEVICE=eth2

HWADDR=00:0C:29:49:7B:AE

NM_CONTROLLED=yes

ONBOOT=yes

MASTER=bond0

SLAVE=yes

BOOTPROTO=none

TYPE=Ethernet

 

 

# nano /etc/sysconfig/network-scripts/ifcfg-eth3

 

DEVICE=eth3

HWADDR=00:0C:29:49:7B:B8

NM_CONTROLLED=yes

ONBOOT=yes

MASTER=bond0

SLAVE=yes

BOOTPROTO=none

TYPE=Ethernet

 

 

Gördüğünüz üzere dosyaların içindeki bold kısımları ilave ederek diğer bölümleri sildim. Bu işlem sonrasında ortamımız hazır olacaktır. Şimdi network servisini restart edelim.

 

 

#service network restart

 

 

Bu işlem sonunda varolan bağlantılar kesilecektir. Sunucuyu restart etmenizi şiddetle öneririm. J Şimdi ifconfig komutu ile durumu inceleyelim.

 

 

#ifconfig

 

 

 

image003

 

 

 

Yukarıdaki screenshotta göreceğiniz üzere bond0 device dışında hiçbir ethernet kartında ip yok. Ama bağlantıda sıkıntı yaşamıyoruz. Çünkü 4 adet ethernet kartımız bond0 aygıtı altında toplandı. Şimdi test edelim. Hemen ilk 3 device’ı disable edelim. Göreceksiniz bağlantınız kesilmeyecek.

 

# ifdown eth0
# ifdown eth1
# ifdown eth2

 

 

image004

 

 

İlk 3 aygıtı disable ettikten sonra ifconfig komutuna, ping komutuna ve networksel işlemlere sunucu cevap verecektir. Gördüğünüz gibi sadece eth3 ve bond0 device ayakta. bond0 device eth3 üzerinden isteklere cevap veriyor. Ve göreceğiniz üzere eth0, eth1 ve eth2 ifconfig listesinde yoklar. Şimdi enable edelim ve inceleyelim

 

# ifup eth0
# ifup eth1
# ifup eth2

 

 

image005

 

 

Bütün device’lar geri geldi. Nic teaming kullanıma hazır. Bu aşamadan sonra biraz daha detaylandırmak gerekirse 2nci bir bonding device tanımlanarak istediğiniz ethernetleri bu bonding altında toplayabilirsiniz. Mesela iSCSI networkünü ikinci teaming’de normal network’ü ilk teaming’te kullanabilirsiniz.

 

Yapılacak işlem çok basit. bond0 gibi bond1 device yazacağız. Buna bağlanması gereken ethernetlerinin içinde değiştirdiğimiz MASTER=bond0‘u MASTER=bond1 yapacağız. Dolayısı ile bond1 ethernetleri 2nci bonding (bağ) içinde yer alacaklar.

 

Kolay gelsin.


Linux Fstab Dosyasının Konfigürasyonu

$
0
0

Fstab konfigürasyon dosyasıdır ve içeriğinde dosya sistemleri hakkında bilgileri barındırır.

Fstab cd/dvd , dahili sürücü, ağ dosya paylaşımları, Flash bellekler gibi bölümleri sistemimize otomatik olarak bağlamamıza yarar. Yeniden başlatılan sistemlerde ki gibi her seferinde mount etmek yerine fstab’ a girilecek olan seçeneklerle bu işlemleri otomatikleştirebiliriz.

Fstab dosyasına uygulamalar tarafından yazma işlemi yapılamaz sadece okuma işlemi yapılabilir bu yüzden Fstab dosyasının yönetimi sistem yöneticisinin elindedir.

Fstab bir text dosyası olduğundan istediğiniz bir editörle açıp içerisinde değişiklik yapıp kapatabilirsiniz ama dikkatli olmanızda fayda var. Değişiklik yapmadan önce /etc/fstab yolunda /etc/fstab.backup diye bir kopyalama yapınız.

Aşağıda görmüş olduğunuz bir fstab dosyasının çıktısıdır. Fstab dosyası toplamda 6 kolon dan oluşur.

image001

1. kolon Bağlanılacak olan dosyanın yerini belirmeliyiz.

2. kolon Bağlanama noktasını nereye tanımlayacağımızı.

3. kolon Bağlanacak dosya türünü. Örnek (ext3, ext4, swap, iso9660, auto) Auto dosya türü değildir fakat dosya türünü otomatik olarak kendisinin bulmasını sağlar.

4. kolon Bağlama seçeneği. Örnk ( auto/noauto, user/nouser, ro, rw, defaults ) Defaults seçeneği auto, nouser , rw kullanır. ( ro -> read only rw -> read-write )

5. kolon Dump alanı 0 ve 1 seçenekleri kullanılır. Yedek alınıp alınmayacağını belirtilir.

6. kolon Fsck alanı yeniden başlatılan sistemde yapılacak olan denetimleri belirler. 0,1 ve 2 seçenekleri mevcuttur. Kök dizinin “ / ” 1 olması gerekmektedir. 0 da denetleme yapmaz. 2 de diğer dizinler için kullanılabilir.

Sistemim deki cdrom u otomatik mount etmesini sağlamak için fstab dosyasını düzenleyelim.

Fstab dosyasını vi editörüyle açıp en alt satıra gelip tanımlamamı yapıyorum. Yukarıda belirttiğim kolon sırasına göre cdrom un olduğu yeri daha önce oluşturmuş olduğum /media/cdrom dosyasına dosya tipini otomatik olarak herhangi bir kullanıcı veya seçeneği yapmadan defaults olarak ekliyorum. Cdrom olduğu için dump ve ya fsck seçeneklerini kullanmıyorum 0 yapıp geçiyorum.

Cat /etc/fstab la fstab ın çıktısına bakıyorum.

/dev/cdrom       /media/cdrom  auto     defaults 0 0 eklemiş olduğum satır.

image002

Df komutuyla sistem disklerinin çıktısına bakıyorum. Daha önce sistemime mount komutuyla tanımladığım /media/cdrom gözükmekte. Umount /media/cdrom komutuyla sistemimden kaldırıyorum.

image003

Fstab dosyamıza girmiş olduğumuz satırın doğru çalışıp çalışmadığını anlamak için sistemimi restart ediyorum.

image004

Sistemim açıldı ve df komutuyla sistem sistem disklerinin çıktısında media ın altında cdrom dosyamın otomatik olarak mount edilmiş olduğu gözükmekte.

Sonraki makalelerimizde görüşmek üzere.

Linux Local Repository

$
0
0

Red Hat türevli dağıtımların Uygulama paketlerinin bulunduğu sunucularına repository ( depo ) ler denilmektedir. Bu repository lerden istediğiniz gibi uygulama indirebilirsiniz. Centos ve Fedora dağıtımlarının repository leri tamamı açık durumdadır. Red Hat ve Oracle dağıtımlarının repository leri ise Red Hat Network ve Unbreakable Linux Network dir. Bunlarda kayıt olunması gerekmektedir.

 

İnternete erişimi olan red hat türevli dağıtımlar repository ler den uygulamaları kolaylık la indirip kurulumlarını yapabilmektedir. Ele alacağımız konuda internete erişim sağlayamayan red hat türevli işletim sistemlerinin uygulamaları yüklemeleri yönünde dir.

 

Sunucunuzun interneti bir çok neden dolayı kısıtlayabilirsiniz. İnternete çıkışı olmayan sunucularda uygulama yüklemek istediğiniz durumlarda da local repository kullanmalısınız. Local repositoryinizi ister sunucunuza kopyalayın ister dvd rom’larınızdan çalıştırın tercih sizin.

 

Red Hat ‘ın mevcut sürümünü görmek için /etc/redhat-release in çıktısına bakabilirsiniz.

 

Üzerine çalıştığımız Linux dağıtımı Red Hat Enterprise 6.2 sürümü.

 

 

image001

 

 

Dvd rom ‘a Red Hat Enterprise 6.2 sürümünün dvd taktım. Belli bir dosyaya mount etmek için öncelikle /media altında cdrom diye bir dosya oluşturuyorum.

 

Dvd rom umu oluşturduğum dosyaya mount ediyorum. Mount komutunda -t ile dosya tipini belirtiyorum önce nereden dosyayı okuyacağını ve sonra da ekleyeceğini belirttim.

 

 

image002

 

 

Burada tam olarak gözükmese de aslında yaptığım şey yukarıdaki mount işleminin doğruluğunu teyit etmek içindir. Oluşturduğum cdrom dosyasının içine girip ls komutuyla dosyanın içindeki leri listedim. Gerçi burada listelen dosyalar Packages dosyasının içindekiler. Tam dosya yeri olarak “/media/cdrom/Packages

 

 

image003

 

 

Dvd romu ekledik düzgün bir şekilde kontrol ünü de sağladıktan sonra şimdide local repository kullanabilmek adına bunu işletim sistemimize tanımlayalım. Repository lerin bulunduğu yer /etc nin altın da yum.repos.d dosyasının altında dır. Burada iki adet repo dosyası gözükmekte mevcut olarak kullanılan rhel-source.repo yu kopyalıyorum redhat6.repo olarak. /etc/yum.repos.d ‘ de şuan için 3 adet repo mevcut durumda.

 

 

image004

 

 

İstediğiniz bir editörle farketmez redhat6.repo yu üstünde değişiklikler yapmak adına açıyorum. Bir den çok adres satırı gözükme bunların hepsini silebilirsiniz sadece bir adet [ ] bölüm kalsa yeterli ve bu bölümde değişiklik yapalım. Repo adını değiştiriyorum redhat6 yapıp alt satıra istediğim adı yazıyorum, baseurl bu repository nin dosyaları nereden okuyacağını belirtiyorum /media/cdrom, enabled 1 ve gpgcheck de 0 yapıp kaydediyorum.

 

Düzenlediğiniz repo nun çıktısını alarak kontrol ediniz. Bir sorun yoksa devam edelim.

 

 

image005

 

 

Artık local repository kullanıp kullanamadığımız kontrol edelim. Yum paket yönetimini kullanacağım. Bu konuda önceden yayınlanan makaleler mevcuttur onlardan yararlanabilirsiniz.

 

Yum install gnome* diyerek gnome’ a ait paketlerin yüklenmesini sağlıyorum. Kırmızı alan da hangi repo dan bu dosyaların geldiğini görebilirsiniz. Bir sorun gözükmüyor oluşturduğumuz local repository düzgün çalışmakta.

 

 

image006

 

 

Onay verdik ten sonra eksik olan paketlerin kurulumu redhat6 reposundan kuruldu.

 

 

image007

 

 

Sunucu tarafına geçiyorum Gnome un kurulduğunu kontrol etmek için. Güzel gnome’ un grafik arayüzü karşımızda =)

 

 

image008

 

 

Local repository inizi internete çıkamayan sunucularınız için kullanabilirsiniz. Güncellemeleriniz içinde aynı şekilde paketlerin yenileri çıktıkça bu oluşturduğunuz klasörü atıp güncellemenizi bu şekilde yapabilirsiniz. Bu konuya ayrıca değinilecektir. Bir sonraki makalemizde görüşmek üzere.

 

 

Suse SLES11 Üzerine FTP Server Kurulumu

$
0
0

Suse Linux Enterprise Sever 11 SP1 üzerine FTP server kurulumunu adım adım anlatacağım.

 

İlk once Suse’de Ftp isimli bir kullanıcı oluşturuyorum. Bu kullanıcıyla ftp serverıma login olacağım ve upload yapabileceğim.

 

Ftp kullanıcımın /home/ftp yani default dizinine yazmasını isteyeceğim. Bunun için Chmod ile yazma hakkını veriyorum.

 

 

image001

 

 

YAST kontol panel üzerinden FTP server seçeneğini seçiyorum.

 

 

image002

 

 

Kuruluma başlamadan once sunucuya Suse’nin paketleri kurması için kurulum dvd’si takılması gerekmektedir. Gelen ekranda hangi FTP server kurulumunu yapmak istediğimizi soruyor ben vsftpd seçeneğini seçiyorum.

 

 

image003

 

 

FTP server kurulumu tamanlandı. Gelen ekranda FTP service’in nasıl başlayacağıyla ilgili üç seçenek gelmekte. When booting seçeneği işletim sistemi açıldığında ftp service’in otomatik başlaması seçeneğini seçiyorum.

 

 

image004

 

 

General ve performance seçeneklerinde herhangi bir ayar üzerinde değişiklik yapmıyorum.

 

Authentication seçeneğinde, authenticated users only seçeneğini seçiyorum ki Ftp kullanıcı haricindekiler bağlanamasın. Uploading kısmını işaretliyorum.

 

 

image005

 

 

Finish dediğimde ayarlarımı kaydedip ekranı kapatıyorum.

 

 

image006

 

 

Vsftpd ayarlarını /etc dizinin altında bulunan vsftpd.conf dosyasını, vi editor ile de düzenliyebilirsiniz. wq! Ile kaydedilirsiniz. (write yazma, q ise quit anlamına gelmekte)

 

Clientımdan bağlantıyı gerçekleştiriyorum. Deneme isimli dosya yaratıyorum ve silebiliyorum.

 

 

image007

 

 

Suse üzerinde vsftp kurulumu anlattım. Bir sonraki makalede görüşmek üzere.

Linux Update

$
0
0

Red Hat türevli Linux dağıtımlarında güncelleme yapmayı anlatmaya çalışacağım. Bu makaleden önce yayınlanan Local Repository makalesini incelemenizde fayda var. Güncellemeleri internetten değilde local repository üzerinden yapmayı örnekleyeceğim. İnternet kesintisini riske etmek istemediğim için bu şekilde çalışacağım.

Sistemimizin sürekli güncel kalması için güncellemeleri takip etmek önemli dir. Sunucumuz internete erişim sağlıyor ise paketlerin güncelliğini software update kısmından takip edebiliriz. Sunucumuz İnternete erişim sağlayamıyor ise local de çalışıyorsa hangi Linux dağıtımını kullanıyor iseniz onların web sayfalarından yeni çıkan paket leri indirip local repository lerinize atıp buradan güncellemeyi yapabilirsiniz.

Red Hat Linux dağıtımlarını 6 aylık periyotlarda yayınlamaktadır. En son sürüm Red hat Enterprise Linux (Santiago ) 6 update 3 sürümüdür . Kernel versiyonu olarak 2.6.32-279 kullanılmaktadır. Kernel versiyonu açmak gerekirse 2. ( Kernel versiyonu ) 6. ( Kernel daki Major değişiklik ) 32. ( Kernel daki Minor değişiklik ) 279. (Bug ların düzeltilmesi )

Software Update’ i kullanmadan sürümler arasında güncelleme yapacağım. Güncellemeleri yapmadan önce dağıtımın yayınlanan release notes’larını okumanızda fayda var. Eklenen, kaldırılan paketleri veya Major yapılan değişikler hakkında ön bilgi edinebilirsiniz.

Red Hat ‘ın mevcut sürümünü görmek için /etc/redhat-release in çıktısına bakabilirsiniz.

Üzerine çalıştığımız Linux dağıtımı Red Hat Enterprise 6.1 sürümü.

image001

Red Hat 6.2 sürümünün dvd sini takıp /media/cdrom mount ettim.

image002

Dvd nin içindeki dosyaları kopyalamak için rpmupdate diye bir dosya oluşturmuştum. Cp komutuyla dvd nin içindeki herşeyi rpmupdate klasörüne kopyalıyorum.

image003

Kopyalama bittikten sonra dosya boyutlarına bakarsak toplamda 2.9 gb olduğunu görebiliriz. Packages 2.7 gb gözükmekte ve çalışacağımız bütün uygulamalar bunun içindedir.

image004

Local repository ayarlarını yaptıktan sonra çalıştırdığım komut “ yum update “ bütün güncelleme paketlerini kur diyorum. Repository nin bizim oluşturduğumuz redhat6.2 olduğunu görebilirsiniz.

image005

Kurulum tamamlandıktan sonra yeniden başlatıyorum sistemimi ve mevcut sürümün çıktısını alıyorum. Red Hat Enterprise Linux 6.2 ye güncellemesini başarılı bir şekilde tamamlamış.

image006

Bu makale yi hazırlarken Red Hat 6.3 sürümünü de yayınladı. Hazır elimiz değmişken 6.3 sürümünde geçelim =)

Red Hat 6.3 Ddv sini taktıktan sonra mount ve repository ayarlarını yaptıktan sonra. Yum update komutunu çalıştırıyorum.

image007

Redhat6.3 repository sinden başlattığım kurulum başarılı bir şekilde sonlandı.

image008

Yeniden başlatım mevcut sistemin çıktısını aldığımda 6.3 sürümüne geçtiğimizi görebilirsiniz. Uname –a komutuyla kernel bilgilerinize bakabilirsiniz. Red Hat 6.3 le yayınlanan kernel 2.6.32-279

image009

Sistemim açılış da diğer kernel versiyonlarını silmediğim için 3 kernel u da görmek tedir. Bunları hemen silmedim çünkü hata alınabilir eski kernel la sisteminizi açabilirsiniz. Daha sonrasında 1 hafta sonra size kalmış tamamen seçim eski kernel bilgilerini silebilirsiniz. /etc/grub.conf herhangi bir editörle açıp eski kernel bilgilerinizi silebilirsiniz.

image010

image011

Kernel la ilgili log lara bakıyoum yeni ve güncelleme bilgilerini listeleniyor.

image012

Güncelleme işlemlerinden sonra /var/log/messages daki logları takip ediniz. Herhangi bir sıkıntı varsa burada bize belirtecektir.

image013

Benim kullanmış olduğum test ortamıdır. Ben bütün paketlerin güncellemesi yaptım çok önemsemeden ama siz sadece kernel larınızı güncelleyebilirsiniz veya sadece istediğiniz paketlerin güncellemesini yapabilirsiniz.

Squid Proxy Server AD Authentication ile Kullanmak

$
0
0

Basit anlamda Açık kaynak kodlu süper performanslı Squid Proxy server’I Active Directory ile entegre ederek internet çıkışını kontrolsüz halden kontrollü hale getirmeyi hedefliyoruz. Yapmanız gerekenler aslında çok basit. Ben bu işlem için En sağlam Linux sürümlerinden biri olan CentOS’u kullandım. Eğer adımları eksiksiz yaparsanız Squid proxy’nin ne kadar mükemmel çalıştığını göreceksiniz.

 

Öncelikle www.centos.org adresinden CentOS’un en son sürümü olan 6.2’yi indiriyoruz. DVD’ye yazarak sunucumuzu boot edip kuruluma başlıyoruz. Ben x64 CentOS kurmayı uygun gördüm. Artık platform olarak x86’dan uzaklaşmaya çalışıyorum. Günümüzde tüm uygulamalar artık x64 olarak sıkıntısız çalışabiliyorlar. Bir sonraki makalede SARG’ı anlatacağım. SARG, Squid’den rapor almanızı sağlayacak. CentOS sağlamlığını kanıtlamış bir Linux dağıtımı. Çünkü temelini Redhat’tan alıyor. Aşağıdaki Screenshotlardaki gibi kurulum yapıyoruz. ScreenShotların altına detay yazmaya gerek yok. Çünkü herkesin anlayabileceği seviyede basit zaten.

 

 

image001

 

 

image002

 

 

image003

 

 

image004

 

 

image005

 

 

image006

 

 

image007

 

 

image008

 

 

image009

 

 

image010

 

 

image011

 

 

image012

 

 

image013

 

 

image014

 

 

image015

 

 

Mutlu son. Reboot sonrası Linux Serverimiz hazır. Bundan sonra artık squid’i kurmaya başlıyoruz. Hemen gerekli komutları yazarak gerekli paketleri yükleyelim.

 

# yum -y install squid nano

 

 

image016

 

 

Yükleme işi bitti. Hemen linux’umuzu son pakerlere update edelim.

 

# yum -y update

 

Update işlemi zaman alabilir. Update bittikten sonra kuruluma devam ediyoruz. Öncelikle Squid’in AD’den kullanıcı bilgilerini çekmesini sağlamamız lazım. Bunun için CentOS sunucumuzu AD’ye dahil etmeliyiz. Yani Windows Client’lar gibi CentOS’u AD’ye alıyoruz. Bunun için Linux tarafında bir takım paketler yüklememiz gerekiyor. Hemen aşağıdaki komutu vererek yükleme işini hallediyoruz.

 

# yum -y install samba* krb5-devel* krb5-server* krb5-server-ldap* ntp krb5-workstation

 

 

image017

 

 

Yukarıdaki gibi yükleme yapacaktır. Yükleme işi bittikten sonra öncelikle NTP servisinin konfigrürasyonun yapılması gerekecek. Çünkü NTP servisi eğer zaman bilgisini AD’den almazsa Domaine dahil edemezsiniz.

 

# mv /etc/ntp.conf /etc/ntp.conf.org

 

Bu dosyanın yenisini oluşturup içerisine AD bilgilerini yazıyoruz.

 

# echo "server srvdc01.techtalk.intra">> /etc/ntp.conf

 

Bu şekilde dosyamızın yenisi oluştu. Kırmızı kısmı kullanmakta olduğunuz AD sunucusu ile değiştirmek zorundasınız. Sonrasında NTP servisinin her açılışta otomatik start olmasını sağlayalım. Ayrıca start edelim,

 

# chkconfig ntpd on; service ntpd start

 

Şimdi aynı işlemleri kurduğumuz programlar içinde yapalım. Hem açılışta otomatik açılsınlar. Hemde start olsunlar.

 

# chkconfig squid on; service squid start
# chkconfig smb on; service smb start
# chkconfig winbind on; service winbind start
# chkconfig iptables off; service iptables stop
# chkconfig ip6tables off; service ip6tables stop
Ekran görüntüsü aşağıdaki gibi olacaktır,

 

 

image018

 

 

Şimdi aşağıdaki komutu verelim ve sunucuyu restart edelim.

 

# usermod -a -G wbpriv squid

 

 

image019

 

 

Bundan sonraki adımlar çok önemli. Buradaki adımları kusursuz yapmalısınız. Öncelikle Linux’un DNS’i AD sunucu DNS’i olmak zorunda. Pinglediğinizde sunucu ismiyle pingleyebilmelisiniz. Çünkü Linux sunucu AD ile entegre hale gelecek.

 

# ping srvdc
# ntpdate -u srvdc         
ß bu işlemi birkaç kez yapmanızı öneririm.

 

 

image020

 

 

Gördüğünüz gibi işlem tamam. Şimdi Linux sunucuyu domain’e almak için gerekli komutu vereceğiz. Fakat bundan önce hosts file içeriğini değiştiriyoruz. Bunun için öncelikle hosts dosyasının orjinalinin bir kopyasını alalım.

 

# cp /et                c/hosts /etc/hosts.org

 

Şimdi düzenleyelim,

 

# nano /etc/hosts

 

Dosyayı açtıktan sonra içeriğini tamamen silin. Sonra sadece aşağıdaki gibi olması gerekenleri yazın.

 

127.0.0.1 squid squid.techtalk.intra
192.168.1.10 srvdc srvdc.techtalk.intra

 

Buradaki isimleri kendi domaininize göre düzenlemeniz çok önemli. J

 

 

image021

 

 

Bu şekilde yapılandırdıktan sonra ctrl+x tuş kombinasyonu ile save ederek çıkalım.

 

En önemli noktaya geldik. Şimdi aşağıdaki komut ile domaine giriş yapacağız. Kırmızı bölümleri sizin domain bilgileri ile değiştirmeniz gerekiyor. Ayrıca komut büyük küçük harfe duyarlıdır.

 

# authconfig --enableshadow --enablemd5 --passalgo=md5 --krb5kdc=srvdc.techtalk.intra --krb5realm=TECHTALK.INTRA --smbservers=srvdc.techtalk.intra --smbworkgroup=TECHTALK --enablewinbind --enablewinbindauth --smbsecurity=ads --smbrealm=TECHTALK.INTRA --smbidmapuid="16777216-33554431" --smbidmapgid="16777216-33554431" --winbindseparator="+" --winbindtemplateshell="/bin/false" --enablewinbindusedefaultdomain --disablewinbindoffline --winbindjoin=Administrator --disablewins --disablecache --enablelocauthorize –updateall

 

Bu komut sonrası AD Administrator password’ü gerekecek. Aşağıdaki gibi şifreyi veriyor ve domain’e girişi seyrediyoruz.

 

 

image022

 

 

Şimdi AD tarafına bir bakalım,

 

 

image023

 

 

Gördüğünüz gibi hem DNS’e hemde Computers’e gerekli kayıtlar açılmış. Şimdi detayları CentOS tarafında inceleyelim, gerekli komut,

 

# net ads info

 

 

image024

 

 

İşlem tamam. Birkaç komut daha var onlarıda sizlerle paylaşmak isterim.

 

# wbinfo -g ß AD druplarını görmeye yarar.
# wbinfo -u
ß
AD user’larını görmeye yarar.

 

Şimdi Selinux’u disable ederek devam edelim.

 

# nano /etc/selinux/config

 

komutunu vererek selinux dosyasının içindeki “SELINUX=enforcing” kısmını “SELINUX=disabled” olarak değiştiriyoruz.

 

Bir komut daha kaldı. Bu komutu bulmak için 1 hafta uğraşıp bir rus sitesinde bulmuştum. O kadar rusça yazı içinden bu komutu nasıl görebildim hala aklıma geldikçe şaşırırım. Allahın takdirinden başka bişey değil.

 

# chown -R root:squid /var/lib/samba/winbindd_privileged

 

Şimdi son işlemde sıra. Squid için konfigürasyon vakti. Önce squid’i çalıştıralım,

 

# service squid stop
# squid -f /etc/squid/squid.conf -z
# service squid start

 

Bu konfigürasyonu grup ve kullanıcı bazlı hale getirebilirsiniz. Ben Domain kapsamı için bir konfig dosyası örneği vereceğim. Şimdi squid.conf dosyasını düzenlememiz gerekecek. Dosyanın orjinal halini saklamak için bir kopya almanızı öneririm.

 

# cp /etc/squid.conf /etc/squid.conf.org
# nano /etc/squid/squid.conf

 

Copy paste edebilirsiniz. –‘li satırları alma manız gerekiyor.

 

------------------------------------------------------------------------------------------------------------------------------------

 

 

# kirmizi kisimlari ben ilave ediyorum. <- buradan itibaren alıyoruz
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 15
auth_param ntlm keep_alive on
auth_param basic realm Squidproxy-caching
auth_param basic credentialsttl 2 hour

 

 

# Recommended minimum configuration:

#

acl NTLMUsers proxy_auth REQUIRED

acl manager proto cache_object

acl localhost src 127.0.0.1/32 ::1

acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

 

 

# Example rule allowing access from your local networks.

# Adapt to list your (internal) IP networks from where browsing

# should be allowed

acl localnet src 10.0.0.0/8            # RFC1918 possible internal network

acl localnet src 172.16.0.0/12     # RFC1918 possible internal network

acl localnet src 192.168.0.0/16  # RFC1918 possible internal network

acl localnet src fc00::/7 # RFC 4193 local private network range

acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines

 

 

acl SSL_ports port 443

acl Safe_ports port 80                  # http

acl Safe_ports port 21                  # ftp

acl Safe_ports port 443                                # https

acl Safe_ports port 70                  # gopher

acl Safe_ports port 210                                # wais

acl Safe_ports port 1025-65535                # unregistered ports

acl Safe_ports port 280                                # http-mgmt

acl Safe_ports port 488                                # gss-http

acl Safe_ports port 591                                # filemaker

acl Safe_ports port 777                                # multiling http

acl CONNECT method CONNECT

 

#

# Recommended minimum Access Permission configuration:

#

# Only allow cachemgr access from localhost

http_access allow NTLMUsers all
http_access allow manager localhost

http_access deny manager

 

 

# Deny requests to certain unsafe ports

http_access deny !Safe_ports

 

 

# Deny CONNECT to other than secure SSL ports

http_access deny CONNECT !SSL_ports

 

 

# We strongly recommend the following be uncommented to protect innocent

# web applications running on the proxy server who think the only

# one who can access services on "localhost" is a local user

#http_access deny to_localhost

 

 

#

# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS

#

 

 

# Example rule allowing access from your local networks.

# Adapt localnet in the ACL section to list your (internal) IP networks

# from where browsing should be allowed

http_access allow localnet

http_access allow localhost

 

 

# And finally deny all other access to this proxy

http_access deny all

 

 

# Squid normally listens to port 3128

http_port 3128

 

 

# We recommend you to use at least the following line.

hierarchy_stoplist cgi-bin ?

 

 

# Uncomment and adjust the following to add a disk cache directory.

#cache_dir ufs /var/spool/squid 100 16 256

 

 

# Leave coredumps in the first cache dir

coredump_dir /var/spool/squid

 

 

# Add any of your own refresh_pattern entries above these.

refresh_pattern ^ftp:                   1440      20%       10080

refresh_pattern ^gopher:          1440      0%          1440

refresh_pattern -i (/cgi-bin/|\?) 0         0%          0

refresh_pattern .                           0             20%       4320

# bir üst satıra kadar.

---------------------------------------------------------------------------------------------------------------------------------

 

Ve sıra sonuca geldi. Şimdi domain dışında olan bir client makinasına internet explorer ayarlarına bizim proxy serverin ip’sini ve portunu girelim.

 

 

image025

 

 

Sonuç

 

 

image026

 

 

Şifresiz girişler engellendi. İlk internet girişlerinden sonraki girilenlerin sitelerin inanılmaz hızlandığını göreceksiniz. Ayrıca izinsiz girişlerde engellenmiş olacak. Yapılan konfigürasyonda şifre hatırlama süresi 2 saat olarak ayarandı. İsterseniz arttırabilir veya düşürebilirsiniz.

 

Domain içinden kullanıcılarda denediğinizde şifre sormadığını göreceksiniz.

 

Linux Software RAID

$
0
0

RAID, “Redundant Array of Inexpensive Disks” bir den fazla diskin bir araya gelerek güvenli, performanslı veya güvenlik + performans yapılarını oluşturmamızı sağlayan yapının ismidir.

 

 

Raid donanımsal ve yazılımsal olarak yapılabilir. Hardware raid controller ‘lar  yapısında işlemci ve ram bulundurduklarından performans kaybı ve diğer donanımsal olaylardan etkilenmeyecekleridir. Software raid’ i ise işletim sisteminin desteklemesi gerekmektir. Performansı sistem kaynaklarını kullandığı için biraz daha düşük olacaktır.

 

 

Bu makalede software raid yapısını inceleyeceğiz. Linux işletim sistemini kurarken raid yapısını oluşturabildiğimiz gibi işletim sistemi kuruluyken de yapabiliriz. En çok kullandığımız raid lerden örnekler oluşturacağım ( Raid 0, Raid 1 ve Raid 5 )

 

Red Hat  Enterprise Linux  6 update 3 versiyonunda çalışacağım.

 

 

image001

 

 

Red Hat dvd sinden boot edip işletim sistemini kurmaya başlıyorum.

 

Ne tip cihaza kurulum yapmak istediğimizi soruyor. Ben basic Storage ‘ la devam edip local disklerimle çalışacağım.

 

 

image002

 

 

Bütün disklerimdeki verileri tutma diyip free disklerde çalışacağım için gelen bu seçeneği No keep any data diyerek dosyaları tutturmuyorum.

 

 

image003

 

 

Disk bölümlendirme işlemini kendim yapabilirim veya uğraşmak istemezsem işime yarayan seçeneklerden birini seçip geçebilirim. Biz raid yapısında çalışacağımız için Create Custom Layout seçeneğiyle devam ediyorum.

 

 

image004

 

 

Hard drive larım geldi 3 adet 30 gb lık diskim var bunlar üzerinde yapılandırmamızı örneklendireceğim.

 

 

image005

 

 

Create diyerek oluşturmaya başlıyorum. Karşıma birden fazla seçenek gelmekte. Normal disk tipi, raid yapısı ve logical volume yapılarından istediğimi seçebilirim. Raid yapımız için disklerimizi tanımlayalım.

 

 

image006

 

 

Raid Partition seçerek create dedikten sonra  3 adet diskimi görüyorum. Raid partition ları tek tek oluşturmam lazım her seferde bir disk için raid partition ekliyorum. Size bölümüne mb cinsinden yazabildiğimiz için 25000 mb yazıyorum yani 25 gb lık bölümler oluşturuyorum.

 

 

image007

 

 

Aynı şekilde devam ediyorum ve bu şekilde bunu 3. Diskim için de uyguluyorum.

 

 

image008

 

 

Biraz önce create dediğimizde raid device bölümü açık değildi. Raid device oluşturabilmek için en az 2 diske ihtiyacımız olduğu için 2 ve fazlasında raid partition oluşturduğunuzda bu kısım açılacaktır.

 

 

image009

 

 

Raid device seçip create dediğimde raid diski oluşturacağım ekran karşıma gelmektedir.

 

Mount Point à  Ne tür olarak kaydedeceğim ( /boot , / )

 

File System Type à Dosya tipi zaten örneklemiş ext4

 

Raid Device à  Oluşturacağımız raid device’ ın adı  (md0, md1 )

 

Raid Level à  Raid in tipi   ( raid0, raid1, raid5 )

 

Raid Members à Üye edeceğimiz disklerimiz.

 

 

image010

 

 

2 adet raid disk oluşturdum. Md0   da 3 disk raid 5 yapısı root dizinine. Md1 de  2 disk raid 1 yapısı var dizinine oluşturdum. Ek olarak 250 mb boot alanı ve  2 diske 2048 mb lık swap alanı oluşturdum.

 

 

image011

 

 

İleri dediğim zaman yapmış olduğumuz bu değişikliklerin disklere yazılıp yazılmamasını soruyor.

 

 

image012

 

 

Sistemimiz açıldı kontrol edelim. Df komutuyla mount edilmiş bölümleri kontrol ettiğimde 50 gb md0 root dizini 3,5 gb da md1 var dizini için mount edilmiş.

 

 

image013

 

 

2 diske böldüğüm swap alanlarını free komutuyla kontrol ediyorum. Toplamda 4 gb swap alanını görüyorum.

 

 

image014

 

 

/proc/mdstat   çıktısını ekrana verdiğimde raid device larla ilgili bilgilere ulaşabilirim. Md0 ve Md1 de hangi disklerin tanımlı olduğunun ve raid tiplerinin bilgilerini görebilirsiniz.

 

 

image015

 

 

Bir sonraki makalemizde aktif çalışan işletim sisteminde raid yapısı oluşturma ve  raid yapısının yönetimini ele alacağım. Görüşmek üzere.

Suse Enterprise Server 11 LDAP

$
0
0

Bu makalemde Suse Enterprise Server 11 SP2 içerisinde ldap server kurulum ve ayarlarını anlatacağım.

 

Suseyi yeniden kurmak isteyenler kurulum seçeneğinde software kısmında yer alan LDAP server seçeneğini seçmeleri yeterli olacaktır. Eğer bu seçeneği seçmeyip kuranlar ya da var olan sisteme kuracak olanlar ise Yast control paneli içerisinden Ldap Server menüsünden kurulum yapabilirler. Bunun işletim sisteminin dvd’si sisteme takılı olması gerekmektedir. Firewall kısmında ldap 389 nolu porta izin vermeniz gerekmektedir.

 

 

image001

 

 

İlk olarak Ldap server kuracağımdan LDAP server seçeneğiyle devam ediyorum

 

LDAP Server’ın konfigürasyon ekranında database oluşturup, düzenleme yada silme yapacağımız, schema ile ilgili değişiklikler yapabileceğimiz, certifika kullanıp kullanmayacağımızla ilgili her türlü ayar bu ekranda mevcut.

 

 

image002

 

 

İlk olarak Global Setting alanının altında TLS Settings kısmında kullanıcıların sertifika kullanarak ldap database’ne bağlanmasını istemiyorum. Enable TLS seçeneğini kaldırıyorum.

 

 

image003

 

 

image004

 

 

Bu kısım önemli arkadaşlar. Yeni bir database yaratacağımdan add seçeneğini seçiceğim ve domain suffix bilgilerini gireceğim.

 

 

image005

 

 

Burada database type kısmında BDB: Berkeley Database ve HDB:  Open Ldap Database şeklinde iki seçenek mevcut. Defaultta gelen hdb database seçeneğini seçiyorum

 

Base Dn kısmında dc=test, dc=local (test.local)

 

Administrator dn kısmında bir değişiklik yapmıyorum. Siz admin ya da başka bir kullanıcı yazabilirsiniz

 

Ldap şifremi belirliyorum.

 

Database’in nerede saklanacağı kısmında bir değişiklik yapmıyorum default olarak bırakıyorum.

 

Next dediğimde directory nin olmadığıyla ilgili bir uyarı veriyor ve yaratılması gerekiyor Yes seçeneğiyle devam ediyorum.

 

 

image006

 

 

Bir sonraki ekranda ldap veritabanın replikasyon seçenekleri geliyor herhangi bir değişiklik yapmıyorum çünkü ortamda tek ldap server mevcut.

 

 

image007

 

 

Next dediğimde kurulumu tamamlamış oluyorum ve database kısmında ldap bilgilerimi görüyorum.

 

 

image008

 

 

Bu ekranı kapattıktan sonra  YAST control panelinde LDAP client seçeneğine seçip aşağıdaki ekrandaki ldap bilgilerini giriyorum. Ldap serverın olduğu makinada bu işlemleri yapıyorum. Siz başka bir Suse Sles 11 yada Open Suse’yi client olarak kullanacaksanız ldap server’ın ip adresini yazmalısınız. Advanced Configuration seçeneğiyle bir sonraki ekrana geçiş yapıyorum.

 

 

image009

 

 

Bu ekranda client settings tarafında hiç bir işlem yapmadan administration settings seçeneğine geliyorum ve administrator DN kısmında LDAP kullanıcı ve domain suffix bilgilerini giriyorum.  Create Default Configuration Objects seçeneğini işaretliyorum bu kısım LDAP server oluştururken schemada ve user tarafındaki default ayarı kullanmasını istiyorum. Alt seçenekte Home Directories on This Machine seçeneğini seçiyorum kullanıcının /home klasörünün burada tutulacağını belirtiyorum.

 

Configure User Management Settings kısmında ise ldap şifremi yazıyorum LDAP client ayarlarımı tamamlıyorum.

 

 

image010

 

 

Sıra geldi kullanıcıları ayarlamaya. LDAP Server içersinden YAST control panelinden User And Group Management konsolunu açıyorum.  Sağ tarafta bulunan Set Filter ksımından LDAP users seçeneğini seçiyorum ve gelen ekranda ldap şifremi giriyorum. (Database kısmında oluşturduğum şifre)

 

 

image011

 

 

Artık Add seçeneğiyle kullanıcımı oluşturabilirim. Kullanıcımın details kısmında group ayarlarını ayarlayabilirim ama burada default olarak bırakıyorum.

 

 

image012

 

 

Ldap server’ıma root ile login olup terminal konsolunu açtıktan sonra getent /passwd komutumla oluşturduğum kullanıcımı görüyorum.

 

 

image013

 

 

Oluşturduğum kullanıcımla Windows üzerinden third party program ile bağlanacağım

 

http://jxplorer.org/downloads/users.html adresinden linux, solaris ve Windows için olanı indirebilirsiniz.

 

Programı kurduktan sonra file menüsünden connect seçeneğini seçiyorum ve gelen ekranda ldap servermın ip adresini, base dn bilgilerini ve kullanıcı bilgilerini giriyorum.

 

 

image014

 

 

Connect olduktan sonra ldap içeresinde bulunan objeleri görebiliyorum.

 

 

image015

 

 

Makalemizin sonuna geldik. Umarım faydalı bir makale olmuştur. Bir sonraki makalemizde görüşmek üzere.

 


Linux Software RAID Yönetimi

$
0
0

 

Bir önceki makalemizde  işletim sistemimizi kurarken raid yapımızı  oluşturmuştuk. Bu makalemizde ise aktif çalışan işletim sisteminde raid bölümü oluşturup yönetimini  örneklemeye çalışacağım.

 

Raid bölümler oluşturmak , silmek ve yönetmek için mdadm  komutunu kullanıyoruz.  Çalışacağımız sistem Red Hat  Enterprise Linux 6 update 3.

 

Md 0 ve Md 1  daha önce oluşturduğumuz için Md2 ilen devam ediyorum.  Create oluşturma komutuyla  md2 adında  raid 0 tipinde iki diskten oluşan ve disklerin adlarını da belirttiğim komutla  Md2 adında bir devices oluşturuyorum.            

 

 

image001

 

 

Oluşturmuş olduğum disk ham formatta bunu formatlayıp işletim sisteminin tanıyacağı bir alan oluşturmamız lazım. Mke2fs  komutuyla   ext4  tipinde oluşturduğumuz md2 diskini formatlıyorum.

 

 

image002

 

 

Backup diye bir dosya oluşturup  formatladığım md2  diskimi  buraya mount ediyorum. Disklerimin çıktısına bakıyorum df komutuyla. Artık  md2 de kullanılabilir durumda.

 

 

image003

 

 

Biraz da  Raid yapılarının yönetimine bakalım. /etc/mdadm.conf dosyasının çıktısına baktığımda disklerin hangi raid tipinde hangi adla oluşturduğumuzu görebilirsiniz. Yalnız çıktıda da gördüğünüz gibi diskler UUID leriyle gözükmektedir.

 

 

image004

 

 

Bu UUID lerin hangi disklere denk geldiklerini görmek için blkid  komutuyla çıktılara bakabilirsiniz. İşaretlediğim 3 diskin aynı UUID değerine eşit olduğunu görebilirsiniz.

 

 

image005

 

 

/proc/mdstat komutuyla Raid disklerin çıktılarına bakalım.  Burada da disk boyutları, hangi disklerin bağlı olduğu ve disklerin aktif olup olmadığını gösterir. Md0 ‘ın sonunda gözüken UUU bu 3 diskinde aktif olduğunu göstermektedir. Disklerden birinde hata olduğunda  buradaki  değerlerde değişecektir.

 

 

image006

 

 

Query çekerek te raid yapıları hakkında bilgi alabiliriz ama burası çok ayrıntılı değildir ve disklerde oluşan bir hatayı buradan takip edemeyiz.

 

 

image007

 

 

Aktif olan Raid devices ları /dev  altında görebilirsiniz.

 

 

image008

 

 

-D veya –detail komutuyla  raid devices lar hakkında çok daha ayrıntılı bilgi alabilirsiniz. En alt satırda tanımlı olan disklerini ve aktif pasif durumlarını söylemektedir.

 

 

image009

 

 

-E komutuyla   Meta Data bilgilerinin çıktısına bakabilirsiniz.

 

 

image010

 

 

Mount edilmiş olan bir raid diski stop etmeye kalktığımızda hata alırız. Öncelikli olarak mount edilmiş diski kaldırmamız gerekmektedir. Mount etmesek te  raid diskimizin aktif olduğunu /dev altından bakabilirsiniz.

 

 

image011

 

 

Ancak stop ettiğinizde   raid diskinizi /dev altında göremezsiniz.

 

 

image012

 

 

Stop ettiğimiz Raid diskimizi yeniden aktif hale getirelim. İşletim sistemini kurarken md0 ve md1 ‘in disk bilgileri   /etc/mdadm.conf  dosyasının içine otomatik olarak  oluşmuştu fakat biz md2 yi   sonradan yaptığımız için conf dosyasında göremiyoruz.  Mdadm –A /dev/md2 komutuyla yeniden aktif hale getirmek istiyorum ama hata alıyorum conf dosyasında md2 nin disk bilgileri tanımlı olmadığı için.

 

 

image013

 

 

Conf dosyasına yazmadan da   raid i aktif hale getirebilirim ama hangi diskleri bu raid içine tanımlı olduğunu bilmem gerekiyor.

 

 

image014

 

 

Conf dosyasının içine disklerin bilgilerini yazıyorum en alt satırda çıktısını aldım oradan görebilirsiniz. Conf dosyasının içine ARRAY /dev/md2 devices=/dev/sda3,/dev/sdc4  ekliyorum. Md 2 yi stop ediyorum ve bu sefer  mdadm –A /dev/md2 yazdığım zaman raid i çalıştırdığını görebilirsiniz. Gidip conf dosyasına sorduğu zaman disk bilgilerini alıp aktif hale getirdi.

 

 

image015

 

 

Disklerimden birini söküyorum. Mesajlara baktığım zaman disk sdc  de hata aldığını görebilirsiniz.

 

 

image016

 

 

/proc/mdstat  çıktısına baktığımda disklerin bir tanesinden hata aldığını görebilirsiniz ( UU_ )

 

 

image017

 

 

Md0 raid in ayrıntılı bilgilerine bakıyorum ve en altta sdc1 diskini okuyamadı için bozuk disk olarak işaretleyip raid yapısından silmiş gözükmekte.

 

 

image018

 

 

Diskimi tekrar takıyorum. Hangi disklerin hangi raid yapısına dahil se  -- add komutuyla onlara yeniden ekliyorum.  /proc/mdstat   çıktısına baktığımda recovery işleminin başlamış olduğunu görebilirsiniz. Öncelikli olarak Md0  eklediğim için onun recovery işlemi bittikten sonra md1 için olanda ardından başlayacaktır.

 

 

image019

 

 

Recovery işlemleri bittikten sonra tekrar mdstat dosyasının çıktısına bakıyorum ve disklerim sorunsuz olarak raid yapısına dahil edilmiş ( UUU )

 

 

image020

 

 

Son olarak kontrol yapmak istiyorum ve sistem mesajlarına bakıyorum. Md0 ve Md1 için recovery işlemlerinin tamamlandığı gözükmekte ve hata almamış.

 

 

image021

 

 

Bir sonraki makale de görüşmek üzere.

SARG ile Squid Proxy Server’dan Rapor Üretimi

$
0
0

Bir önceki makalede Squid’i Active directory authentication ile kullanmayı anlatmıştık. Bu makalemizde AD ile entegre edilen Squid ile kullanıcı raporlarının nasıl alınacağını anlatacağız. Öncelikle bu iş için bu konudaki en iyi çözümlerden biri olan SARG (Squid Analysis Report Generator) programının kurulumunu yapacağız. Bu kurulum sonrası ile Active Directory’deki kullanıcı adlarına göre raporlar üreteceğiz. Hemen kurulumunu daha önce tamamladığımız CentOS sunucusuna gerekli paketleri yükleyelim. İlk olarak şu komutu veriyor ve başlıyoruz.

 

# yum -y install httpd httpd-devel wget php php-devel bind-utils

 

 

image001

 

 

Şimdi SARG’I download edelim.

 

# wget http://pkgs.repoforge.org/sarg/sarg-2.3.1-1.el6.rft.x86_64.rpm

 

 

image002

 

 

Download işlemi bittikten sonra hemen aşağıdaki komut ile kurulumu gerçekleştirelim.

 

# yum install sarg-2.3.1-1.el6.rft.x86_64.rpm

 

 

image003

 

 

Şimdi http.conf dosyasının içindeki sunucu ismini düzenleyelim. Bunun için önce aşağıdaki komut ile dosyayı açalım.

 

# nano /etc/httpd/conf/httpd.conf

 

 

image004

 

 

Şu satırı bulalım,


#ServerName www.example.com:80


Ve aşağıdaki gibi değiştirelim, satır başındaki #’ı kaldırmayı unutmayın.


ServerName squidproxy.cozumpark.intra:80

 

 

image005

 

 

Şimdi http.conf dosyasının en altına SARG için gerekli satırları ilave edelim. Bunun için aşağı ok tuşu ile dosyanın en altına gidelim ve şu satırları ilave edelim; Allow from 192.168.1.0/24 kısmına kendi ip bloğunuzu yazmayı unutmayın.

 

<Directory /var/www/sarg>
DirectoryIndex index.html
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Allow from 192.168.1.0/24
AllowOverride All
# Allow from your-workstation.com
</Directory>

 

İşlem bittikten sonra ctrl+x tuşlarına basın. Dosyayı kaydetmek istiyor musunuz diye soracaktır. “Y” tuşu ile çıkın. SARG’ın kullandığı font’u istediği yere kopyalıyoruz. Directory açalım.

 

# mkdir -p /usr/share/sarg/fonts/

 

Kopyalayalım,

 

# cp /etc/sarg/fonts/DejaVuSans.ttf /usr/share/sarg/fonts/DejaVuSans.ttf

 

Kurulum bitti. Apache’yi restart edelim.

 

# service httpd restart

 

Şimdi SARG’I daha verimli bir arayüzden kullanabilmek için webmin efsanesini kuralım. Önce download edelim,

 

# wget http://sourceforge.net/projects/webadmin/files/webmin/1.600/webmin-1.600-1.noarch.rpm/download?use_mirror=ignum

 

Install edelim.

 

# yum install webmin-1.600-1.noarch.rpm

 

 

image006

 

 

Kurulum bitti. Şimdi Webmin’I açalım. Bunun için Web Browser’a

 

http://squid-sunucu-ip-adresi:10000

 

Aşağıdaki ekran gelecektir.

 

 

image007

 

 

Kullanıcı arı root ve şifresini yazarak webmin’I açalım. Aşağıdaki ekran webminin ana akranı:

 

 

image008

 

 

Sağ bardaki başlıklardan açık renkli olan Un-Used Modules’e tıklayıp açalım.

 

 

image009

 

 

Bu başlık altında, aşağıdaki kısımda, aşağıdaki Squid Report Generator linkine tıklayalım.

 

 

image010

 

 

Orta kısımda hata göreceksiniz. Bu aslında hata değil, webmin’in SARG için istediği dosyaının istediği klasörde olmamasından kaynaklanıyor.

 

 

image011

 

 

Yukarıdaki Module Config linkine tıklayalım, Aşağıdaki ekranı göreceksiniz.

 

 

image012

 

 

Full path to SARG configuration file yazan yeri aşağıdaki gibi değiştirin, olması gereken şudur;

 

/etc/sarg/sarg.conf

 

 

image013

 

 

Save diyerek çıkın. Biraz evvelki ekran aşağıdaki hale gelecektir.

 

 

image014

 

Şimdi istediğiniz gibi rapor ürettirebilirsiniz. Zamanlayabilirsiniz, planlayabilirsiniz. Bu aşamadan sonra tüm raporlama işlemlerini buradan yapabilirsiniz. Generate Reports Now butonuna tıkladıktan sonra aşağıdaki akran karşınıza gelecektir.

 

 

image015

 

 

Rapor üretimini gerçekleştirdi. Sonrasında View completed report linkine tıklayıp aşağıdaki ekrana kavuşabilirsiniz.

 

 

 

image016

 

 

Dikkat çeken bir nokta var artık. Göreceğiniz üzere SARG, Servers başlığı altına geldi. Orta bölümde de üretilmiş raporları görüyorsunuz. Ben tam bu aşamadan bir şey fark ediyorum. Benim test sisteminin tarihi ve saati yanlış. Düzeltmeye gerek duymuyorum çünkü herşey test için. Düzeltmeye kalkarsam tüm raporların yeniden oluşturulması dahil bir sürü iş açar başıma. Şimdi orta kısımdaki üretilmiş raporlardan birine tıklayalım ve kim ne yapmış görelim.

 

Bakın kimler ne kadar internet kullanmış.

 

 

image017

 

 

Bizim ekibin bir kısmı burada, Bakalım Mümin bey nereleri gezmiş?

 

 

image018

 

 

Yukarı kısımda sağda kullanıcı adını görebilirsiniz. Liste aşağıya doğru gidiyor. Siz seçeneklerden istediğiniz gibi raporlar üreterek zamanlayabilirsiniz. Kullanıcı adlarını Domain controllerden çekerek raporlar alabildiğiniz gibi ip adreslerine göre de raporlar alabilirsiniz.

CentOS 6.3 üzerinde Wordpress Kurulumu

$
0
0

 

 

Bugün birçok sistem uzmanı ve danışman arkadaşlarımızın kendilerine ait blog sayfaları bulunuyor. Bu blog sayfalarından bir kısmı hosting firmalarında host ediliyor. Bir kısmı ise ücretsiz hosting lerde barındırılıyor. Bu makalemizde kendi Wordpress sunucumuzu nasıl yapılandırırız’ ı cevaplamak amacı ile Wordpress kurulumunu anlatacağım. Bu kurulumu isterseniz bir fiziksel sunucu üzerine yapabilir, isterseniz bir sanal appliance olarak kurabilirsiniz. Kurulum daha iyi anlaşılması ve kolay yapılabilmesi amacı ile fazlaca screenshot içeriyor. Burada hiçbir adımı atlamadan gerçekleştirmeyi hedefledim.

 

 

image001

 

 

www.centos.org adresinden CentOS’un 6.3 versiyonunu indirip kurulumuna başlayalım. Sunucuyu ilk açtığınızda yukarıdaki karşılama ekranı gelecektir. Enter tuşuna basarak devam edelim.

 

 

image002

 

 

Yukarıda göreceğiniz üzere selamlama ekranı geliyor. Bu ekran aynı zamanda indirmiş olduğunuz DVD kalıbının kurulum öncesi problem durumunu incelemeye yarıyor. Siz eğer kontrol etmek isterseniz OK seçeneği ile devam edebilirsiniz. Ben bu iso kalıbı ile birçok kurulum yaptığımdan ve problem olmadığından emin olduğum için skip yani bu aşamayı atla diyerek geçiyorum.

 

 

image003

 

 

Şimdi ise yukarıdaki grafik ekran geliyor. Bundan sonrasında nispeten daha alışık olduğumuz grafik ekranlar ile devam edeceğiz. Next diyerek devam edelim.

 

 

image004

 

 

Dil seçenekleri. Eğer Türkçe seçerseniz her şey Türkçeye dönecek. Ara yüz tamamen Türkçe olacaktır. Ben İngilizce kurmayı tercih ediyorum. Zaten bu grafik ekranları kullanmayacağım. Benim tüm işlemlerim sistem bazında Command-Line tarafında olacak. Next diyelim devam edelim.

 

 

image005

 

 

Şimdiki ekranda ise klavye seçeneklerini soruyor. Ben Türkçe bir klavye kullandığım için, Türkçe seçerek devam edeceğim. Alışık olduğum klavye düzeninden vazgeçmek istemiyorum çünkü Next ile devam edelim.

 

 

image006

 

 

Disk yapılandırma ekranı geldi karşımıza. Eğer spesifik bir disk kullanıyorsanız seçim yapabilirsiniz. Ben zaten sanal ortam kullandığım için basic storage device seçeneği ile devam ediyorum…

 

 

image007

 

 

Standart bir uyarı. Diskinizin içeriği tamamen silinecek emin misiniz, Yes, Discard any data seçeneğini tıkladıktan sonra next diyor devam ediyoruz.

 

 

image008

 

 

Sunucu ve domain ismi veriyoruz. Default olarak isim ve domain yukarıdaki gibi localhost.localdomain gelecektir. İsterseniz ismi değiştirebilirsiniz. Next ile devam edelim.

 

 

image009

 

 

Regional Settings saat ve lokasyon bilgilerinin düzenlenmesi için gerekli bilgileri içeriyor. Bizim için gerekli olanları seçerek devam edelim.

 

 

image010

 

 

Root şifresini verelim devam edelim.

 

 

image011

 

 

Şimdi disk bölümlerini yapılandıralım. Eğer farklı bir yapı kullanacaksanız istediğiniz gibi yapılandırabilirsiniz. Ben tüm alanı bu sunucu için yapılandırdığımdan en üstteki seçenek ile devam ediyorum. Next diyelim.

 

 

image012

 

 

Tüm datalara elveda demeye hazır mısınız.  Write changes to disk diyelim devam edelim.

 

 

image013

 

 

Şimdi ise karşımızda kurulum seçenekleri. Burada istediğiniz tipte kurulum yapabilirsiniz. Bir web server kuracaksanız ilgili paketler yüklenecektir. Yok database sunucu kurmanız lazımsa yukarıdaki seçeneklerden işaretlediğiniz takdirde database için gerekli bileşenler kurulacaktır. Ben gerekli paketleri daha sonra ilave edeceğimden minimal olarak kuracağım. Bu seçenek ekstra kaynak kullanacak paketleri içermeyecek böylece stabil ve performanslı bir sistem elde edeceğiz. Next diyelim devam edelim,

 

 

image014

 

 

Evet, kutulum başladı. Gerekli tüm paketlerin kurulumu tamamlanacak.

 

 

image015

 

 

Kurulum tamamlandığında doğal olarak reboot gerekecektir. Artık DVD’yi çıkarabilirsiniz. Kurulum sonrası çalışır temiz bir sistem elde etmiş oluyoruz.

 

 

image016

 

 

Reboot ettik ve yukarıdaki ekranda gördüğünüz gibi sistem açıldı. Kullanıcı adı olarak root veriyoruz ve şifre ile login oluyoruz. Sistem minimal olarak kurulduktan sonra açılınca etnernet kartı enable gelmiyor. Ethernet kartını enable ederek networkten bir ip almasını sağlamak için

 

# ifup eth0

 

Komutunu veriyoruz. Bu komut ile ethernet 0 kartı artık enable hale geliyor ve DHCP’ den ip alıyor.

 

 

image017

 

 

Bu işlem ile eth0 kartı şimdilik enable oldu. Ama sistemi restart ettiğinizde yine eth0’ın disable olarak geldiğiniz göreceksiniz. Bu işi kalıcı hale getirelim o halde. Yukarıdaki kırmızı karede olduğu gibi vi ile eth0 kartının konfigürasyon dosyasını düzenleyelim.

 

 

image018

 

 

Yukarıdaki gibi dosyanın içeriği karşınıza gelecektir. Sizin ilk açtığınızda “ONBOOT=”no” şeklinde gelecektir. Siz onu yes ile değiştirip sistemi restart ederseniz sistem açılışında ethernet kartınız enable olmuş olarak gelecektir. Restart etmek istemezseniz,

 

# service network restart

 

Komutu ile buradan devam edebilirsiniz. Eğer statik ip vermek isterseniz, yukarıdaki içeriği aşağıdaki gibi değiştirebilirsiniz, bold olan kısımları ilave etmeniz yeterli. Burada kendi bilgilerinizi girmeyi unutmayın.

 

 

DEVICE="eth0"

BOOTPROTO="static"

IPADDR="192.168.1.80"

NETMASK="255.255.255.0"

GATEWAY="192.168.1.250"

HWADDR="00:50:56:A6:5F:59"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

UUID="c6fc56a9-5597-479e-9654-79585b4ddc90"

 

 

 

image019

 

 

Her şey süper. Hadi sistemi update edelim,

 

# yum -y update

 

Bu komut ile kurduğumuz sistem en son versiyona çıkacaktır. Kurulum aslında 15dk gibi bir zamanda tamamlanmaktadır. Şimdi hemen Wordpress kurulumuna geçiyoruz.

 

Wordpress kurulumu için hemen ilk adımı atıyoruz ve gerekli paketlerin kurulumuna başlıyoruz. Biz Wordpress’ i MySQL ile birlikte çalışacak şekilde kuracağız.

 

# yum -y install mysql-server httpd php php-mysql wget unzip ftp nano vsftpd

 

 

 

image020

 

 

Server ismini httpd.conf dosyasına yazmamız lazım. Siz isterseniz kendi sunucunuzun ismini yazabilirsiniz. Aşağıdaki komutu yazarak dosyaya ilave edebilirsiniz.

 

# echo "ServerName localhost:80" >> /etc/httpd/conf/httpd.conf

Bu satır ilavesinden sonra servisleri aktif hale getirip start edelim,

# chkconfig mysqld on ; service mysqld start

# chkconfig httpd on ; service httpd start

 

 

 

image021

 

 

 

Artık Wordpress için mysql konfigürasyonunu yapa biliriz. Bunun için önce database ilavesi yapacağız. Sonra bu database’ e bir user tanımlayıp hak vereceğiz. Database ismi Wordpress olacak. User ismi ise wordpressuser olacak şekilde konfigürasyonu yapalım. Siz dilerseniz buradaki isimleri kendi istekleriniz doğrultusunda değiştirebilirsiniz. Hemen komut satırından gerekli komutları yazalım,

 

 

# mysql

# create database wordpress;

# create user wordpressuser;

# grant all privileges on wordpress.* to wordpressuser@localhost identified by 'passw0rd';

# flush privileges;

# exit

Ekran çıktısı aşağıdaki gibi olacaktır,

 

 

image022

 

 

Şimdi apache web Server’ın gerekli dizinine geçerek wordpress’ i Download edelim, aşağıdaki komutları vererek bu işlemleri yapabiliriz.

 

 

# cd /var/www/html

# wget http://wordpress.org/latest.zip

 

 

 

image023

 

 

 

Download bitti. Bulunduğumuz klasöre dosya geldi. Şimdi dosyayı açalım,

 

# unzip latest.zip

 

 

 

image024

 

 

İndirip açtığımız dosyayı bulunması gereken dizine kopyalayalım. Bu iş içinde aşağıdaki komutu kullanıyoruz,

 

# mv /var/www/html/wordpress/* /var/www/html/

Sonrada gereksiz dosyaları silerek temizlik yapalım.

# rm -rf latest.zip

# rm -rf wordpress

 

 

 

image025

 

 

Buraya kadar her şey güzel. Çok fazla işimiz kalmadı aslında. Aşağıdaki komutlarla bize gerekli dizinleri açalım ve haklarını verelim,

 

# mkdir -p /var/www/html/wp-content/uploads /var/www/html/wp-content/cache /var/www/html/wp-content/upgrade

 

# chown apache:apache /var/www/html/wp-content/uploads /var/www/html/wp-content/cache /var/www/html/wp-content/upgrade

 

# chmod -R 777 /var/www/html/wp-content

 

 

 

image026

 

 

Şimdi wordpress ile gelen örnek konfigürasyon dosyasından bir kopya alalım ve onu master konfigürasyon dosyası haline getirip, üzerinde çalışalım. Gerekli komutlar aşağıdaki gibidir,

 

# cp wp-config-sample.php wp-config.php

 

nano isimli editörümüz ile bu konfigürasyon dosyasını düzenleyelim. Bu işlem ile neredeyse tüm işlemleri tamamlamış oluyoruz.

 

# nano /var/www/html/wp-config.php

 

Bu komut sonrası karşımıza gelecek ekranda aşağıdaki değişiklikleri yapacağız, aşağıdaki satırlar orjinal halidir.

 

 

define('DB_NAME', 'database_name_here'): <--buraya database ismini yazıyoruz wordpress olacak

 

define('DB_USER', 'username_here'): <--username wordpressuser

 

define('DB_PASSWORD', 'password_here'): <--username şifresini buraya yazıyoruz passw0rd

 

 

yukarıdaki sayırları karakterleri ile birlikte yazıyoruz. Aşağıda değişikliklerin yapılmış halinin screenshot’ını görebilirsiniz,

 

 

image027

 

 

Değişiklikler sonrasında ctrl+x tuşlarına basıyoruz. Save edelimmi sorusuna y ile cevap verip enter tuşu ile çıkalım.

 

Sıkıntı olmaması amacı ile iptables firewall servislerini kapatarak stop edelim. Dilerseniz iptables dosyasına exeption yazarak servisi kapatmayabilirsiniz,

 

# chkconfig iptables off ; service iptables stop

# chkconfig ip6tables off ; service ip6tables stop

 

 

Son olarak Apache web server servisini restart edelim,

 

# service httpd restart

 

Bu işlem sonrasında kurulum tamamlandı. Artık web ara yüzüne bağlanmayı denediğinizde size wordpress cevap verecektir. Internet Explorer’i açalım ve adres kısmına http://192.168.1.201 şeklinde wordpress sunucunun ipsini yazalım. Burada gerekli DNS kayıtlarını açtıysanız isim ile de gidebilirsiniz. www.bilgehanpoyraz.com gibi.

 

Karşınıza ilk install olduğu için site oluşturma sihirbazı çıkacaktır. Sonrası için zaten artık linux tarafına dönmeniz gerekmeyecek. Wordpress ara yüzü ile devam edebileceksiniz. Son ekran görüntüsü şu şekilde olacaktır,

 

 

image028

 

 

Gerekli bilgileri verdikten sonra siteniz açılacak ve kullanmaya başlayabileceksiniz. Kiralık bir sunucu veya evdeki bir sanal vm sunucusuna koyarak ve gerekli yönlendirmeleri yaparak sitenizi istediğiniz yerde host edebilirsiniz.

 

Kolay gelsin.

Linux Dosya Sıkıştırma ve Açma

$
0
0

Veri depolama günümüz sistemlerinde kişisel veya kurumsal kullanımlarda olmazsa olmazlarımız dan olmuştur.  Sistemlerimizde kullandığımız resimler, müzikler, filimler, oyunlar vb. gibi bir çok uygulamalar büyük boyutlarda harddiskimizde yer kaplamaktadır. Harddisk boyutları her geçen gün artmakta buna karşılık olarak bizimde biriktirmek istediğimiz şeylerinde boyutları artmaktadır. Bu doğru orantıdan dolayı  eski dosyalarımızı arşivleyip kapladıkları boyutları azaltmak önemli.

 

Bu makalemizde Linux üzerindeki  ücretsiz kullanabildiğimiz dosyaları sıkıştırma ve açma  işlemlerine değineceğiz.   Örnekleyecek olduğumuz sıkıştırma ve açma uygulamalarının  genel olarak en çok kullanılanlardan seçtim.

 

/usr/bin/bzip2 à /usr/bin/bunzip2  

/usr/bin/zip    à/usr/bin/unzip 

/usr/bin/gzip  à /usr/bin/gunzip

/bin/tar

 

Bzip2, zip, gzip ve tar uygulamaları hakkında örneklemeler yapalım. Öncelikli olarak melih.txt dosyasını oluşturup bunun içerisine 10 milyon kayıt girmek için seq  komutunu kullanıyorum.  Kısa bir süre bekledikten sonra 76mb büyüklüğünde dosya oluştu. Compress uygulamalarının hepsini bu dosya üzerinden yapacağım ve en sonunda bütün uygulamaların hepsinden birer sıkıştırma yaparak ne kadar alan kazandığımızı gözlemleyelim.

 

 

image001

 

 

Gzip (GNU zip) komutu dosyaların sıkıştırılması için kullanılan en popüler komutlardan biridir. Kullanımları kolaydır. Gzip –c  “sıkıştırılacak olan dosya” ve  “ sıkıştırma sonrasında alacağı adı “ şeklinde komutu yazmamız yeterli olacaktır. Bu şekilde yaptığınız zaman dosyanın kendisi sabit kalarak ikinci bir  dosyayı sıkıştırarak oluşturur. Gzip melih.txt şeklinde yaptığınız zamanda dosyanın orijinali tutulmadan sıkıştırma işlemi gerçekleştirir. Sıkıştırma işleminden sonra oluşan dosyaların boyutlarına bakmak için ls –lh komutunu kullanabilirsiniz.

 

Gzip “ –l ” ise bize sıkıştırılmış dosyanın boyutunun öncesi ve sonrası hakkında bilgiler verecektir.

 

 

image002

 

 

Compress işlemini yaptık şimdide Decompress  açma işlemini yapalım. Açma işlemi içinde gunzip komutunu kullanıyoruz. Öncelikli olarak melih.txt dosyasını siliyorum. Sonra gunzip komutunu açmak istediğim dosyaya uyguluyorum. Decompress işlemlerindede “ –c “ komutu aynı şekilde dosyanın orijinalini tutmaktadır. Gunzip –c   “dosya.gz “  “ dosya “ şeklinde yazabiliriz komutu.

 

 

image003

 

 

Bzip2 sıkıştırma sistemi birçok sıkıştırma sistemine göre daha başarılıdır ve daha fazla alan sıkıştırabilmektedir. Bzip2  gzip ile aynı  kullanım şeklindedir.

 

 

image004

 

 

Decompress komutları da aynıdır. Açma işlemi yaparken bunzip2 komutunu kullanıyoruz.

 

 

image005

 

 

Zip sıkıştırması için yazılan komutlarda benzerlik taşımaktadır. –c kullanmamıza gerek kalmadan zip dosyanın orijinalini tutmaktadır. Yapılan işlemler sonucunda bize ne kadar alan kazandırdığının yüzdesel birimini vermektedir.

 

 

image006

 

 

Zip formatında sıkıştırdığımız dosyayı açmak için unzip komutunu kullanabilirsiniz.

 

 

image007

 

 

Sıkıştırma komutlarının en çok kullanılanlarına değinmiş olduk. Sıkıştırma yapmadan bir veya birden fazla dosyayı birleştirip arşivlemek istiyorsanız tar komutunu kullanabilirsiniz. Tar ( Tape Archive)  komutuyla sıkıştırma yapmak istiyorsanız yardımcılarından faydalanıyorsunuz bunlarda gzip ve bzip2.Tar komutu tekdir eklentilerinden yararlanarak kullanılır. Arşivleme ve Açma işlemleri için tek komut tar dır.

 

Tar –cvf  “ arşivden sonraki adı”  “ arşivlenecek dosya”

 

C oluşturmak için F soru sormasın V ekrana çıktısını vermesi için kullanılır. Dosya boyutları değişmediğini fark edebilirsiniz.

 

 

image008

 

 

Arşivlediğimiz dosyayı açmak içinde  “ x “ komutunu kullanıyoruz.

 

 

image009

 

 

Tar komutu yalnız başına kullanıldığında arşivler demiştik. Dosyaları hem arşivleyip hem de sıkıştırmasını istiyorsanız yardımcıları olan bzip2 ve gzip den yararlanabilirsiniz. Gzip le sıkıştırmasını istiyorsanız  “ z “ ekliyorsunuz bzip2 ilen sıkıştırmasını istiyorsanız “ j ”  eklemeniz yeterli. Bzip2 ilen sıkıştırılmış ve arşivlenmiş dosyanın boyutu daha küçüktür.

 

 

image010

 

 

Örneklemiş olduğumuz sıkıştırma yöntemlerinin hepsini bir kerede uygulayıp dosya boyutlarına göz atalım. Bzip2 nin en fazla sıkıştırma oranına sahip tir.

 

 

image011

 

 

Ayrıntılı olarak da bakabilirsiniz yukarıdaki örneklemede dosyaların boyutlarını mb cinsinden bakmıştık.

 

Arşivleyip sıkıştırma işlemini yaparken  dosya uzantısını “ tar.bz2 “ “ tar.gz “  vermiştik bunların kısaltarak  “ tbz2 “  “ tgz “  olarak da yapabiliriz.

 

 

image012

 

 

Örneklerimizde tek dosyayı arşivleyip veya sıkıştırmıştık. Birden fazla dosyayı da arşivleyebilirsiniz dosya isimlerini peş peşe yazdığınız takdirde tek bir dosyaya arşivleyecektir.

 

 

image013

 

 

 

Dosya sıkıştırma ve açma uygulamalarının sayısı bizim yaptığımız örnektekilerden fazladır. Genel olanları örneklemeye çalıştım bu makalede. Bir sonraki makalede görüşmek üzere.

Linux Mount

$
0
0

Mount komutu sistemimize bağladığımız aygıtları istediğimiz klasöre bağlamamızı sağlar. Böylece klasörün içine erişip istediğimiz şekilde kullanabiliriz. Bu işlemleri eşleştirme veya bağlama diye adlandırabiliriz.

 

Linux dağıtımını Gui olarak kullanıyorsanız sisteminize bağladığınız aygıtı otomatik olarak tanıyıp mount edilecektir. Sisteminizi Cli olarak yönetiyorsanız eğer yeni bağladığınız aygıtları otomatik olarak mount edilmeyecektir. Otomatik olarak eklenmesinin metotlarını da göreceğiz.

Sistemimize bağlayacağımız aygıtımızı cdrom olarak örnekliyorum.  Yeni bağladığınız aygıtı  /dev/cdrom   da bulabilirsiniz ama mount edilmediği için içinde işlem yapamayız.  Mount komutunda önce bağlayacağım aygıtı daha sonrasında bağlayacağım dosyayı belirtmem gerekmektedir. Yeni aygıtımı  cdrom dosyasına bağladım ve liste lediğimde içindekilere ulaşabildim.

 

 

image001

 

 

Yukarıdaki örnekte belli bir aygıt tipi belirtmemiştim. Aynı örneği aygıt tipi belir terekte yapabilirim. Mount  -t iso9660 aygıt bağlama noktası şeklinde.  İso9660  cdrom için kullanabilirsiniz. Örnek dosya tipleri adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, ntfs, proc, qnx4, reiserfs, romfs, smbfs, sysv, udf, ufs, umsdos, vfat, xenix, xfs, xiaf

 

 

image002

 

 

Bağlı olan aygıtların ayrıntılı bilgilerine erişmek için proc altındaki mounts un çıktısına bakabilirsiniz. En altta eklediğim cdrom u görebilirsiniz. Ayrıntılı bilgi içeriyor demiştim dosya tipi, dosya erişim hakkı ro ( read only ) ve yedek alınacak mı gibi bilgileri bulabilirsiniz.

 

 

image003

 

 

 

Df komutunu kullanarak ta  hızlı bir şekilde sistemde ne bağlı  ne kadar  yer kullanıyor bunların bilgilerine ulaşabilirsiniz.

 

 

image004

 

 

Mount –l komutuda size yeteri kadar mount edilen aygıtlar hakkında bilgi verecektir.

 

 

image005

 

 

Sürüm bilgisini görebilirsiniz.

 

 

image006

 

 

Sistemime yeni taktığım harddiski  cdrom klasörüne bağlamak istiyorum ama içerisine bilgi yazılmasını istemiyorum sadece içindekiler görünsün istiyorum.

 

Mount –o ( option )  ro ( read only )” bağlayacağım disk”  “bağlayacağım yer “  şeklinde çalıştırarak mount seçeneğine bir opsiyon ekleyip sadece read hakkı veriyorum.   Seq komutuyla  bir dosya yazmak istiyorum ve en altta gördüğünüz gibi read only file system şeklinde beni uyarıyor.

 

 

image007

 

 

Aynı opsiyon seçeneğiyle  rw ( read write ) okuma ve yazma hakkı veriyorum. Seq komutuyla kayıt ekliyorum ve  1.txt görüyorum.

 

 

image008

 

 

Mount ettiğim dosyanın yerini değiştirmek için  M (move) taşıma komutunu kullanabilirim. Mount –m  “bağladığım yer “ “yeni bağlayacağım yer “ şeklinde yazıp komutu df ile kontrol ettiğimde  artık /kurulum klasörünün altına geldiğini görmekteyim.

 

 

image009

 

 

Yeni aygıtlarımızı eklediğimiz zaman otomatik olarak her seferinde mount edilmesini istiyorsak fstab dosyasında değişiklik yapmamız gerekmektedir. Fstab dosyasının nasıl değiştireceğiniz le ilgili makaleyi önceki makalelerden bulabilirsiniz.  Fstab ‘a ekledikten sonra mount –a (all ) hepsi komutuyla fstabı yeniden okumasını sağlayıp eksik olan aygıtların eklenmesini sağlayabilirsiniz.

 

 

image010

 

 

İso dosyalarını da mount edip kullanabilirsiniz bunun için opsiyon dan loop la yapabilirsiniz.mount –o loop ” bağlayacağım disk”  “bağlayacağım yer “  şeklinde.

 

 

image011

 

 

Mount komutuyla aygıtları  sistemimize bağladık kaldırmak içinse  umount komutunu kullanıyoruz.

 

 

image012

 

 

Aygıtları sistemden kaldırırken bağladığım disk veya bağladığım dosyayı umount komutundan sonra yazarak kaldırabilirim.

CentOS 6.3 Üzerine Joomla Kurulumu

$
0
0

 

Bir önceki makalede WordPress kurulumunu anlatmıştım. Joomla’da yine bir çok blog yazarı sistem mühendisi arkadaşımız için vazgeçilmez dir. Bu vesile ile Joomla kurulumunuda sizlerle paylaşmak istedim. Kendinize ait blog’ları, konumlandıracağınız sistemler ile bağımsız olarak istediğiniz yerde yayınlayabilirsiniz. Ben Joomla’yı yine herzamanki gibi Linux üzerine kuracağım. Önce linux kurulumu ile işe başlayalım. Linux’u minimal kurarak hem kaynak hemde disk alanını en verimli şekilde kullanacağız.

 

 

image001

 

 

www.centos.org adresinden CentOS’un 6.3 versiyonunu indirip kurulumua başlayalım. Sunucuyu ilk açtığınızda yukarıdaki karşılama ekranı gelecektir. Enter tuşuna basarak devam edelim,

 

 

image002

 

 

Yukarıda göreceğiniz üzere selamlama ekranı geliyor. Bu ekran aynı zamanda indirmiş olduğunuz DVD kalıbının kurulum öncesi problem durumunu incelemeye yarıyor. Siz eğer kontrol etmek isterseniz OK seçeneği ile devam edebilirsiniz. Ben bu iso kalıbı ile birçok kurulum yaptığımdan ve problem olmadığından emin olduğum için skip yani bu aşamayı atla diyerek geçiyorum.

 

 

image003

 

 

Şimdi ise yukarıdaki grafik ekran geliyor. Bundan sonrasında nispeten daha alışık olduğumuz grafik ekranlar ile devam edeceğiz. Next diyerek devam edelim,

 

 

image004

 

 

 

Dil seçenkleri. Eğer Türkçe seçerseniz herşey Türkçeye dönecek. Arayüz tamamen Türkçe olacaktır. Ben İngilizce kurmayı tercih ediyorum. Zaten bu grafik ekranları kullanmayacağız. Benim tüm işlemlerim sistem bazında Command-Line  tarafında olacak. Next diyelim devam edelim,

 

 

image005

 

 

Şimdiki ekranda ise klavye seçeneklerini soruyor. Ben Türkçe bir klavye kullandığım için, Türkçe seçerek devam edeceğim. Alışık olduğum klavye düzeninden vazgeçmek istemiyorum çünkü, Next ile devam edelim.

 

 

image006

 

 

Disk yapılandırma ekranı geldi karşımıza. Eğer spesifik bir disk kullanıyorsanız seçim yapabilirsiniz. Ben zaten sanal ortam kullandığım için basic storage device seçeneği ile devam ediyorum.

 

 

image007

 

 

Standart bir uyarı. Diskinizin içeriği tamamen silinecek eminmisiniz, Yes, Discard any data seçeneğini tıkladıktan sonra next diyor devam ediyoruz.

 

 

image008

 

 

Sunucu ve domain ismi veriyoruz. Default olarak isim ve domain yukarıdaki gibi localhost.localdomain gelecektir. İsterseniz ismi değiştirebilirsiniz. Next ile devam edelim,

 

 

image009

 

 

Regional Settings saat ve lokasyon bilgilerinin düzenlenmesi için gerekli bilgileri içeriyor. Bizim için gerekli olanları seçerek devam edelim.

 

 

image010

 

 

Root password’ünü verelim devam edelim.

 

 

image011

 

 

Şimdi partition’ları yapılandıralım. Eğer farklı bir yapı kullanacaksanız istediğiniz gibi yapıalndırabilirsiniz. Ben tüm alanı bu sunucu için yapılandırdığımdan en üstteki seçenek ile devam ediyorum. Next diyelim.

 

 

image012

 

 

Tüm datalara elveda demeye hazırmısınız.  Write changes to disk diyelim devam edelim.

 

 

image013

 

 

Şimdi ise karşımızda kurulum seçenekleri. Burada istediğiniz tipte kurulum yapabilirsiniz. Bir web server kuracaksanız ilgili paketler yüklenecektir. Yok database sunucu kurmanız lazımsa yukarıdaki seçeneklerden işaretlediğiniz takdirde database için gerekli bileşenler kurulacaktır. Ben gerekli paketleri daha sonra ilave edeceğimden minimal olarak kuracağım. Bu seçenek ekstra kaynak kullanacak paketleri içermeyecek böylece stabil ve performanslı bir sistem elde edeceğiz. Next diyelim devam edelim.

 

 

image014

 

 

Evet kutulum başladı. Gerekli tümpaketlerin kurulumu tamamlanacak.

 

 

image015

 

 

Kurulum tamamlandığında doğal olarak reboot gerekecektir. Artık DVD’yi çıkarabilirsiniz. Kurulum sonrası çalışır temiz bir sistem elde etmiş oluyoruz.

 

 

image016

 

 

Reboot ettik ve yukarıdaki ekranda gördüğünüz gibi sistem açıldı. Kullanıcı adı olarak root veriyoruz ve şifre ile login oluyoruz. Sistem minimal olarak kurulduktan sonra açılınca etnernet kartı enable gelmi yor. Ethernet kartını enable ederek networkten bir ip almasını sağlamak için

 

# ifup eth0

 

komutunu veriyoruz. Bu komut ile ethernet 0 kartı artık enable hale geliyor ve DHCP’den ip alıyor.

 

 

image017

 

 

Bu işlem ile eth0 kartı şimdilik enable oldu. Ama sistemi restart ettiğinizde yine eth0’ın disable olarak geldiğiniz göreceksiniz. Bu işi kalıcı hale getirelim o halde. Yukarıdaki kırmızı karede olduğu gibi vi editörü ile eth0kartının konfigürasyon dosyasını düzenleyelim,

 

 

image018

 

 

 

Yukarıdaki gibi dosyanın içeriği karşınıza gelecektir. Sizin ilk açtığınızda “ONBOOT = no” şeklinde gelecektir. Siz onu yes ile değiştirip sistemi restart ederseniz sistem açılışında ethernet kartınız enable olmuş olarak gelecektir. Restart etmek istemezseniz,

 

 

# service network restart

 

Komutu ile buradan devam edebilirsiniz. Eğer statik ip vermek isterseniz, yukarıdaki içeriği aşağıdaki gibi değiştirebilirsiniz, bold olan kısımları ilave etmeniz yeterli. Burada kendi bilgilerinizi girmeyi unutmayın. J

 

DEVICE="eth0"

BOOTPROTO="static"

IPADDR="192.168.1.80"

NETMASK="255.255.255.0"

GATEWAY="192.168.1.250"

HWADDR="00:50:56:A6:5F:59"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

UUID="c6fc56a9-5597-479e-9654-79585b4ddc90"

 

 

image019

 

 

Herşey süper. Hadi sistemi update edelim,

 

# yum -y update

 

Bu komut ile kurduğumuz sistem enson versiyona çıkacaktır. Kurulum aslında 15dk gibi bir zamanda tamamlanmaktadır. Şimdi hemen wordpress kurulumuna geçiyoruz.

 

Şimdi joomla kurulumu için hemen ilk adımı atıyoruz ve ilk gerekli paketlerin kurulumna başlıyoruz. Biz Joomlayı’da Wordpress gibi mysql ile birlikte çalışacak şekilde kuracağız.

 

 

# yum -y install mysql mysql-server mysql-devel httpd php php-mysql wget unzip ftp nano vsftpd telnet

 

 

 

image020

 

 

Server ismini httpd.conf dosyasına yazmamız lazım. Siz isterseniz kendi sunucununuzun ismini yazabilirsiniz. Aşağıdaki komutu yazarak dosyaya ilave edebilirsiniz.

 

 

# echo "ServerName localhost:80" >> /etc/httpd/conf/httpd.conf

Bu satır ilavesinden sonra servisleri aktif hale getirip start edelim,

# chkconfig mysqld on ; service mysqld start

# chkconfig httpd on ; service httpd start

 

 

Şu anda aslında tüm gerekli altyapıyı tamamlamış olduk. Şimdi joomla kurulumuna başlayalım. Öncelikle joomlayı indirerek kuruluma başlayacağız. Bunun için hemen aşağıdaki komutları yazarak download işlemini başlatalım.

 

# cd /var/www/html/
# wget
http://joomlacode.org/gf/download/frsrelease/17715/77262/Joomla_2.5.8-Stable-Full_Package.zip

 

 

image021

 

 

Pakedi indirdik. Şimdi açalım,

 

# unzip Joomla_2.5.8-Stable-Full_Package.zip

 

Açtıktan sonra dosyayı silelim,

 

# rm -rf Joomla_2.5.8-Stable-Full_Package.zip

 

Sonrasında iptables’i stop edip kapatalım. İsterseniz gerekli portları açarak iptables’i kapatmaya bilirsiniz. Ben test sistemi olduğundan tamamen kapatıyorum.

 

# service iptables stop ; chkconfig iptables
# service ip6tables stop ; chkconfig ip6tables off

 

 

image022

 

 

Şimdi Joomla gereksinimi olarak php.ini dosyasında bir değişiklik yapacağız. Bu değişikliği aşağıdaki gibi yapabilirsiniz,

 

# nano /etc/php.ini

 

; http://www.php.net/manual/en/outcontrol.configuration.php#ini.output-buffering 
output_buffering = 4096         

 

output_buffering = 4096 kısmı aşağıdaki gibi off hale getiriyoruz.

 

output_buffering = off

 

 

image023

 

 

Bu ilave ile daha sonra Joomla konfigürasyonu yaparken karşımıza gelecek parametre uyarısını bertaraf etmiş oluyoruz. Şimdi Joomla için MySql içinde bir database oluşturalım ve haklarını verelim. Bunun için yukarıda kullandığımız komutlarla kurulumunu tamamladığımız MySql içinde bir takım işlemler yapacağız. Aşağıdaki komutları kullanarak gerekli işlemleri yapıyoruz.

 

 

mysql
CREATE DATABASE 
joomla
;
CREATE USER 
juser@localhost
;
SET PASSWORD FOR juser@localhost= PASSWORD("
password
");
grant all privileges on joomla.* to juser@localhost identified by 'password';
FLUSH PRIVILEGES;
exit

 

Yukarıda koyu kırmızı olarak gördüğünüz üzere database ismi joomla kullanıcımız ise user@localhost bu kullanıcının şifresi password. Herzamanki gibi siz buradaki bilgileri kendi istediğiniz doğrultuda değiştirebilirsiniz. Hemen gerekli işlemleri yapalım,

 

 

image024

 

 

Evet MySql konfigürasyonuda tamamdır. Şimdi bazı haklar verip Joomla’nın yazması gereken konfigürasyonu yapabilmesini sağlayalım. Bunun için aşağıdaki satırları kullanmanız yeterli,

 

 

# touch /var/www/html/configuration.php
# chmod 777 /var/www/html/configuration.php
# service httpd restart

 

Şimdi arayüzü açabiliriz. Bunun için web browser’a aşağıdaki adresi yazabilirsiniz,

 

http://192.168.1.114/installation/index.php

 

ve karşmızda aşağıdaki ekranda göreceğiniz üzere Joomla.

 

 

image025

 

 

Buradan istediğiniz dil seçeneğini işaretleyip devam edelim. Ben ingilizce tercih ediyorum siz Türkçede seçebilirsiniz. Dil seçenekleri arasında mevcut  ve kusursuz. Sağ üst köşede next butonu var. Basarak devam edelim,

 

 

image026

 

 

Göreceğiniz üzere parametreler kısmı sıkıntısız. Hiç bir problem yok. Sağ üst köşeden yine next diyelim,

 

 

image027

 

 

License ekranı. Göreceğiniz üzere GPL yani Genel halk kullanımına ve geliştirilmesine adanmış özgür ürün. Para vermiyoruz. Sağ üst köşeden next diyelim devam edelim,

 

 

image028

 

 

Evet şimdi daha makalenin orta kısımlasında MySql database’i oluştururken kullandığımız database bilgilerini yukarıdaki gibi veriyoruz. Daha önce yukarıda kırmızı ve kalın harflerle yazdığım bilgileri buraya yazarak database’in oluşturulmasını sağlayabiliriz. Sağ üst köşeden next diyelim devam edelim.

 

 

image029

 

 

Burada kırmızı ve kalın harflerle uyarıda bulunmuş, çoğu kullanıcı bu adımı atlayıp geçer. Bizde isterseniz öyle yapalım. Gerekirse ileriki zamanlarda gerekli konfigürasyonu yapabilirsiniz.

 

 

image030

 

 

Bu aşamada artık son bilgileri veriyor ve kurulumu tamamlıyoruz. Site name’imiz yukarıda göreceğiniz üzere cozumpark. Screenshot’ın ensağ altında bulunan “install sample data” butonuna tıklayalım ve yukarıda sağ tarafta bulunan next tuşuna basalım.

 

 

image031

 

 

Tüm ayarlar tamamlandı. Kullanıcı adımızın admin olduğunu söylüyor ve şifresinide biraz evvel vemiştik. Dikkatinizi çeken Remove installation folder butonudur büyük ihtimalle. Şimdi onun için bir işlem yapıyoruz,

 

# cd /var/www/html/
# mv installation installation.org
# service httpd restart

 

Bu adımla kurulumu tamamlamış olduk. Bundan sonra sitenize erişip ayarlarını yapabilirsiniz. Erişim için adres bar’a http://ip_adresini yazabilir, yada DNS ayarları tamamlanmışsa sitenizin adı ile direk erişebilirsiniz. Site’nizi açtıktan sonra login olarak tüm ayarlara erişebilirsiniz. Bunun yanı sıra site admin seçeneği ile Joomla kapıları artık size sonuna kadar açık...

 

Yararlı olması dileğiyle.

Linux Crontab

$
0
0

Cron, linux işletim sistemlerinde zamanlanmış görevleri belirli zaman aralıklarında arka planda çalıştıran bir uygulamadır. Crontab ise görevi ve görevi çalıştıracak kişinin bilgilerinin oluşturulduğu dosyadır.

 

Her kullanıcının kendi crontab dosyası bulunmaktadır. Çalışan corn job ların loglarında kullanıcı bilgilerini bulabilirsiniz. Kullanıcıların crontab oluşturma hakları vardır. Bunu engellemek için  /etc/cron.deny klasörüne kullanıcı adı yazarsanız crontab oluşturma hakkını kullanıcının elinden almış olursunuz ve karşısına  You (melih) are not allowed to use this program (crontab)  gibi bir hata dönecektir.

 

Sistem tarafından oluşturulan cron lar oluduğu için servis çalışır durumda gelmektedir. Servisi çalıştırmamıza gerek yoktur fakat kontrol edelim. Chkconfig le hangi levellerde çalıştığını görebilirsiniz. Servise baktığımızda crond çalışır durumdadır.

 

 

image001

 

 

Crontab dosyamız  /etc nin altında tutulmaktadır. Çıktısına baktığımız da bize örnek olması açısından güzel bir açıklama yapılmıştır.  “ #  “  başlayan alanlar açıklama alanlarıdır ve bu alanlarda işlem yapılmaz. Yaptığınız tanımlamaları unutmamak adına crontab dosyasına ekleyeceğiniz job lardan önce açıklama yazmak sonrasında işinizi kolaylaştırır.

 

 

image002

 

 

Sistem tarafından oluşturulan cron ları /etc nin altında bulabilirsiniz.

 

 

image003

 

 

crontab dosyasına birkaç örnek ekleyelim. Crontab’ı istediğiniz bir editörle açınız. Örnekte gösterildiği gibi yazmaya başlarken zaman bilgilerini öncelikli olarak ekliyoruz sonrasında hangi kullanıcı çalıştıracaksa kullanıcı adını ve yapmak istediğimiz işlemi yazıyoruz.

 

Altta gördüğünüz örnek de her bir dakikada root kullanıcı için top sistem bilgilerini  /melih.txt dosyasına yazmasını istemişiz.

 

 

image004

 

 

Melih.txt dosyasının çıktısına bakarsanız top la alınan bilgileri görebilirsiniz. Bunları mail de göndertebilirsiniz.

 

 

image005

 

 

Crontab dosyasını editörle açmadan çalışmamızı yapalım.

 

Crontab –e    à yeni oluşturmak için

Crontab –l     à var olan işleri listeler

Crontab –u     à kullanıcı bilgisi gireriz

Crontab –r     à var olan işleri silmek için kullanılır.

 

Yeni bir crontab oluşturuyorum   her bir dakikada uptime komutu çalışsın aynı şekilde melih.txt ye yazsın.

 

 

image006

 

 

İstediğiniz kullanıcı bilgisini girerek de çalışma yapabilirsiniz.

 

 

image007

 

 

Birden fazla işlem yapmak istiyorsanız bunların hepsini bir çalıştırılabilir dosyada gösterip bunu crontab dosyasına ekleyebilirsiniz. Melih.sh dosyasını oluşturdum  içine  önce kayıt ettireceğim dosyanın yerini sonrasında da melih adlı bilgisayara  2 kere ping komutunu yazdım. Son olarak dosyanın modunu değiştirerek çalıştırılabilir dosya iznini veriyorum.

 

 

image008

 

 

Olmasını bekledim işlem melih adlı bilgisayara  2 kere ping atacak ve bunları melih.txt dosyasına yazacak. Örnekleri çoğaltabilirsiniz ihtiyacınız doğrultusunda.

 

 

image009

 

 

Contab dosyasına yazdık yapmasını istediğimiz işlemleri. Bu işlemler arka planda yapıldığı için bunların kontrol etmek için  /var/log/cron dosyasının çıktısına bakınız.


CentOS 6.3 FTP Server Kurulumu

$
0
0

 

 

Çoğu bilgi işlem çalışanı Arkadaşımızın çalıştıkları şirketlerde mail ekleri 10MB ile sınırlıdır. 10MB üzeri dosya transferlerinde hemen herkes bir takım çözümler bulmaya çalışmakta bu çözümlerin başında da FTP sunucular gelmektedir.  Bunun dışında kullanılan yöntemler ise rapidshare yada hotfile gibi bedava (büyük dosya yollamamızız sağlayan) servislerdir. Fakat bu servisler güvensizdir ve yolladığınız dosyalar şirketin özel bilgilerini içerebilir. Dolayısı ile bu servisleri kullanmak çok cazip gelmeyebilir. Şöyle bir çözüm olsa, biz dosyayı bir FTP sunucusuna upload etsek ve linkinide ilgili kişiye yollasak. Oda gerektiği şekilde download etse. Güvenili, stabil ve kolay...

 

Bugün sizlere büyük dosya transferlerinde kullanabileceğiniz, oldukça kullanışlı bir FTP sunucu kurulumunu anlatacağım. Bu kurulumu yine herzamanki gibi tamamen ücretsiz CentOS işletim sistemi üzerinde gerçekleştireceğiz.

 

 

image001

 

 

www.centos.org adresinden CentOS’un 6.3 versiyonunu indirip kurulumua başlayalım. Sunucuyu ilk açtığınızda yukarıdaki karşılama ekranı gelecektir. Enter tuşuna basarak devam edelim,

 

 

image002

 

 

Yukarıda göreceğiniz üzere selamlama ekranı geliyor. Bu ekran aynı zamanda indirmiş olduğunuz DVD kalıbının kurulum öncesi problem durumunu incelemeye yarıyor. Siz eğer kontrol etmek isterseniz OK seçeneği ile devam edebilirsiniz. Ben bu iso kalıbı ile birçok kurulum yaptığımdan ve problem olmadığından emin olduğum için skip yani bu aşamayı atla diyerek geçiyorum.

 

 

image003

 

 

Şimdi ise yukarıdakigrafik ekran geliyor. Bundan sonrasında nisbeten daha alışık olduğumuz grafik ekranlar ile devam edeceğiz. Next diyerek devam edelim.

 

 

image004

 

 

Dil seçenkleri. Eğer Türkçe seçerseniz herşey Türkçeye dönecek. Arayüz tamamen Türkçe olacaktır. Ben ingilizce kurmayı tercih ediyorum. Zaten bu grafik ekranları kullanmayacağım. Benim tüm işlemlerim sistem bazında Command-Line  tarafında olacak. Next diyelim devam edelim.

 

 

image005

 

 

Şimdiki ekranda ise klavye seçeneklerini soruyor. Ben Türkçe bir klavye kullandığım için, Türkçe seçerek devam edeceğim. Alışık olduğum klavye düzeninden vazgeçmek istemiyorum çünkü, Next ile devam edelim.

 

 

image006

 

 

Disk yapılandırma ekranı geldi karşımıza. Eğer spesifik bir disk kullanıyorsanız seçim yapabilirsiniz. Ben zaten sanal ortam kullandığım için basic storage device seçeneği ile devam ediyorum.

 

 

image007

 

 

Standart bir uyarı. Diskinizin içeriği tamamen silinecek eminmisiniz, Yes, Discard any data seçeneğini tıkladıktan sonra next diyor devam ediyoruz,

 

 

image008

 

 

Sunucu ve domain ismi veriyoruz. Default olarak isim ve domain yukarıdaki gibi localhost.localdomain gelecektir. İsterseniz ismi değiştirebilirsiniz. Next ile devam edelim,

 

 

image009

 

 

Regional Settings saat ve lokasyon bilgilerinin düzenlenmesi için gerekli bilgileri içeriyor. Bizim için gerekli olanları seçerek devam edelim,

 

 

image010

 

 

Root password’ünü verelim devam edelim,

 

 

image011

 

 

Şimdi partition’ları yapılandıralım. Eğer farklı bir yapı kullanacaksanız istediğiniz gibi yapıalndırabilirsiniz. Ben tüm alanı bu sunucu için yapılandırdığımdan en üstteki seçenek ile devam ediyorum. Next diyelim,

 

 

image012

 

 

Tüm datalara elveda demeye hazırmısınız.  Write changes to disk diyelim devam edelim,

 

 

image013

 

 

Şimdi ise karşımızda kurulum seçenekleri. Burada istediğiniz tipte kurulum yapabilirsiniz. Bir web server kuracaksanız ilgili paketler yüklenecektir. Yok database sunucu kurmanız lazımsa yukarıdaki seçeneklerden işaretlediğiniz takdirde database için gerekli bileşenler kurulacaktır. Ben gerekli paketleri daha sonra ilave edeceğimden minimal olarak kuracağım. Bu seçenek ekstra kaynak kullanacak paketleri içermeyecek böylece stabil ve performanslı bir sistem elde edeceğiz. Next diyelim devam edelim,

 

 

image014

 

 

Evet kutulum başladı. Gerekli tümpaketlerin kurulumu tamamlanacak.

 

 

image015

 

 

Kurulum tamamlandığında doğal olarak reboot gerekecektir. Artık DVD’yi çıkarabilirsiniz. Kurulum sonrası çalışır temiz bir sistem elde etmiş oluyoruz.

 

 

image016

 

 

Reboot ettik ve yukarıdaki ekranda gördüğünüz gibi sistem açıldı. Kullanıcı adı olarak root veriyoruz ve şifre ile login oluyoruz. Sistem minimal olarak kurulduktan sonra açılınca etnernet kartı enable gelmi yor. Ethernet kartını enable ederek networkten bir ip almasını sağlamak için

 

# ifup eth0

 

komutunu veriyoruz. Bu komut ile ethernet 0 kartı artık enable hale geliyor ve DHCP’den ip alıyor.

 

 

image017

 

 

Bu işlem ile eth0 kartı şimdilik enable oldu. Ama sistemi restart ettiğinizde yine eth0’ın disable olarak geldiğiniz göreceksiniz. Bu işi kalıcı hale getirelim o halde. Yukarıdaki kırmızı karede olduğu gibi vi ile eth0 kartının konfigürasyon dosyasını düzenleyelim,

 

 

image018

 

 

Yukarıdaki gibi dosyanın içeriği karşınıza gelecektir. Sizin ilk açtığınızda ONBOOT=”no” şeklinde gelecektir. Siz onu “yes” ile değiştirip sistemi restart ederseniz sistem açılışında ethernet kartınız enable olmuş olarak gelecektir. Restart etmek istemezseniz,

 

# service network restart

 

Komutu ile buradan devam edebilirsiniz. Eğer statik ip vermek isterseniz, yukarıdaki içeriği aşağıdaki gibi değiştirebilirsiniz, bold olan kısımları ilave etmeniz yeterli. Burada kendi bilgilerinizi girmeyi unutmayın. J

 

DEVICE="eth0"

BOOTPROTO="static"

IPADDR="192.168.1.25"

NETMASK="255.255.255.0"

GATEWAY="192.168.1.250"

HWADDR="00:50:56:A6:5F:59"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

UUID="c6fc56a9-5597-479e-9654-79585b4ddc90"

 

 

 

image019

 

 

Herşey süper. Şimdi sistemi update edelim,

 

# yum -y update

 

Bu komut ile kurduğumuz sistem enson versiyona çıkacaktır. Kurulum aslında 15dk gibi bir zamanda tamamlanmaktadır.

 

Linux kurulumu tamamlandı. Şimdi FTP sunucumuz için gerekli paketleri kuralım. Oldukça basit ve kolay şekilde kurulacaktır. Bunun için aşağıdaki komutları yazıyoruz.

 

# yum install -y vsftpd nano telnet ftp

 

 

image020

 

 

Yukarıda göreceğiniz ekran karşınıza çıkacaktır. Y cevabı ile devam edelim. Gerekli paketleri yükleyecektir.

 

Şimdi IpTables’i kapatalım ve vsftpd servisini açılışta otomatik hale getirelim. Bunun için aşağıdaki komutları kullanıyoruz,

 

# chkconfig vsftpd on;service vsftpd start
# chkconfig iptables off;service iptables stop
# chkconfig ip6tables off;service ip6tables stop

Ekran çıktısı aşağıdaki gibi olacaktır.

 

 

image021

 

 

Şimdi VsFtpd configurasyonu yapalım. Bunun için önce orjinal konfigürasyon dosyasının yedeğini alacağız. Hemen VsFtpd dizinine gidiyoruz,

 

# cd /etc/vsftpd/
Sonra dosyanın ismini değiştirelim.
# mv vsftpd.conf vsftpd.org

 

 

image022

 

 

Şimdi VsFtpd’nin konfigürasyon dosyasını yeniden oluşturalım.  Sonrasında dosyayı yeniden oluşturalım.

 

# nano vsftpd.conf

 

Yukarıdaki komutu verince bu editör size vsftpd.conf dosyası oluşturacaktır. Bu editör ile dosyayı oluşturduktan sonra aşağıdaki metni bu dosya içerisine yapıştıralım.

 

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
#anon_upload_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
#chown_uploads=YES
#chown_username=whoever
xferlog_file=/var/log/xferlog 
xferlog_std_format=YES
#idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
ascii_upload_enable=YES 
ascii_download_enable=YES 
ftpd_banner=Welcome to HELL, YEEAAAHHH...
chroot_local_user=YES                      
listen=YES                       
max_clients=100
max_per_ip=25

pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

 

işlem bittikten sonra ctrl+x tuş kombinasyonuna basın. Size save edeyimmi diye soracaktır. Y cevabı ile kayıt işlemini bitirin. Ekran görüntüsü şu şekil olacak,

 

 

image023

 

 

Şimdi servisi restart edelim ve VsFtpd’servisini çalışır hale getirelim.

 

# service vsftpd restart

 

 

image024

 

 

Evet aslında FTP serverimiz hazır. İnce ayarlara geçiyoruz şimdi aşağıdaki komutları verelim ve SeLinux’u ayarlayalım,

 

# setsebool -P ftp_home_dir on 
# setsebool -P allow_ftpd_full_access=1

 

 

image025

 

 

Bu işlem biraz zaman alacaktır, sonrasında herşey tamam. FTP sunucumuz hazır durumda. Kullanıcı oluşturalım ve bu kullanıcıların FTP sunucumuzu kullanmalarını sağlayalım. Ben FTP sunucunun yerel kullanıcılar ile kullanılmasında hiçbir zaman bir sıkıntı görmedim ve yaşamadım. O yüzden basit ve kullanışlı komutlarla hemen kullanıcımızı oluşturalım ve kullanmaya başlayalım.

 

# useradd huzuner -d /home/huzuner

 

buradaki /home/huzuner bu kullanıcının home directory’si olacak. İsterseniz değiştirebilirsiniz. Şimdi bu kullanıcı için şifre belirleyelim. Çünkü şifresiz kullanım mümkün olmayacaktır.

 

# passwd huzuner

 

 

image026

 

 

Evet kullanıcımızda hazır sunucumuzda hazır. Bağlanıp test edelim,

 

 

image027

 

 

Evet, sunucumuza bağlandık ve dosya kopyalamayı başardık. Burada önemli olan kullanıcının kendi klasörü dışında başka yerlerde gezmesinin engellenmiş olması. Bu kurulumu bir kere yapıp yıllarca kullanabilirsiniz. Şimdi upload ettiğiniz dosyanın linkini kullanıcısına ulaştırıp dosyayı download etmesini sağlayabilirsiniz. Kolay gelsin.

Linux ISCSI

$
0
0

Tcp/Ip protokolüyle SCSI (Small Computer System Interface)  paketlerinin taşınması için yapılmış olan  protokole ISCSI (Internet Small Computer Systems Interface)   denir. ISCSI ip ağları üzerinden veri transferini kolaylaştırır  ve depolama ünitesi olarak kullanmamıza olanak sağlar.

 

Performans olarak depolama ünitelerindeki fiber adaptörle taşınan veri kadar olmasa da bütçe problemi olan küçük kobiler için ideal bir depolama çözümü oluştura bilirsiniz.

 

ISCSI protokolüyle  hiçbir yeni yatırım maliyeti yapmadan eski sunucularınızı kullanarak depolama ünitesi oluşturabilirsiniz. Bence en güzel yanı da bu fazla kaynak ihtiyacı duymayacağı için disk I/O su iyiyse yeterli düzeyde bir  depolama ünitesi edinebilirsiniz.

 

Depolama çözümlerinde scsi target  ( veriyi sağlayan  ) ve iscsi initiator ( veriye bağlanan ) kavramları var. Bizde öncelikli olarak scsi target   oluşturacağız ve daha sonrada başka bir makinadan iscsi initiator la bağlanacağız.

 

Test sunucularımız Red Hat Enterprise . ilk olarak scsi target oluşuturuyorum. Bunun için kurulu olan sunucuya iscsi-initiator-utils  paketini kuruyorum.

 

 

image001

 

 

Test ortamı için tek disk ekledim ama siz sistem kaynaklarınız kadar oluşturabilirsiniz.

 

 

image002

 

 

SCSI servisinin çalışıp çalışmadığını kontrol edelim ve runlevel lerdeki durumuna da bakmakta fayda var.

 

 

image003

 

 

Scsidisks diye dosya oluşturup eklemiş olduğum diski buraya mount ediyorum.

 

 

image004

 

 

50 gb diskim vardı bunu ikiye bölüp bu şekilde çalışmak istiyorum. Siz daha fazla alana bölmek isterseniz for komutundan sonra oluşturmasını istediğiniz kadar sayı giriniz.

 

Scsidisk dosyasının altına disk1.dat ve disk2.dat diye 25 gb  lık iki bölüm oluşturdu.

 

 

image005

 

 

Scsi target komutlarını her  yeniden başlatmada oluşturmamak için /etc/rc.d/rc.local dosyasını açıp buraya yazıyorum. Sunucum her açılışta buradaki komutları algılayarak scsi target larımı oluşturacak.

 

tgtadm –lld iscsi –op new –mode target –tid 1 –T testmelih1 yeni target oluştur diyorum testmelih1 makinasında bu kendi makinamın adı   2 bölüm oluşturduğum için bunları da ekliyorum  en son satırda  tgtadm –lld iscsi –op bind –mode target –tid1 –I ALL diyerek  Tcp / Ip üzerinden  testmelih1  makinasına erişebilen herkes disklere erişim sağlayacak.

 

 

image006

 

 

Sunucumu yeniden başlatıyorum. Windows makinam dan iscsi protokolünü açarak testmelih1 makinasını ekliyorum ve  disk manager dan baktığımda raw data larımı 2 bölüm olarak görüyorum üzerinde çalışma yapmak için disklere format atmam gerekmektedir.

 

 

image007

 

 

Mevcut oluşturduğum konfigürasyona bakmak için tgtadm --lld iscsi --op show --mode target | less komutunu yazıyorum ve oluşturduğum LUN ların bilgilerine ulaşıyorum. İscsi target ( veri sağlayıcı ) olarak sistemimiz hazır.

 

 

image008

 

 

Şimdide diğer bir sunucu üzerine iscsi initiator  ( veriye bağlanan ) kurulumu yapalım.  Öncelikli olarak iscsi-initiator-utils paketinin kurulumunu yapmanız lazım.

 

 

image009

 

 

Hosts dosyasına diğer sunucumun ip ve computer name bilgilerini girdikten sonra iscsiadm komutunu kullanarak testmelih1 deki targets lara discovery paketi gönderiyorum.

 

 

image010

 

 

İki lun bölümünün de eklenmiş olduğunu kontrol ediyorum.

 

 

image011

 

 

İki bölümü de ext4 formatında biçimlendiriyorum.

 

 

image012

 

 

Yedekleme yapmak için iki ayrı dosya oluşturuyorum hafta ve ay diye bunları da bu biçimlendirdiğim bölümlere mount ediyorum. Sistem açılışlarında otomatik olarak mount etmesi için fstab dosyasında değişikliğini de yapıyorum.

 

 

image013

 

 

Hafta ve ay diye 20gb lık iki dosyam var artık bunlar üzerinde yedekleme yapısını oluşturma düşüncelerim var

 

 

image014

 

 

Cluster ortamlarınızı oluşturmak için, boşta sunucum bunu nasıl değerlendiririm ( bu düşünceleri çoğalta bilirsiniz )gibi düşünceleriniz varsa iscsi protokolü işinizi çok kolaylaştıracak ve maddi anlamda cebinizi yakmayacaktır. Bir sonraki makalede görüşmek üzere.

Linux Swap

$
0
0

Linux işletim sistemlerinde sahip olduğunuz fiziksel RAM ‘în daha fazla belleğe ihtiyaç duyduğunda hard diskinizi kullanarak size fiziksel bellek gibi kullanmanızı sağlayan sisteme Swap deriz.

 

Bu durum performans ta yavaşlamaya neden olur çünkü swap alanın fiziksel ram kadar hızlı çalışması mümkün değildir. Swap alanı sürekli kullanan sistemler de ciddi problem ler vardır diyebiliriz bunun için swap alanın en son dayanağımız olması gerekmektedir.

 

İlk kurulumda swap alanı fiziksel belleğimizin iki katı kadar yapabiliriz. Daha sonrasında swap alanda değişiklik yapabildiğimizi unutmayın.

 

Free komutu sistemimizde kullandığımız fiziksel bellek ve swap alanın boyutlarını göstermektedir. Benim swap alanım 4gb gözükmektedir ve kullanın miktar olarak 0 dır. Henüz ihtiyaç duymamış sistemim swap alana.

 

 

image001

 

 

Aynı şekilde top komutuyla sistemdeki fiziksel bellek, swap alanlarını ve kullanım miktarlarını görebilirsiniz.

 

 

image002

 

 

Sistemime yeni bir disk ekledim ve belli bir kısmını swap için ayırmak istiyorum. Fdisk komutuyla yeni disk üzerinde bölme işlemi yapıyorum +2gb lık yer böldüm.

 

 

image003

 

 

L ( list ) diyipswap alanın koduna bakıyorum.

 

 

image004

 

 

Swap alanın kodu olan 82 giriyorum ve yazdırmadan önce print alıp en son olacak işlemlerin görüntüsünü kontrol ediyorum. Bir sorun yok ise w ( write ) seçeneğiyle kullanıyorum ve ayarları yazdırıyorum.

 

 

image005

 

 

Oluşturduğum alan için  mkswap komutunu kullanarak swap alana dönüştürüyorum. Mkswap  “oluşturduğum disk “. Swapon  -s komutu swap bölümü olan diskleri listeler henüz yeni eklediğim disk gözükmemektedir. Free komutuyla baktığım zamanda halen +4gb görmekteyim.

 

 

image006

 

 

Fstab dosyasına ekliyorum ve yeniden başlatınca swapon  da  en son eklediğim diskimi görüyorum. Free de +6gb lık bir swap alanım oluştu.

 

 

image007

 

 

Eklediğim swap alanlarını kaldırabilirim bunun için swapoff komutundan sonra kaldırmak istediğim disk bölümünü yazıyorum. Swapoff  sadece mount  edilen swap alanı kaldırıyor daha sonra yeniden eklemek istersem swapon  -a ( all) komutuyla yeniden mount edebilirim.

 

 

image008

 

 

File sisteminizden de alan oluşturup  bunu swap bölümüne dahil edebilirsiniz.

 

 

image009

 

 

Mkswap la oluşturduktan sonra   file  “ oluşturulan alan “  la sisteme tanıtabilirim. Free ye baktığımda toplamda +7gb swap alan oluşturdum.

 

 

image010

 

 

Swapon  -s le bağlı olan disklerimi kontrol ettiğim zaman 3 bölüm birde file sistem olarak görünmektedir. Bir sonraki makalede görüşmek üzere.

Security Enhanced Linux – SELinux

$
0
0

 

 

 

National Security Agency (NSA)  tarafından geliştirilmiş güvenlik sistemi olan  SElinux ( Security Enhanced Linux ) sistemini inceleyeceğiz. 1999 yılında Asekeri projeler için geliştirilip  2.6 kernel ıyla Linux işletim sistemlerine dahil edilmiştir.SElinux  uygulama erişim kontrolü ve objelere erişimi kontrolünü kontrol eden bir güvenlik yapısıdır.

 

Linux işletim sistemlerinde standart olarak gelen DACs( Discretionary Access Controls ) isteğe bağlı kontrol varken  SElinux  la birlik te  MACs ( Mandatory Access Controls ) zorunlu kontrol gelmiştir. SElinux    Macs yapısından dolayı genellikle kapatılmaktadır ama  fazladan güvenliğin kimseye zararı olmadığını düşündüğüm için selinux konusu açalım istedim.

 

SElinux’ un 3 modu bulunmaktadır.

  Enforcing  ( MACs )   à  Policy ler aktif haldedir.

  Permissive ( MACs / DACs  ) àİzleme moduna geçer log tutar kontrol için kullanılır

  Disabled ( DACs ) à  Devre dışı bırakır

 

Red Hat türevli dağıtımlarda  6.0 öncesi sürümlerinde kurulum sırasında Selinux devre dışı bırakılabiliyordu. 6.0 ve sonrası sürümlerde ise SElinux kurulumdan kaldırılmış enforcing modda gelmektedir. İsterseniz kurulum bittik ten sonra disabled edebilirsiniz.

 

Birden fazla komutla çalışıp çalışmadığını kontrol edebiliri. /etc/selinux/config  dosyasını istediğiniz bir editörle açıp bakabilirsiniz. Enforcing mod ve disabled modları arasındaki geçişlerde sistemi yeniden başlatmamız gerekmektedir.  Enforcing  mod ve permissive mod lar arasındaki geçişlerde sistemi yeniden başlatmamız gerek yoktur.

 

 

image001

 

 

SElinux mount edilmemiş olsaydı eğer Sestatus     komutunun çıktısında disabled görürdük. SElinux mount edildiği için aşağıdaki gibi ayrıntılı bilgilere ulaşabilirsiniz. Sestatus komutuna benzer bir komutta getenforce komutudur.

 

 

image002

 

 

Enforcing ve permissive mod lar arasında geçişlerde işletim sistemini yeniden başlatmamıza gerek olmadığını belirtmiştik. Setenforce  0  yazarsak  permissive mod a geçmiş oluruz. Örnekte SElinux mount fakat current mode permissive olduğunu görebilirsiniz. Setenforce 1 yaparsanız enforcing  moda geçecektir.

 

 

image003

 

 

Her kullanıcın ve dosyaların güvenlik ayarları vardır bunların kontrolü için görüntülediğiniz komutların sonuna  Z eklerseniz güvenlik ayarlarını sizlere gösterecektir.

 

 

image004

 

 

 

Dosyalar üzerinde çalışmaya başlayabiliriz. http servisini çalıştırdıktan sonra /var/www/html dosyasının altına bir index.html dosyası oluşturup  içerisinide birkaç bir şey yazdım.

 

İndex.html in güvelik ayarlarına baktığımızda tip olarak httpd_sys_content  olduğunu görebilirsiniz. Sorunsuz bir şekilde index.html dosyasının görüntülenmesini beklemekteyim.

 

 

 

image005

 

 

İnternet Explorer dan deneme yaptığımız da index html e yazmış olduğumuz  yazı görüntülenmiş oldu.

 

 

image006

 

 

Dosya güvenlik tip lerinde değişiklik yapalım. Güvenlik tiplerini 3 bölümde görebilirsiniz U ( kullanıcı ) , R ( role )  ve  T ( tip ) . Bunlarda değişiklik yapabilmek için chcon komutunu kullanmanız gerekmektedir.

 

Chcon –t  dosya tipinde değişiklik yapacağım  user_home_t   kullanıcının home klasörü olduğunu belirtiyorum ve bu tipi hangi dosyaya uygulamak istiyor isem onu ekliyorum.

 

 

 image007

 

 

Ve az önce eriştiğimiz index dosyamıza artık izin hatası alarak erişimimiz kısıtlanmış oluyor.

 

 

image008

 

 

SElinux la ilgili loglara  2 yerden bakabilirsiniz.  /var/log/messages   ve   /var/log/audit/audit.log.

 

Audit loga baktığımızda denied hatasının açıklamalarını inceleyerek neden dolayı denied yediğinizi bulabilirsiniz.

 

 

image009

 

 

http servisinin de loglarına bakabilirsiniz.  /var/log/httpd/error.log altında  dosya erişim hakkı olmadığının logunu düşmüş.

 

 

image010

 

 

Dosyanın tipini değiştirdim  sonra hangi tipi almam gerektiğini hatırlamıyorum bunun için ise resterecon komutunu kullanabilirsiniz. Resterecon dan sonra dosyanın yerini gösterdiğiniz zaman oradaki dosyanın tipini ilk haline düzeltecektir.

 

 

image011

 

 

Farklı bir  kullanım yoluda sebool larla değişiklik yapmaktadır. Dosyanın tipini user_home çektikten sonra sayfaya erişim sağlayamayağım. Getsebool la  httpd_enable_homedirs   baktığım zaman off durumdadır. Setsebool la  httpd_enable_homedirs on yaparsam enforcing modda olduğu halde  homedirs  a bakmayacaktır. Sayfayı kontrol ettiğimde user home olmasına rağmen sayfaya erişim sağlayabilirim.

 

 

image012

 

 

Setsebool la değiştirdiğimiz işlemler kalıcı hale getirmek için –P kullanmamız gerekmektedir. Aksi halde komutu yazdıktan sonra sistemi yeniden başlattığımızda eski halini alacaktır.

 

 

image013

 

 

Çok fazla sebool bulunmaktadır. Bunları get komutuyla listeleyebilirsiniz. Çalışma yapacağınız sebool için aramayı kısaltmak adına grep komutunu kullanabilirsiniz.

 

 

image014

 

 

SElinux dosyalara , kullanıcılar ve port lara da müdahale edebilmektedir. Port numaralarında değişiklik yapmak için semanage komutunu kullanıyoruz.

 

Semanage port –l  komutu bize kullanılan portların listesini getirecektir. Aramalarınızı daraltmak istiyorsanız grep komutunu kullanınız.

 

Semanage port –l | grep http   gibi.

 

 

image015

 

 

http servisinin portunda değişiklik yapmak istiyorum.  /etc/httpd/config/httpd.conf   dosyasında listen dinlenen portu değiştiriyorum. Port numarasını 1453 yapıp dosyayı kaydediyorum.

 

 

image016

 

 

Bu port uda selinux tanımlamak için  semanage port –a  add  http_port_t –p protocol tcp 1453  yazıyorum ve biraz bekledikten sonra port list le eklemiş mi emin olmak için bakıyorum.

 

 

image017

 

 

Dışardan erişimlerde 80 portunu kapatıp eklemiş olduğum 1453 portunu yönlendirmesini de yapabilirim. 1453 portu üzerinden index.html sayfama ulaşımı kontrol ediyorum ve başarılı =)

 

 

image018

 

 

Eklemiş olduğum portlarıda kaldırabilirim –a add yazdığım yere –d delete yazarak silme işlemini gerçekleştiriyorum.

 

 

image019

 

 

Bu kadar işlemlerle kim uğraşacak kapat şu SElinux u diyebilirsiniz ( haksız da bulmam sizi) . Kapatmak için 2 yöntemi vardır bunlardan birisi mount etmemesini sağlamak bir diğeri kolay olanı.  /etc/selinux/config altındaki SELINUX=disabled yapmak ve mount olmuş olan selinux devre dışı kalması için sistemi yeniden başlatmaktır.

 

 

image020

 

 

Çok karmaşık bir yapısı vardır SElinux un. Alışmasının kolay olmadığını biliyorum ama sisteminizi bir kere ayarladıktan sonra çok  fazla değiştirmeyeceğiniz için önceden disabled edip geçmeyin birazcık da olsa uğraşın derim.

Redhat Sunuculara Windows Printer Server dan Share Edilmiş Printerları Ekleme

$
0
0

 

Bu işlemi yapmak için benim sebebim oracle uygulamasından fatura basarak test etmekti ve elimde fatura basacak network printer yoktu hali ile usb printer kullanmak zorunda kaldım.

 

Usb printerı en yakın PC ye bagladım ve share ettim, Windows printer server üzerinde gerekli işlemleri tamamladım ve printer artık kullanılabilir.

 

Şimdi redhat tarafına geçelim,  kullanıcı adı ve şifremiz ile sisteme login olduktan sonra işlem adımları sırası ile aşağıdaki gibidir.

 

1-Root yetkisine sahip değilseniz sudo su – ile şifremizi girerek root yetkisine erişebiliyor olmamız gerekir.

 

 

image001

 

 

2- Root yetkisine sahip olduktan sonra öncelikle printer servisinin çalıştığından emin olun.

 

/etc/init.d/cups status :bu komut size servisin durumunu belirtecektir.

 

 

image002

 

 

Servis stop durumunda ise

 

/etc/init.d/cups start ile printer servisini start edebilirsiniz.

 

 

image003

 

 

Servisi start ettikten sonra servisin sunucu açıldığında da çalışabilir olduğundan emin olmak için,

 

chkconfig --list|grep cups          komutunu çalıştırıyoruz.

 

cups            0:off   1:off   2:on    3:on    4:on    5:on    6:off

 

 

image004

 

 

Eğer printer servisi açılışta start oluyor ise yukarıdaki gibi bir çıktı alacağız start olmuyor ise tüm seçenekler off olaracaktır.

 

Bunu on konumuna getirmek için

 

chkconfig cups on komutunu çalıştırıyoruz.

 

 

image005

 

 

3- Komut satırınında system-config-printer komutunu çalıştırın, printer ayar penceresi açılacaktır.

 

 

image006

 

 

image007

 

 

4-New printer butonu ile printer adı, açıklama ve lokasyon bilgisini girin ve iler butonu ile devam edin

 

 

image008

 

 

              

Örnek :

                Adı                         : Muhasene EPSON

                Açıklama             : Muhasebe Epson Lazer Printer

                Lokasyon             : Muhasebe

 

 

image009

 

 

5-Bu bağlantıda connection tipini seçmemiz gerekiyor, biz windows server dan share edilen bir printerı kullanacağımız için Windows printer via samba seçeneğini seçiyoruz.

 

 

image010

 

 

Ayrıca istenirse search ederek de printer bulunmak istenebilir.

 

 

image011

 

 

 

6-Bu bölümde sizden bazı bilgiler talep edecektir,

 

Smb://                 : Bu alana printer share eden windows sunucu ip adresi ve printer name yer alacak.

Username          : Windows sunucu da printerlara çıktı gönderebilecek yetkiye sahip username

Password            : Windows sunucudaki yetkili user a ait şifre bilgisi.

 

Smb://                 /10.0.0.1/Muhasbe-Epson

User :                   printeruser

Password :         printpass

 

 

image012

 

 

Printer sunucusu domain ortamında ise,

Smb://                 /10.0.0.1/Muhasbe-Epson

User :                   domain.com/printeruser

Password :         printpass

 

 

image013

 

 

Şeklinde olmalıdır.

 

7-Verify butonu ile username ve password de hata olmadığını check edebilirsiniz, sorun yok ise iler butonu ile devam edebiliriz.

 

 

image014

 

 

image015

 

 

8-Bu bölümde bizim iki seçenek sunulacak, istersen redhat database deki PPD file istersek de kendi elimizde bulunana printer a ait PDD file seçerek ileri butonu ile devam edebilirsiniz. Bu işlemi windows daki  .inf dosyası gibi düşünebilirsiniz.

 

 

image016

 

 

image017

 

 

9- Bu bölümde printer modelini seçerek ileri butonuna tıklayın ve uygula butonuna basarak işlemi sonlandırın.

 

 

image018

 

 

10- Sunucumuza eklemiş olduğumuz printerın sağlıklı bir şekilde çalıştığını test etmek için lpq komutunu kullanıyoruz. Aşağıdaki gibi ready ise printer hazır demektir. Sorun var ise sırası ile network,  windows printer server, username password gibi adımları yeniden check edebilirsiniz.

 

 

image019

 

 

Echo test > test.txt         : Bu komut ile test.txt içerisine test yazdırıyoruz.

Lpr test.txt                         : test.txt yi printer a gönderiyoruz.

Lpstat                                   : Printerdaki kuyrugu check edebiliyoruz.

 

 

Bu makalede sizlerle redhat sunucu üzerinden usb printer kullanarak print almaktan bahsettim, umarım faydalı bir makale olmuştur.

 

Not :

 

Karakter problemi yaşayan olur ise dosyanın encoding dikkat etmesi gerekir.

 

Sunucu ile clientlar arasında firewall mevcut ise sadece smb port yeterli olmayacaktır, ldap, active directory gibi kimlik doğrulama servislerinin de erişilebilir olması gerekmektedir.

 

Faydalı olabilmesi temennisi ile...

Viewing all 96 articles
Browse latest View live