Ağ Düzenlemeleri
Buraya dek sitemin genel olarak girişi, şifrleri, dosyaların yönetilmesi ve kayıtların tuutlmasını gördük. Ancak sisteme ağ üzerinden erişmek için gerek duyulan düzenlemleri yapmamız gerekli. Kullanmayı düşündüğünüz uygulamaları ve yapılanadırılmasına dikkat etmeniz gereklidir. Özellikle de sistem uzakta ise ve ağ üzerinden erişecekseniz. ilk olarak sisteme erişim ile başlayalım.
SSH
Sisteme bağlanırken TELNET kullanmayınız. TELNET sisteme bilgileri şifrelenmeden ve düz metin dosyası olarak aktarmaktadır. Bu nedenle de SSH daha güvenli bir seçenek olmaktadır. SSH için gerekli olan düzenlemleri /etc/ssh/ssh_config veya /etc/ssh/sshd_config dosyasında yer almaktadır.
İlk olarak giriş yapılma süresini düzenleyerek başlayalım. Süreyi ne çık kısa ne de çok uzun tutmalısınız. Makul bir süre belirlemek uygun olacaktır; örneğin 20 veya 30 sn gibi. Bunu da
LoginGraceTime 30s
yazarak yapabilirsiniz. Diğer seçenek ise root olarak sişsteme girişleri kapatamak olmalıdır. Bu da,
PermitRootLogin No
ile düzenleyin. Bu durumda su yaparak root girişlerinin yapılması gerekecektir. kullanıcıların kendi ev dizinleri dışına girişlerini engelleyiniz.
StrcitModes Yes
Sonraki aşamada ise SSH kullanabilecek kullanıcıları tanımlayınız.
AllowUsers Kullanıcı_adı1 Kullanıcı_adı2
Bir başka işlem ise giriş için IP adreslerini veya aralıklarını tanımlamak olmalıdır.
AllowHosts IP_adresi
SSH ile sunucuyu yönetmenize de olanak vardır. Bu amaçla SSH size güvenli dosya transferi ve dosya kopyalama işlemleri yapmanıza olanak sağlayan SCP ve SFTP protokollerini de sunar. Bu şekilde yukarıda tanımlamış olduğunuz IP adreslerinden izlenmeden dosya kopyalayabilir ve aktarabilirsiniz.
PAM ile Kaynak Kullanımını Sınırlandırmak.
Kaynakların kullanılmasını sınırlandırmak sistem genelinde kaynaklarınızı grup yada kullanıcı temelinde düzenleyebilirsiniz. Bunun için PAM kullanabilirsiniz. Ayar dosyaları ise /etc/secutiry dizininde yer alır. PAM bu dizinde yer alan limits.conf dosyasında tanımlanmış olan düzenlemleri esas alır. Bu dosyada yer alan bileşenler şu sıra ile tanımlanır.
Domain Type Item Value
Aşağıda buna göre tanımlanmış bir dosyanın içeriği yer görülüyor.
* soft nproc 100
* hard nproc 150
Bazı durumlarda kullanıcılar sistem kaynaklarının kısıtlanması durumunda birden fazla giriş yaparak fazla kaynak kullnmaya çalışabilirler. kullnıcı girişlerini sınırlayabilirsiniz. Bu sınırlama grup bazında olabileceği gibi kullanıcı adına bağlı olarak da yapılabilir.
* hard maxlogins 4
@users hard fsize 50000
@users ile kullanıcılar grubu tanımlanmıştır.* ise tüm kullanıcıları simgelemektedir. Hard ve soft ise önemli iki bileşen. Ayrımı ise şudur: Hard seçeneğinde tanımlanmış süreçten fazlasına izin verilmez. Süreç sayısı tanımlı sınırı aştığında otomatik olarak sonlandırılır. Soft ise aşılmasına izin verilir ancak kullanıcı uyarılır ve süreçleri sonlandırılmaz.
Diğer seçeneğimiz de kullanıcı hesaplarının sınırlandırılmasıdır. Bu sınırlandırma kullanıcı hesaplarının tamamen yetkilerden arındırılması da olabilir. bu durumda söz konusu hesabın yetkileri olmaz. Örneğin herhangi bir biçimde giriş yapılması gerekmeyen hesapları bu şekilde tanınlayabilirsiniz.
PAM çok geniş seçenekler sunmaktadır. Burada bu seçeneklerin ayrıntılı olarak ele alınması ne yazık ki söz konusu değil. Fakat bir noktanın üzerinde durmak istiyorum: su izinleri.
Tanımlı hesaplardan hangilerinin su komutunu kullanabileceğini tanımlayabilirsiniz. /etc/pam.d/su dosyasında su için gerekli düzenlemler yer alır. Bu dosyada aşağıdaki gibi bir düzenleme yaparak
auth sufficient /lib/security/pam_rootok.so debug
auth required /lib/security/pam_grupadı.so group:grup_adı
Burada hangi hesapların ve grupların su yetkisi olduğu tanımlanmış olmaktadır.
Son Cümleler
Buraya kadar geldiğinize göre sisteminizin gerekli ayarlarını yapmış oldunuz. Burada eksik olan veritabanı,web ve diğer sunucuların güvenli hale getirilmesi ise ayrı bir yazı konusu olduğu için şimdilik ele almıyorum. Sisteminizde güvenliği sağlamak sadece burada ele aldığımız noktaları uygulamak ile sınırlı değildir. Sisteminizin güvenliğinin sağlanması için sürekli olarak sisteminizin taranması ve gerekli uygulamaların yürütülmesi gereklidir. Sistem kayıtlarının incelenmesi ve dikkat çeken eylemlerin de incelnemsi gereklidir.
Kullandığıunız yazılımların hataları ve güvenlik açıkları her zaman için söz konusu olabilir. Bunları düzenli olarak izlemeniz ve yamaları kurmanız gereklidir. Yamaların kurulması ve izlenmesi için bir sistemetik oluşturun.
Kulandığınız siztemde yer alan hizmetlerin ve sunucuların bir listesini yapın ve bunlardan sadece gerek duyulanları çalıştırın. Temel politikanız önce vur, sonra sor biçiminde olmalıdır: Sistemin tüm servislerini standart olarak kapatın veya durudurun. Gerek duyulanları sonradan aktif hale getirin. Firewall düzenleyin ve kullanın.
İlerlyen yazılarda bazı sunuucların güvenliğinin sağlanması konusuna eğileceğiz.
Görüşmek üzere...
Buraya dek sitemin genel olarak girişi, şifrleri, dosyaların yönetilmesi ve kayıtların tuutlmasını gördük. Ancak sisteme ağ üzerinden erişmek için gerek duyulan düzenlemleri yapmamız gerekli. Kullanmayı düşündüğünüz uygulamaları ve yapılanadırılmasına dikkat etmeniz gereklidir. Özellikle de sistem uzakta ise ve ağ üzerinden erişecekseniz. ilk olarak sisteme erişim ile başlayalım.
SSH
Sisteme bağlanırken TELNET kullanmayınız. TELNET sisteme bilgileri şifrelenmeden ve düz metin dosyası olarak aktarmaktadır. Bu nedenle de SSH daha güvenli bir seçenek olmaktadır. SSH için gerekli olan düzenlemleri /etc/ssh/ssh_config veya /etc/ssh/sshd_config dosyasında yer almaktadır.
İlk olarak giriş yapılma süresini düzenleyerek başlayalım. Süreyi ne çık kısa ne de çok uzun tutmalısınız. Makul bir süre belirlemek uygun olacaktır; örneğin 20 veya 30 sn gibi. Bunu da
LoginGraceTime 30s
yazarak yapabilirsiniz. Diğer seçenek ise root olarak sişsteme girişleri kapatamak olmalıdır. Bu da,
PermitRootLogin No
ile düzenleyin. Bu durumda su yaparak root girişlerinin yapılması gerekecektir. kullanıcıların kendi ev dizinleri dışına girişlerini engelleyiniz.
StrcitModes Yes
Sonraki aşamada ise SSH kullanabilecek kullanıcıları tanımlayınız.
AllowUsers Kullanıcı_adı1 Kullanıcı_adı2
Bir başka işlem ise giriş için IP adreslerini veya aralıklarını tanımlamak olmalıdır.
AllowHosts IP_adresi
SSH ile sunucuyu yönetmenize de olanak vardır. Bu amaçla SSH size güvenli dosya transferi ve dosya kopyalama işlemleri yapmanıza olanak sağlayan SCP ve SFTP protokollerini de sunar. Bu şekilde yukarıda tanımlamış olduğunuz IP adreslerinden izlenmeden dosya kopyalayabilir ve aktarabilirsiniz.
PAM ile Kaynak Kullanımını Sınırlandırmak.
Kaynakların kullanılmasını sınırlandırmak sistem genelinde kaynaklarınızı grup yada kullanıcı temelinde düzenleyebilirsiniz. Bunun için PAM kullanabilirsiniz. Ayar dosyaları ise /etc/secutiry dizininde yer alır. PAM bu dizinde yer alan limits.conf dosyasında tanımlanmış olan düzenlemleri esas alır. Bu dosyada yer alan bileşenler şu sıra ile tanımlanır.
Domain Type Item Value
Aşağıda buna göre tanımlanmış bir dosyanın içeriği yer görülüyor.
* soft nproc 100
* hard nproc 150
Bazı durumlarda kullanıcılar sistem kaynaklarının kısıtlanması durumunda birden fazla giriş yaparak fazla kaynak kullnmaya çalışabilirler. kullnıcı girişlerini sınırlayabilirsiniz. Bu sınırlama grup bazında olabileceği gibi kullanıcı adına bağlı olarak da yapılabilir.
* hard maxlogins 4
@users hard fsize 50000
@users ile kullanıcılar grubu tanımlanmıştır.* ise tüm kullanıcıları simgelemektedir. Hard ve soft ise önemli iki bileşen. Ayrımı ise şudur: Hard seçeneğinde tanımlanmış süreçten fazlasına izin verilmez. Süreç sayısı tanımlı sınırı aştığında otomatik olarak sonlandırılır. Soft ise aşılmasına izin verilir ancak kullanıcı uyarılır ve süreçleri sonlandırılmaz.
Diğer seçeneğimiz de kullanıcı hesaplarının sınırlandırılmasıdır. Bu sınırlandırma kullanıcı hesaplarının tamamen yetkilerden arındırılması da olabilir. bu durumda söz konusu hesabın yetkileri olmaz. Örneğin herhangi bir biçimde giriş yapılması gerekmeyen hesapları bu şekilde tanınlayabilirsiniz.
PAM çok geniş seçenekler sunmaktadır. Burada bu seçeneklerin ayrıntılı olarak ele alınması ne yazık ki söz konusu değil. Fakat bir noktanın üzerinde durmak istiyorum: su izinleri.
Tanımlı hesaplardan hangilerinin su komutunu kullanabileceğini tanımlayabilirsiniz. /etc/pam.d/su dosyasında su için gerekli düzenlemler yer alır. Bu dosyada aşağıdaki gibi bir düzenleme yaparak
auth sufficient /lib/security/pam_rootok.so debug
auth required /lib/security/pam_grupadı.so group:grup_adı
Burada hangi hesapların ve grupların su yetkisi olduğu tanımlanmış olmaktadır.
Son Cümleler
Buraya kadar geldiğinize göre sisteminizin gerekli ayarlarını yapmış oldunuz. Burada eksik olan veritabanı,web ve diğer sunucuların güvenli hale getirilmesi ise ayrı bir yazı konusu olduğu için şimdilik ele almıyorum. Sisteminizde güvenliği sağlamak sadece burada ele aldığımız noktaları uygulamak ile sınırlı değildir. Sisteminizin güvenliğinin sağlanması için sürekli olarak sisteminizin taranması ve gerekli uygulamaların yürütülmesi gereklidir. Sistem kayıtlarının incelenmesi ve dikkat çeken eylemlerin de incelnemsi gereklidir.
Kullandığıunız yazılımların hataları ve güvenlik açıkları her zaman için söz konusu olabilir. Bunları düzenli olarak izlemeniz ve yamaları kurmanız gereklidir. Yamaların kurulması ve izlenmesi için bir sistemetik oluşturun.
Kulandığınız siztemde yer alan hizmetlerin ve sunucuların bir listesini yapın ve bunlardan sadece gerek duyulanları çalıştırın. Temel politikanız önce vur, sonra sor biçiminde olmalıdır: Sistemin tüm servislerini standart olarak kapatın veya durudurun. Gerek duyulanları sonradan aktif hale getirin. Firewall düzenleyin ve kullanın.
İlerlyen yazılarda bazı sunuucların güvenliğinin sağlanması konusuna eğileceğiz.
Görüşmek üzere...