Linux Sunucu Güvenliği Sağlama ~ # Server Protection #

28 Ocak 2016
197
0
NYC
COPS%20NYPD%20taille%20forum.png6..png

Bu yazımda sizlere sunucu güvenliğinden biraz bahsedeceğim.Çoğu internet uzmanının,sitelerinin güvenliği hakkında endişeleri var.Bu yazıyı okuduktan sonra siz de sunucunuza güvenlik yaptırabileceksiniz.Öyleyse başlayalım,Bismillahirrahmanirrahim.

Adım 1) Güvenilir Bir Hosting Firması Seçin


Güvenliğin temel şartlarından birisi geniş güvenlikli bir hosting firması seçmektir.Kötü amaçlı kişiler genelde “BlueHost,HostGator” gibi firmaların güvenlik engellerini aşamamaktadır.Tabii alanında uzman kişiler bu güvenlik duvarlarını aşabilmektedir.(Yine de yazımızda bu durumu engellemeye çalışacağız.) Bu sebeplerden dolayı sitenizi barındırmak için “HostGator” veya “BlueHost” firmalarını tercih edin.


Adım 2) Bilgisayar Güvenliğinize Dikkat Edin


Kötü amaçlı kişilerin çoğu,sitelerin güvenlik duvarını aşamayınca sosyal mühendislik dediğimiz “kandırma,yalan söyleyerek amacına ulaşma sanatı”na başvurur.Bu tür yollardan korunmak için yerel bilgisayarınıza güvenilir bir antivirüs seçin.Bknz:eset.com.


Adım 3) Asıl Güvenlik – Sunucu Güvenliği


Asıl sunucu koruma bölümü buradan başlıyor.Kötü amaçlı kişilere karşı çeşitli güvenlik duvarlarından bahsedeceğiz.

Öncelikle sitemizde kurulu olan veya kuracağımız yazılımı (script) araştıracağız.”1337day,Exploit-DB,Security Focus” gibi exploit sitelerinden kullanmakta olduğumuz veya kullanacağımız yazılımın (script) güvenlik açıklarını arattırıyoruz,tabii bu işlem için Google amca da kullanılabilir.Eğer yazılımda (script) herhangi bir güvenlik açığı tespit edilmişse Google amcadan güvenlik açığının (vulnerability) kapatılmasını (İngilizce olarak fix edilmesini) araştırıyoruz ve açığı kapatıyoruz.

“Diyelim yazılımda açık yok,kendimiz kodladık,o zaman ne yapacağız?” die bir soru duyargibiyim.Hemen ona da değinelim.Öncelikle kötü amaçlı kişilerin ilk yapacağı iş sitenizde yükleme (upload) bölmelerini aramak olacaktır.Bunun sebebi sitenize “shell” adı verilen zararlı dosyaları yüklemektir.Shell’e biraz değinecek olursak,bir sunucunun tamamının ele geçirilmesini,h*ck edilmesini sağlar.Peki shellerden nasıl korunuruz? Gelin birlikte öğrenelim.





Öncelikle sunucunuza shell yüklendi diyelim.Korunmak için bazı aşamaları devredışı bırakacağız ve shelleri engelleyeceğiz.Peki nasıl olacak? Sunucunuzda root olarak bağlanıp: “/usr/lib/” yolunu takip edin.Orada bir php.ini dosyası olacak.İlk aşama o dosyayı düzenlemektir,haydi düzenlelim.(Dosyayı bulamayanlar “locate php.ini” komutuyla bulabilirler.) Dosyamızı düzenlemek için komut satırına “pico /usr/lib/php.ini” komutunu verelim.Daha sonra dosyadan “disable_functions” bölümünü bulup aşağıdaki kodları ekliyoruz tırnak işaretleri olmadan:





“foreach,glob,hopenbasedir,f_open,

system,dl,passthru,cat,exec,popen,proc_close,proc_get_status,

proc_nice,proc_open,escapeshellcmd,escapeshellarg,show_source,

posix_mkfifo,mysql_list_dbs,get_current_user,getmyuid,pconnect,

link,symlink,pcntl_exec,ini_alter,parse_ini_file,leak,

apache_child_terminate,posix_kill,posix_setpgid,posix_setsid,

posix_setuid,proc_terminate,syslog,fpassthru,stream_select,

socket_select,socket_create,socket_create_listen,socket_create_pair,

socket_listen,socket_accept,socket_bind,socket_strerror,pcntl_fork,

pcntl_signal,pcntl_waitpid,pcntl_wexitstatus,pcntl_wifexited,

pcntl_wifsignaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wtermsig,

openlog,apache_get_modules,apache_get_version,apache_getenv,apache_note,

apache_setenv,virtual,user_dir”





Sonrasında kaydedip “service htttpd restart” komutunu verelim.İşlem sonrası çoğu shell sunucunuzda çalışmayacaktır.Bir sonraki adım ise “Perl kütüphanesine erişimi engellemek”olacak.Yine sunucumuza root olarak bağlanıp yine yukarıdaki gibi “php.ini”yidüzenlüyoruz.CTRL+X veya CTRL+F ile #AddHandler komutunu arattıralım ve bununla değiştirelim:”#AddHandler cgi-script .cgi .pl .perl .ppl .plx”.

Perl kütüphanesine erişimi kesin engellemek içinse yine sunucumuza root olarak bağlanıp:”chmod 710 /usr/bin/perl” komutunu verelim.Tekrar farklı bir güvenlik içince “chmod 600 /etc/shadow” komutunu vermekte yarar var.İşlemlerin sonunda “service httpd restart” komutunu tekrar vererek sunucumuzu resetleyeylim.





Şimdi diğer bir güvenlik aşamasına geçelim,bulunduğumuz dizinde dosya yazılmasını engelleyeceğiz.Peki nasıl mı? Tabii ki de cPanel veya Plesk tabanlı panellerimizden dosya yöneticisine girip index.php ve “public_html” veya “www” ya da “httpdoc” klasörlerimizin izinlerini değiştirerek.Ana dosyamız olan index.php’ye tik işareti koyarak “İzinleri Değiştir” butonuna basalım ve “Writing” izinlerinde bulunan tik (tcik) işaretlerini kaldıralım.Böylece kötü amaçlı kişiler sitemizin girişinde karşımıza çıkan index dosyamızın kodlarını değiştiremeyecek.Aynı işlemi yapılandırma ayarlarını barındıran konfigürasyon.php (config.php) dosyamızda da yapabiliriz ama bu sefer “Writing” değil “Reading” izinlerindeki tik (tick) işaretini kaldıracağız.Eğer işlem sonrasında siteniz hata verirse,”Reading” izinlerinden sadece bir tanesinin tick işaretini kaldırın ve hata kalkana kadar üçlü grubun (Group vs.) her birine tik (rick) işareti koymayı deneyin.





Yine bir sonraki aşamaya geçelim.Yapılandırma ayarlarının da bulunduğu,bu yüzden adını konfigürasyon olarak alan İngilizce “config.php” dosyamızı şifrelemeye geldi sıra.Peki nasıl yapacağız? Bu işlem bir miktar ücret gerektiriyor ne yazık ki.Yalnız güvende olmak istiyorsanız belirli bir miktarı gözden çıkarmalısınız. “Tamam, benim param var,nasıl konfigürasyon dosyamı şifreletebilirim?” derseniz “Ioncube” hizmetini kullanabilirsiniz.Dediğim gibi ücretli ama gayet güvenilir bir firma.”ioncube.com” adresinden ulaşabilirsiniz.Zaten Google’a “Ioncube” yazdığımızda “Free Trial” yazısını görerek ücretsiz bir deneme sürümünün olduğunuz anlıyoruz.

Yazımız sona ermiştir arkadaşlar.Bu yazımızda Linux sunucumuza güvenlik sağlamayı anlattım.Umarım anlamışsınızdır.Saygılarımla,
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.