Linux Sistemlerde Kullanılmayan Servislerin Kapatılması

Linux sistemlerde kullanılmayan servislerin kapatılması, önemli bir güvenlik önlemidir. Ayrıca kullanımda olayan servisler  sistem kaynaklarını da boş yere tüketiyor. Dolayısı ile bu tip servislerin saptanması ve devre dışı bırakılması daha da önemli bir hal alıyor.

Sistem üzerindeki gereksiz servisleri tespit etmek için netstat ve lsof gibi araçlardan yararlanılabilir. Örnek olarak netstat kullanarak herhangi bir udp ya da tcp port üzerinde çalışan servislerinin listesini almak için aşağıdaki komut kullanılabilir.

bluetooth:

Sunucunuzda herhangi bir bluetooth adaptör yoksa (ya da bluetooth üzerinden erişim sağlamıyorsanız Bluetooth ile ilgili hcid, hidd gibi servisleri kapatabilirsiniz. Bu servisler örnek olarak CentOS tabanlı sistemlerde öntanımlı olarak kurulmaktadır.

avahi-daemon:

Aynı şekilde RHEL tabanlı sistemlerde öntanımlı olarak gelen avahi-daemon, local networkte bulunan kaynakları ya da servisleri (shared files, printer vs) discover etmek üzere kullanılan bir servis olduğundan ve sunucu sistemlerde bu tip bir ihtiyaç bulunmadığından rahatça kapatılabilir.

cups:

Cups da printing ile alakalı bir servis olduğundan ve sunucu sistemlerde (print server olmadığı sürece) priting ile ilgili işlemlere gerek olmadığından cups servisi de kapatılabilecek servislerin arasındadır.

Network Servisleri
Yukarıda sayılanlardan hariç olarak sistemdeki gereksiz diğer servisleri tespit etmek için netstat, lsof ya da (FreeBSD sistemler için) sockstat araçlarından yararlanılabilir.

netstat:

Netstat kullanarak herhangi bir udp ya da tcp port üzerinde çalışan servislerinin listesini almak için aşağıdaki komut kullanılabilir.
# netstat -luntp
Komutun çıktısı şuna benzer olacaktır:


Listede görüldüğü üzere yukarıda da adlarını saydığımız cups, avahi gibi servislerin yanı sırda, mysql, httpd gibi servisler de bir listesi verilmekte. Dolayısı ile kendi sisteminizdeki çıktıya göre kapatılması gereken servisleri bu şekilde tespit edebilmek mümkündür.

lsof:

netstat’a benzer olarak aynı işlemi lsof kullanarak da yapabilirsiniz. Ancak lsof sisteminizde öntanımlı olarak bulunmuyor olabilir. Bu durumda netstat kullanabilir ya da “lsof (LiSt Open Files) Kullanımı ve Örnek Komutlar” başlıklı yazıda anlatıldığı şekilde kurabilirsiniz.

lsof ile herhangi bir portu dinleyen servisleri listelemek için aşağıdaki komutu vermeniz yeterlidir:

# lsof -i -n |egrep ‘COMMAND|LISTEN’
Komutun çıktısı aşağıdakine benzer olacaktır:


Böylece, ilgili listeden aslında işlevi olmayan servisleri saptayarak bir sonraki ana başlıkta değinileceği gibi devre dışı bırakabilirsiniz.

Servislerin Devre Dışı Bırakılması
Linux sistemlerde servisleri yönetmek için kullanılabilecek araçlar dağıtıma göre değişiklik gösterebilir. Mesela, RHEL, CentOS ve Fedora gibi Red Hat tabanlı sistemlerde chkconfig ya da grafik arayüz sunan ntsysv aracı, Debian ve Ubuntu gibi dağıtımlarda ise update-rc.d ya da gene grafik arayüz sunan rcconf aracı kullanılabilir.

Örneğin, RHEL tabanlı sistemlerde misal olarak cups’ı devre dışı bırakmak chkconfig aracını şu şekilde kullanabilirsiniz:

# chkconfig cups off
Debian sistemlerde ise aynı işi update-rc.d komutu ile yapabilirsiniz.

# update-rc.d -f cups remove
Bu şekilde, cups startup’dan kaldırılmış olur ve sistem açılışlarında otomatik olarak başlatılmaz. Tabi halihazırda çalışmakta olduğu için ilgili servisin init scripti ile servisi durdurmayı unutmayın.

# /etc/init.d/cups stop

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir