'*nix' Kategori'sine ait arşiv.


Ajenti (Web Tabanlı Kontrol Paneli) ile Linux Yönetimi

Genelde, Linux hostlarda her tür sistem yönetimi işininin komut satırı üzerinden ve mümkünse otomatize bir şekilde yapılmasını tavsiye ediyorum. Zira bu şekilde sistem altyapısına daha fazla hakim olabildiğiniz gibi komut satırından çalışmak bir arabirim üzerinden çalışmaya oranla yaratıcılığı da tetikleyen bir konu olduğundan epeyce önemlidir. Ancak bazı durumlarda sistemlerinizi -tercihen web üzerinden çalışan bir- arabirim üzerinden de yönetmek isteyebilirsiniz.

İşte böyle bir ihtiyaç hasıl olduğu zaman çözüm olarak Ajenti isimli web tabanlı kontrol panelini kullanabilirsiniz. Plesk, cPanel ve Webmin gibi yönetim arabirimlerine güzel bir altrenatif olan Ajenti AGPLv3 lisanslı bir açık kaynak kod yazılım olmakla birlikte hosting işi yapmıyorsanız ya da ticari olarak vps’lerinizin yönetimi için kullanmamanız durumunda yani iş ve evdeki sunucularınızın yönetimini yapmak üzere personal license adı altında tüm sunucularınıza ücretsiz olarak kurup kullanabiliyorsunuz. Hosting yönetimi, VPS ve appliance ürünlerde kullanmak için ise lisans detayları ayrıca şu sayfayada bulunuyor: http://ajenti.org/licensing

Ajenti’nin yum ve apt repoları bulunduğu için RHEL ve Debian tabanlı tüm sistemlerde doğrudan paket yöneticisi üzerinden kurulabiliyor. Bu şekilde oldukça kolay bir kurulama sahip olması ve modüler plugin sistemi sayesinde sunucularınızın üzerinde koşan hemen her türlü bileşeni (Apache, MySQL, PostgreSQL, Nginx, Cron, Firewall, Munin, Samba, FTP, BIND, Squid, OpenVPN vs. ) -eski yapılandırmanızı da bozmadan çalışan sistemlere direk entegre olarak- yönetebilmesi ve API desteği ile kolay plugin geliştirme (python) imkanı vererek kendi özel uygulamalarınız için Ajenti pluginleri yazabilmenize olanak sağlaması gibi gayet güzel özellikler sunuyor. Ayrıca çok küçük bir footprint’e sahip olmasından dolayı küçük memory ve CPU kullanım değerleri ile de oldukça hafif bir uygulama olmasından dolayı tercih edilebilecek bir çözüm sağlıyor.

Aşağıda RHEL/CentOS üzerine Ajenti kurulumun nasıl yapılacağından bahsedeceğim. İlginizi çekerse kurmak isteyebilirsiniz:

Yazinin devami icin tiklayin.


ncdu – Disk Kullanımı Görüntüleme Aracı

Normalde dosya ve dizinlerin sistemde ne kadar yer kapladığını görmek için du (ya da find) komutu kullanır ve konsol üzerinden gerekli bilgiyi ediniriz. Her ne kadar du komutunun çıktısını düzenlemek için bir çok parametre bulunsa da genel anlamda du çıktısı özellikle Linux ile yeni tanışan kişiler için karışık olabilir. İşte bu nedenle, du’nun yaptığı işi yapan ancak çıktı olarak ncurses kullandığından dolayı text-tabanlı da olsa grafiksel sonuç döndüren “ncdu” isimli bir uygulama bulunuyor.

Ncdu hem okunaklı çıktı üretmesi hem de uzak hostlarda doğrudan çalıştırılabilmesi gibi özelliklerinden dolayı epey kullanışlı bir araç. Bulunduğunuz dizinde ncdu’yu çalıştırdığınız zaman aşağıdaki gibi bir çıktı alıyorsunuz:
Yazinin devami icin tiklayin.


Ossec Merkezi Agent Yapılandırması

Daha önce Linux Akademi’nin Blog’unda Ossec (HIDS) Kurulumu ve Yapılandırma‘sını anlatan bir döküman yayınlamıştım. İlgili dökümandan hareketle kurulan Ossec sistemlerinde, agent’lar üzerinde yapılacak dosya bütünlük kontrolü, rootkit tespiti ve log monitoring gibi işlemlerde hangi dosya/dizinlerin izleneceği vs. gibi tüm yapılandırma işlemleri default olarak uzak host üzerinde bulunan ossec yapılandırma dosyası üzerinde tanımlanmaktadır. Bu durum monitor ettiğiniz hostlarda tek tek düzenleme yapılması anlamına geldiği için özellikle fazla sayıda host’u monitor etmek iş gücü anlamında maliyetli bir durum oluşturmaktadır. Böylesi bir durumda agent yapılandırmalarını merkezi olarak düzenleyebilmek isteyebilirsiniz.  İşte bu sebeple Ossec, syscheck (dosya bütünlük kontrolü) rootkit tespiti ve log monitoring tanımlamalarının merkezi yapılabilmesine olanak sağlamaktadır.

Yazinin devami icin tiklayin.


Debian Tabanlı Sistemlerde Paket Sorgulama İşlemleri

Debian tabanlı dağıtımlarda sistemde kurulu paketlerle ilgili sorgulama işlemleri dpkg üzerinden yapılabilmektedir.

Sistemde kurulu tüm paketleri listelemek için -l paramtresi kullanılabilir:

# dpkg -l

Çıktı şuna benzer olacaktır:

ii  0trace                                0.01-3                             amd64        A traceroute tool that can run within an existing TCP connection.
ii  acccheck                              0.2.1-1kali3                       amd64        Password dictionary attack tool for SMB
ii  accountsservice                       0.6.21-8                           amd64        query and manipulate user account information

Kurulu bir paketle ilgili detaylı bilgi almak için ise -s paramtresi kullanılabilmektedir:

# dpkg -s hping3
Package: hping3
Status: install ok installed
Priority: extra
Section: net
Installed-Size: 249
Maintainer: Guillaume Delacour <[email protected]>
Architecture: amd64
Version: 3.a2.ds2-6kali3
Depends: libc6 (>= 2.7), libpcap0.8 (>= 0.9.8), tcl8.4 (>= 8.4.16)
Description: Active Network Smashing Tool
 hping3 is a network tool able to send custom ICMP/UDP/TCP packets and
 to display target replies like ping does with ICMP replies. It handles
 fragmentation and arbitrary packet body and size, and can be used to
 transfer files under supported protocols. Using hping3, you can test
 firewall rules, perform (spoofed) port scanning, test network
 performance using different protocols, do path MTU discovery, perform
 traceroute-like actions under different protocols, fingerprint remote
 operating systems, audit TCP/IP stacks, etc.  hping3 is scriptable
 using the Tcl language.
Homepage: http://www.hping.org/

İlgili pakete ait sistem dosyalarını listelemek için ise -L parametresi kullanılabilmektedir:

# dpkg -L hping3
/.
/usr
/usr/sbin
/usr/sbin/hping3
/usr/share
/usr/share/doc
/usr/share/doc/hping3
/usr/share/doc/hping3/SPOOFED_SCAN.txt.gz
/usr/share/doc/hping3/changelog.gz
/usr/share/doc/hping3/BUGS
/usr/share/doc/hping3/MORE-FUN-WITH-IPID
/usr/share/doc/hping3/API.txt.gz
/usr/share/doc/hping3/README
...

Bir .deb paketinin içeriğini görüntülemek için ise -c parametresi kullanılmaktadır.

# dpkg -c rsync_3.1.0-3_amd64.deb
drwxr-xr-x root/root         0 2014-04-16 10:38 ./
drwxr-xr-x root/root         0 2014-04-16 10:38 ./lib/
drwxr-xr-x root/root         0 2014-04-16 10:38 ./lib/systemd/
drwxr-xr-x root/root         0 2014-04-16 10:38 ./lib/systemd/system/
-rw-r--r-- root/root       188 2013-09-30 10:54 ./lib/systemd/system/rsync.service
drwxr-xr-x root/root         0 2014-04-16 10:38 ./usr/
drwxr-xr-x root/root         0 2014-04-16 10:38 ./usr/bin/
-rwxr-xr-x root/root    390704 2014-04-16 10:38 ./usr/bin/rsync
drwxr-xr-x root/root         0 2014-04-16 10:38 ./usr/share/
drwxr-xr-x root/root         0 2014-04-16 10:38 ./usr/share/man/
drwxr-xr-x root/root         0 2014-04-16 10:38 ./usr/share/man/man5/
-rw-r--r-- root/root     15833 2014-04-16 10:38 ./usr/share/man/man5/rsyncd.conf.5.gz
drwxr-xr-x root/root         0 2014-04-16 10:38 ./usr/share/man/man1/
-rw-r--r-- root/root     56207 2014-04-16 10:38 ./usr/share/man/man1/rsync.1.gz
drwxr-xr-x root/root         0 2014-04-16 10:38 ./usr/share/doc/
...

dpkg ile ilgili daha fazla bilgi için ayrıca dpkg’nin sayfasına gözatmanızı tavsiye ederim.


Unbound ile Güvenli Recursive DNS Kurulumu

Unbound, güvenlik önplanda tutularak geliştirilen bir DNS sunucusudur. validating (DNSSec), recursive ve caching modları bulunan bu DNS daemon’ı ile kendi alan adlarınızına ait dns kayıtlarını barındırmak üzere authoritative DNS sunucusu kurabileceğiniz gibi üzerinde alan adı barındırmadan sadece çözümleme yapan recursive bir DNS sunucusu da kurabilirsiniz.

Ben bu yazıda unbound kullanarak hızlıca bir recursive DNS kurulum ve yapılandırmasının nasıl gerçekleştirilebileceğini anlatacağım.

Yazinin devami icin tiklayin.


OSSEC (HIDS) Kurulumu ve Yapılandırması

ossec-hidsBu makaleyi, Linux Akademi blog’unda Ossec (HIDS ) Kurulumu ve Yapılandırması ismi ile yayınlamıştım; şimdi Syslogs üzerinden de yayınlıyorum.

Özellikle dağıtık yapılarda, sunucu güvenliği konusunda süreklilik sağlamak en önemli noktalardan birisidir. Zira, tüm sistemlerin bir şekilde izlenmesi ve olası anormalliklerin hemen tespit edilip müdahale edilmesi proaktif sistem yönetiminin başlıca kurallarından birisidir. Bu noktada network trafiğini izleyerek saldırı tespiti yapmanın yanı sıra her bir sunucu/cihaz üzerinde de bir HIDS (host-based intrusion detection) uygulaması kullanarak log monitoring, dosya bütünlük kontrolü ve rootkit tespiti gibi genel işlemler gerçekleştirilmelidir.

İşte bu yazıda, bahsedilen bu ihtiyacı karşılamak üzere OSSEC isimli HIDS uygulamasından bahsedip, server/client mimarisi ile kurulumunu ve yapılandırmasını anlatacağım.

Yazinin devami icin tiklayin.


Bind DNS Server Kurulumu – Master, Slave Replication

Bind, oldukça yaygın olarak kullanılmasından dolayı bir DNS sunucusuna ihtiyacınız olduğu zaman tercih edebileceğiniz alterntiflerin başında geliyor. ISC tarafından geliştirilen bind kolay kurulumu ve yönetimi nedeni ile de tercih edilebilecek bir nameserver uygulamasıdır. Bu yazıda bind kullanarak iki CentOS 6.5 üzerinde master/slave olarak çalışacak bir DNS yapısının nasıl kurulabileceğinden bahsedeceğim.

Yazinin devami icin tiklayin.


MySQL High Availability Setup: DRBD, Pacemaker, Corosync

Kritik noktalarda çalışan MySQL servislerinde, yüksek erişilebilirlik sağlamak (high availability) ve herhangi problem anında mümkün olan en kısa sürede otomatik olarak tekrar servis verebilir duruma gelmek için uygulamanızın özelliklerine ve altyapınıza göre replikasyondan clustering’e birden fazla alternatif kullanabilirsiniz. Böyle bir ihtiyaç için seçilebilecek alternatiflerden birisi DRBD/Pacemaker/Corosync üçlüsünü kullanarak active/passive olmak üzere iki node’dan oluşan bir HA cluster kurmak olabilir.

Bu tip bir yapı ile http://dev.mysql.com/doc/refman/5.0/en/ha-drbd.html adresinde de anlatıldığı üzere iki adet (fiziksel ya da sanal) sunucu ile ortak bir storage vs. gibi herhangi ek bir yatırıma gerek kalmadan otomatik failover ve recovery özelliği ile servis devamlılığı ve senkron replikasyon (mirroring) yaparak data güvenliği sağlayan bir yapı elde edebilirsiniz.

Yazının devamında böyle bir yapının CentOS 6.5 ve MySQL 5.1 kullanılarak oluşturulmasına ait kurulum notlarını paylaşacağım.

Yazinin devami icin tiklayin.

« Onceki SayfaSonraki Sayfa »