|
|
-
Bu belge Linux sisteminizi daha güvenli hale getirebilmek için yaygın olarak
kullanılan yazılımları ve bazı yordamları açıklamaya çalışacak. Başlamadan
önce, öncelikle bazı temel kavramları tartışmak, ve bir güvenlik altyapısı
oluşturmak, bu açıdan önemli.
2.1. Neden Güvenliğe Gereksinim Duyuyoruz? -
Sürekli değişmekte olan küresel iletişim, pahalı olmayan İnternet
bağlantıları, ve hızlı adımlarla ilerleyen yazılım gelişimi
dünyasında, güvenlik gitgide daha fazla "konu" haline geliyor.
Şu anda güvenlik temel bir gereksinim, çünkü küresel bilişim doğal
bir güvensizlik içinde. Örneğin, veriniz A noktasından B noktasına
İnternet üzerinde giderken, yolu boyunca bir dizi başka noktalardan
geçebilir, ve bu şekilde diğer kullanıcılara, gönderdiğiniz verinin
yolunu kesebilmek, hatta veriyi değiştiribilmek için fırsatlar verebilir.
Hatta sisteminizdeki diğer kullanıcılar, kötü niyetle, sizin isteğiniz
dışında verinizi başka bir şekle sokabilir. "Korsan"
[4]
da denilen bazı
saldırganlar sisteminize izinsiz erişim sağlayabilir, ileri düzey
bilgileri kullanarak sizmişsiniz gibi davranabilir, sizden bilgi
çalabilir, hatta kendi kaynaklarınıza erişiminizi engelleyebillir.
Eğer "Bilgisayar Kurdu" ile "Bilgisayar Korsanı" arasındaki farkı
merak ediyorsanız, Eric Raymond tarafından hazırlanan "Nasıl
Bilgisayar Kurdu Olunur" belgesini aşağıdaki adreste bulabilirsiniz:
-
http://www.tuxedo.org/~esr/faqs/hacker-howto.html.
2.2. "Güvenli", Ne kadar Güvenli? -
Öncelikle, hiçbir bilgisayar sisteminin tamamen güvenli olamayacağını
aklınızdan çıkarmayın. Bütün yapabileceğiniz, sisteminizi bozmaya
çalışan birinin, bu işini gitgide daha zor bir hale getirmek olacaktır.
Ortalama bir ev Linux kullanıcısı için "korsan"ları uzak tutmak fazla
bir şey gerektirmez. Bununla birlikte, daha Büyük-Ölçek Linux
kullanıcıları (bankalar, telekomunikasyon şirketleri vb) için yapılması
gereken çok çalışma vardır.
-
Değerlendirilmesi gereken bir diğer etken de, güvenlik önemleriniz
arttıkça, bu güvenlik önlemlerinin kendisi sistemi kullanılmaz hale
getirebilmektedir. Bu noktada dengeleri sağlayacak kararlar vermelisiniz,
öyleki sisteminiz kullanılabilirliğini yitirmeden amaçlarınıza uygun bir
güvenlik içinde olmalı. Örneğin, sisteminize telefon yoluyla bağlanmak
isteyen herkese modem tarafından geri-arama yapılması gibi bir güvenlik
önleminiz olabilir. Bu daha güvenli olmakla birlikte evinde bulunmayan
bir kişinin sisteme giriş yapmasını zorlaştırır. Ayrıca Linux
sisteminizin ağ veya İnternet bağlantısı olmayak şekilde de
ayarlayabilirsiniz, fakat bu da sistemin yararlı kullanımını
sınırlandırmak olacaktır.
-
Eğer orta büyüklükte veya büyük bir siteyseniz, bir güvenlik politikası
oluşturmalı, ve bu politika sitenizin ne kadar güvenliğe gereksinimi
olduğunu belirtiyor olmalıdır. Bu politikaya uygun olarak alınan
önlemlerin ve yordamların uygulandığından emin olmak için bir izleme
yordamı da olmalıdır. Yaygın olarak bilinen bir güvenlik politikası
örneğini
http://www.faqs.org/rfcs/rfc2196.html adresinde bulabilirsiniz.
Bu belge yakın zamanda güncellendi, ve şirketinizin oluşturulacak
güvenlik politikası için harika bir iskelet görevi görecek bilgiler
içeriyor.
2.3. Neyi Korumaya Çalışıyorsunuz? -
Sisteminizi güvenli hale getirmeden önce, korunmanız gereken tehditin
düzeyine, hangi tehlikeleri dikkate almamak gerektiğine, ve sonuç olarak
sisteminizin saldırıya ne kadar açık olduğuna karar vermelisiniz.
Koruduğunuz şeyin ne olduğunu, neden korumakta olduğunuzu, değerinin
ne olduğunu, ve verinizin ve diğer "değerli"lerinizin sorumluğunun
kime ait olduğunu belirlemek amacıyla sisteminizi çözümlemelisiniz.
-
-
Risk, bilgisayarınıza erişmeye çalışan bir
saldırganın, bunu başarma olasılığıdır. Bir saldırgan, dosyaları
okuyabilir veya değiştirebilir, veya zarara yol açacak programlar
çalıştırabilir mi? Önemli verileri silebilir mi? Unutmayın:
Sizin hesabınıza, veya sisteminize erişim sağlamış biri, sizin
kişiliğinize bürünebilir.
Ek olarak, bir sistemde güvensiz bir hesap bulundurmak bütün ağın
güvenliğinin bozulmasıyla sonuçlanabilir. Eğer bir kullanıcıya
.rhosts dosyasını kullanarak giriş yapma, veya
tftp gibi güvensiz bir servisi çalıştırma izni
verirseniz, bir saldırganın "kapıdan içeri bir adım atması" riskini
göze almış oluyorsunuz. Saldırgan bir kez sizin veya bir başkasının
sisteminde bir kullanıcı hesabı sahibi olduktan sonra, bu hesabı
diğer bir hesaba, veya diğer bir sisteme erişim kazanmak için kullanabilir.
-
Tehdit, tipik olarak ağınıza veya bilgisayarınıza izinsiz erişim sağlamak için güdülenmiş birinden gelir. Sisteminize erişim için kimlere güveneceğinize, ve ne gibi tehditler ortaya çıkaracaklarına karar vermelisiniz.
Çeşitli saldırgan tipleri vardır, ve bunların değişik niteliklerini akıldan çıkarmamak, sistemlerinizin güvenliğini sağlamakta yararlı olur:
-
Meraklı - Bu tip saldırgan genelde ne çeşit bir sisteminiz ve veriniz olduğunu keşfetmek ile ilgilenir.
-
Kötü Niyetli - Bu tip saldırgan, sisteminizi çalışmaz hale getirmek, www sayfanızın görünüşünü bozmak, ya da yolaçtığı zararı karşılayabilmeniz için sizi zaman ve para harcamaya zorlamak amacıyla ortalarda dolaşır.
-
Büyük-Ölçek Saldırganı - Bu tip saldırgan, sisteminizi kullanarak tanınıp sevilme ve ün kazanma peşindedir. Büyük ölçekli sisteminizi kullanarak, yeteneklerinin reklamını yapmaya çalışır.
-
Rekabet - Bu tip saldırgan, sisteminizde hangi verilerin bulunduğu ile ilgilenir. Kendisine, parasal veya diğer yollarla yararlı olabilecek bir şeye sahip olduğunuzu düşünen biri olabilir.
-
Ödünç Alanlar - TBu tip saldırgan, sisteminize "dükkan açmak" ve kaynaklarını kendi amaçları için kullanmakla ilgilenir. Çoğunlukla sohbet veya IRC servisleri, porno siteleri, hatta DNS servisleri bile çalıştırabilirler.
-
Zıp Zıp Kurbağa - Bu tip saldırgan, sisteminizle ilgilenir çünkü sisteminizden diğer sistemlere atlamak istemektedir. Eğer sisteminiz diğer sistemlere iyi bir bağlantı sağlıyorsa, veya içerdeki diğer bilgisayarlara bir ağ geçidi niteliğindeyse, bu tip saldırganların sistem güvenliğinizi bozmaya çalıştıklarını görebilirsiniz.
-
Zayıflık, bilgisayarınızın diğer
ağlardan ne kadar iyi korunmakta olduğunu, ve birinin izinsiz
erişim sağlaması potansiyelini tanımlar.
Biri sisteminize girerse tehlikede olan nedir? Elbette, çevirmeli
ağ ile PPP bağlantısı sağlayan bir ev kullanıcısı ile makinelerını
İnternete bağlayan bir şirketin, veya diğer büyük bir ağın
ilgilendikleri farklı olacaktır.
Kaybolan herhangi bir veriyi yerine koymak/yeniden yaratmak için
ne kadar zaman gerekirdi? İşin başında yapılan bir yatırım için
harcanan zaman, daha sonra kaybolan veriyi yeniden yaratmak için
harcanan zamandan on kat daha az olabilir. Yedekleme stratejinizi
gözden geçirdiniz mi? Son zamanlarda verilerinizi doğruladınız mı?
2.4. Bir Güvenlik Politikası Geliştirmek -
Sisteminiz için kullanıcılarınızın kolayca anlayıp izleyebileceği basit,
ve genel bir politika yaratın. Bu politika verinizi koruduğu gibi,
kullanıcılarınızın özel hayatlarını da korumalı. Eklenmesi
düşünülebilecek bazı şeyler: Kim sisteme erişime sahip (Arkadaşım
hesabımı kullanabilir mi?), kim sistem üzerinde yazılım kurma iznine
sahip, veri kime ait, felaketten sonra toparlanma, ve sistemin uygun
kullanımı.
-
Genel olarak kabul edilmiş bir güvenlik politikası
-
'
İzin verilmemiş herşey yasaklanmıştır.
'
-
ifadesi ile başlar. Bu, herhangi bir servis için bir kullanıcının erişimi
onaylanmadığı sürece, o kullanıcı erişim onaylanana kadar o servisi
kullanmıyor olmalı anlamına gelir. Politikaların kullanıcı hesapları
üzerinde işlediğinden emin olun. Örneğin "Bu erişim hakları probleminin
nereden kaynaklandığını bulamıyorum, neyse, root olarak halledeyim" demek,
çok bariz güvenlik deliklerine olduğu kadar, henüz hiç keşfedilmemiş
olanlarına da yol açabilir.
-
rfc1244
kendi ağ güvenlik politikanızı nasıl oluşturabileceğinizi açıklayan,
-
rfc1281
ise her adımı ayrıntılı olarak anlatılmış örnek bir güvenlik
politikasını içeren
-
birer RFC (Request For Comment - Yorum İçin İstek) belgesidir.
-
Son olarak, gerçek hayatta güvenlik politikaları nasıl oluyor görmek
isterseniz, COAST politika arşivine bir göz atmak isteyebilirsiniz:
ftp://coast.cs.purdue.edu/pub/doc/policy
2.5. Sitenizi Güvenli Hale Getirmenin Yolları -
Bu belge, uğrunda çok çalıştığınız değerli şeylerinizi güvenli hale
getirebilmeniz için gereken çeşitli yolları tartışacak. Bu değerli
şeyler yerel makineniz, veriniz, kullanıcılarınız, ağınız, hatta
kendi saygınlığınız olabilir. Kullanıcılarınızın sahip olduğu veriyi
bir saldırgan silerse saygınlığınız ne olur? Ya şirketinizin, önündeki
üç aylık süredeki proje planlarını yayımlarsa? Bir ağ kurulumu
planlıyorsanız, herhangi bir makineyi ağa dahil etmeden önce dikkate
almanız gereken bir çok etken vardır.
-
Tek bir PPP hesabınız dahi olsa, ya da sadece küçük bir siteniz, bu
saldırganların sizin sisteminizle ilgilenmeyecekleri anlamına gelmez.
Tek hedefler, büyük, büyük ölçekli siteler değildir -- Bir çok
saldırgan basitçe, büyüklüğü farketmeden olabildiğince çok sitenin
açıklarından yararlanmak ister. Ek olarak, sizin sitenizdeki bir
güvenlik deliğini, bağlı olduğunuz diğer sitelere erişim kazanmak
amacıyla kullanabilirler.
-
Saldırganların elinde çok zaman vardır, sisteminizi nasıl anlaşılmaz
bir hale getirdiğinizi, ya da ne derece gözden sakladığınızı öğrenmek
için tahmin yolunu değil, basitçe tek tek bütün olasılısıkları deneme
yolunu seçerler. Bir saldırganın sisteminizle ilgileniyor oluşunun
bir takım başka nedenleri de vardır, bunları daha sonra tartışacağız.
2.5.1. Bilgisayar Güvenliği -
Belki de sistem yöneticilerinin en çok yoğunlaştığı güvenlik
alanlarından biri bilgisayar bazında güvenliktir. Bu, tipik olarak,
kendi bilgisayarınızın güvenli olduğundan emin olmanız, ve ağınızdaki
bütün herkesin de emin olduğunu ümit etmenizdir. İyi parolaların
seçilmesi, bilgisayarınızın yerel ağ servislerinin güvenli hale
getirilmesi, hesap kayıtlarının iyi korunması, ve güvenlik açıkları
olduğu bilinen yazılımın güncellenmesi, yerel güvenlik yöneticisinin
sorumlu olduğu işler arasındadır. Bunu yapmak mutlak şekilde gereklidir,
fakat ağınızdaki bilgisayar sayısı arttıkça, gerçekten yıldırıcı bir iş
haline dönüşebilir.
2.5.2. Yerel Ağ Güvenliği -
Ağ güvenliği, en az bilgisayarların güvenliği kadar gerekli olan bir
kavramdır. Aynı ağ üzerindeki yüzlerce, binlerce, hatta daha fazla
bilgisayarla, güvenliğinizi her birinin tek tek güvenli oluşu üzerine
kuramazsınız. Ağınızı sadece izin verilen kullanıcıların kullandığını
garanti altına almak, ateşduvarları oluşturmak, güçlü bir şifreleme
kullanmak, ve ağınızda "yaramaz" (yani güvensiz) makineler
bulunmadığından emin olmak, güvenlik yöneticisinin görevlerinin bir
parçasıdır.
-
Bu belgede sitenizi daha güvenli bir hale getirmek için kullanılan
teknikleri tartışacağız, ve bir saldırganın korumaya çalıştıklarınıza
erişim sağlamasını engellemek için gereken yollardan bazılarını
göstermeye çalışacağız.
2.5.3. Karmaşıklaştırma Yoluyla Güvenlik -
Tartışılması gereken güvenlik tiplerinden biri "karmaşıklaştırma
yoluyla güvenlik"tir. Bunun anlamı, örneğin, güvenlik açıkları
bulunan bir servisin standart olmayan bir porta (kapı) taşınmasıdır,
saldırganların bu şekilde servisin nerde olduğunu farketmeyerek bu
açıktan yararlanamayacağı umulur. Diğerlerinin ise servisin nerde
olduğunu bilmeleri, dolayısıyla yararlanabilmeleri gerekir. Sitenizin
küçük, veya göreli olarak daha küçük ölçekli oluşu, saldırganların
sahip olduklarınızla ilgilenmeyeceği anlamına gelmez. Önüzümüzdeki
bölümlerde tartıştıklarımız arasında neyi korumakta olduğunuz da
bulunacak.
-
Bu belge, bir takım bölümlere ayrılmıştır. Bu bölümlerde kapsamı geniş
olan güvenlik konuları yer almaktır. İlkin, Fiziksel Güvenlik,
makinenizi fiziksel bir zarar görmekten nasıl korumanız gerektiğini
kapsıyor. İkinci olarak, Yerel Güvenlik,
sisteminizin yerel kullanıcılar tarafından
karıştırılmasının nasıl engelleneceğini açıklıyor. Üçüncüsü,
Dosyalar ve Dosyasistemi Güvenliği, dosya sistemlerinizi ve dosyalar üzerindeki erişim
haklarının nasıl düzenlenmesi gerektiğini açıklıyor. Sonraki bölüm,
Parola Güvenliği ve Şifreleme, makinenizi ve ağınızı daha
iyi bir şekilde güvenli hale getirmek için şifrelemenin nasıl kullanıldığını tartışıyor.
Çekirdek Güvenliği
bölümünde ise daha güvenli bir sistem için farkında olmanız gereken
çekirdek seçenekleri anlatılıyor. Çekirdek Güvenliği, Linux sisteminizi ağ saldırılarına karşı nasıl güvenli hale
getirebileceğiniz hakkında bilgi içeriyor. Güvenlik Hazırlığı (Bağlanmadan Önce), makine(leri)nizi, ağa bağlı hale getirmeden önce
nasıl hazırlamanız gerektiğini anlatıyor. Sonraki bölüm,
Güvenlik Bozukluğu Sırasında ve Sonrasında Neler Yapılabilir, sistemizi bozmaya çalışma
eylemi o an devam etmekte ise, veya böyle bir eylemin yakın zamanda
gerçekleştiğini öğrendiğinizde neler yapabileceğiniz konusunu tartışıyor.
Güvenlikle İlgili Kaynaklar,
bölümünde bazı güvenlik ile ilgili bilgilere erişim sağlanabilecek
başlıca kaynaklarının neler olduğu sıralanıyor. Sıkça Sorulan Sorular Sıkça Sorulan Sorular, sık sık sorulan bazı
soruların cevaplarını içeriyor, ve son olarak Sonuç bölümü yer alıyor.
-
Bu belgeyi okurken farkında olunması gereken iki ana konu:
-
-
Sisteminizden haberdar olun. /var/log/messages
gibi sistem kayıtlarınızı düzenli olarak gözden geçirin ve gözünüz
daima sisteminizin üzerinde olsun.
-
Sisteminizi güncel tutun, yazılımlarınızın en son sürümlerini
kurun, ve kullandığınız yazılımla ilgili güvenlik uyarılarını
takip ederek gereken güncellemeleri zamanında yapın. Sadece bunu
yapmak bile sisteminizi kayda değer şekilde daha güvenli hale
getirecektir.
|