Neler yeni

Soru sor

Topluluğumuzdan Sorular Sorun ve Cevaplar Alın

Cevap

Soruları Cevaplayın ve Konunuzda Uzman Olun

İletişim Personeli

Uzmanlarımız Sorularınızı Cevaplamaya Hazır

  • Ülkemizde Çıkan Yangınlar Dan Dolayı Yapan Hainleri Kınıyoruz Dileğimiz Şudur ki Sizde Canlı Canlı Yanmanız Dileğiyle #GeçmişOlsunTürkiyem
  • Vatan Diye Bir Hastalığa Tutulduk. Allah Şifa Mifa Vermesin. O Şimdi Asker UNİNVİTED
  • Türk Siber Konseyi Siber Savaşcı Katılım Formu (Grup Alımı İçin Tıkla)
  • Vatan Ugruna Can Alip Can Verenlerin Serefine / In h those who gave their lives to the Turkey

Linux Sunucu Güvenliği Nasıl Sağlanır?

Reklam Ver Reklam Ver

Team Star

Mareşal
Yönetici
Mareşal
Katılım
1 Ara 2020
Mesajlar
262
Tepkime puanı
103
Puanları
43

Reputation:

Bu yazımda linux sunucu güvenliği basit anlamda nasıl sağlanır buna değineceğim. Buradaki yapılacaklar ne kadar basit gözüksede linux sunucular için hayati önem taşımaktadır. Bir sunucu güvenliğindeki aksaklık diğer sunuculara atlama aşamasında kullanılabilir. Bu yüzden sunucu sistemlerindeki sistem güvenliği çok önemlidir.

1- SSH Bağlantısı İçin IP Bazlı Kısıtlama

Linux sunucu yönetiminde ssh hayati önem taşımaktadır. Burada firewall tarafında erişim engellemesi illaki olacaktır fakat sunucu üzerinde de bu kısıtlamayı yapmak güvenliğimizi bir kat artıracaktır.

vi /etc/hosts.allow
Bu dosya içerisini açtıktan sonra ssh izni için bir kısıtlama yapabiliriz. IP bloğu olarak izin verebiliriz, yada tek IP girebiliriz. Geri kalan tüm IP adreslerini deny ile engelleyebiliriz. Aşağıdaki ayarlamaları yaptıktan sonra ssh servisi yeniden başlatıldığında gerekli kısıtlama aktif hale gelecektir.

sshd : 192.168.1.0/24 : ALLOW
sshd : 127.0.0.1 : ALLOW
sshd : ALL : DENY
2- SSH Portu Değiştirme

vi /etc/ssh/sshd_config
systemctl restart sshd
Yukarıdaki sshd_config dosyasını açtıktan sonra # olan port numarasını değiştirebiliriz. Bu aşamadan sonra bağlantı sağlarken aşağıdaki komutu kullanmalısınız. Eğer firewall açıksa kural olarak port bilgisini eklemeniz gerekmektedir. Ör: Ssh portunu 5555 yaptım diyelim

ssh [email protected] -p5555
3- Firewall Port Ekleme

Bu aşamada bazı sistemlerde direk selinux ve firewall kapalı bulunmaktadır fakat bu güvenlik açısından risk içermektedir. Yukarıdaki örnekten yola çıkarsak port değişikliği yaptığımız için firewall aktif ise izin vermemiz gerekmektedir.

firewall-cmd --zone=public --permanent --add-port=5555/tcp
firewall-cmd --reload
Örnek olarak ssh portnunu firewall’a ekledim. Burada portu kapatmak istediğimizde ise şu komutu kullanabiliriz.

firewall-cmd --zone=public --permanent --remove-port=5555/tcp
firewall-cmd --reload
4- Root Girişinin Engellenmesi

Bir çok sisteme sızma işleminde root yetkilisi ile girişim çabaları olmaktadır. Çünkü root yetkilisi standart olduğu için saldırgan sadece parola için çaba harcayacaktır. Burada root yetkilisinin girişini kısıtlayarak önlem alabiliriz.

İlk önce ssh bağlantılarını kullanmak için bir kullanıcı oluşturalım ve root yetkisi atayalım.

adduser demo
passwd demo
gpasswd -a demo wheel
Ssh dosyasında gerekli kısıtlamayı yapalım.

vi /etc/ssh/sshd_config# Dosya içerisindeki satırı bulup no yapıyoruz
PermitRootLogin no
Ssh servisi restart ettikten sonra root yetkilisinin ssh erişimi engellenmiş olacaktır. Siz açtığınız kullanıcı ile giriş yaptıktan sonra gerekirse root yetkisine geçerek işlemlerinizi yapabilirsiniz.

5- Kullanıcı Parolalarının Belirli Aralıklarla Değiştirilmesi

Kullanıcı şifreleri /etc/shadow dosyasında şifrelenmiş şekilde saklanır. Kullanıcıların şifrelerinin ne zaman değiştiği, ne zaman değiştirileceği, parola kullanım süresi gibi bilgileri chage komutu ile görebiliriz.

chage -l test
Bu komut ile kullanıcı şifresi hakkında bilgiler elde edebiliriz. Son kullanımı, ne zaman değişmesi gerektiği, ne zaman uyarı verileceği gibi.

chage -M 60
Yukarıdaki komutla 60 gün sonra parola süresi dolmuş olacaktır. Gerekirse chage komutu ile hesabı belli bir gün sonra pasife alabilir, şifreyi değiştirmeye zorlayabilir, şifre dolma süresinden 7 gün önce uyarı verdirebilirsiniz. Bu işlem bazen kullanıcı isteyip bir kaç işlem yapıp çıkan kişiler için kullanılması önemlidir.

6- Ssh Banner Ayarlama

Ssh bağlantısı yapan kişiye uyarı mesajı çıkartabilirsiniz.

vi /etc/issue.net
İçerisine gözükmesini istediğiniz bilgileri yazdıktan sonra kaydedip çıkalım.

vi /etc/ssh/sshd_config# Banner path ekleyelim
Banner /etc/issue.netsystemctl restart sshd
Bu aşamadan sonra ssh bağlantılarında bilgilendirme ekrana çıkacaktır.

7- ICMP Paketlerini Engelleme

Sistemin ayakta olup olmadığını kontrol etmek için çoğunlukla kullandığımız sistem ping atmak. Bunu engelleyebiliriz.

vi /etc/sysctl.conf# Dosyaya ekleyelim
net.ipv4.icmp_echo_ignore_all = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
Daha sonra

sysctl -p
Komutu ile kuralı aktif hale getirebiliriz.

8- History Detaylandırma

History linux sistemlerde hangi komutların kullanıldığını tutmaktadır. Fakat hangi komut ne zaman kullanılmış bu bilgi bulunmamaktadır. Bunu ekleyebiliriz.

vi /etc/bashrc# Dosyaya ekleyelim
# Size kaç komut satırını tutacağını göstermektedirHISTSIZE=2000
export HISTTIMEFORMAT="%h/%d - %H:%M:%S "# Kaydedip çıktıktan sonra bashrc yükleyelim
source ~/.bashrc
Bu aşamadan sonra history komutunda artık hangi tarih ve saatte girildiği bilgisi çıkmaktadır. İstenirse bunlar log kaydı olarak tutulabilir.

vi /etc/bashrcexport PROMPT_COMMAND='RETRN_VAL=$?;logger -p local1.debug "$(whoami) [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'# Kaydedip çıktıktan sonra bashrc yükleyelim
source ~/.bashrc
Sırada rsyslog ayarlarını yapalım.

vi /etc/rsyslog.conf# Ekleyelim
local1.* /var/log/history.log# Yeniden başlatalım
systemctl restart rsyslog
Bu aşamadan sonra artık komutlar loglanacaktır.

Basit düzeyde linux güvenliğini sağlamış olduk. Bu aşamalar sisteminizi %100 güvenilir kılmaz, sadece işletim sisteminin güvenlik için sunduğu bir kaç aşamadan bahsettim. Güçlü paroladan bahsetmedim tabiki de olmazsa olmazımız :)
 
Üst