Linux

Linux Sanal Sunucu Güvenliği

Günümüz teknoloji ve internet dünyasında, linux sanal sunucuların kullanım oranı her geçen gün artıyor. Daha çok performans için tercih edilen linux sanal sunucu çeşitleri, aynı zamanda güvenli olarak da tercih ediliyor. Linux dağıtımlarından herhangi birini kullansak da, performansın yanında, güvenlik zafiyetlerine dikkat etmemiz ve güvenlik önlemlerini almamız gerekiyor. Aşağıdaki işlemlerin hepsini, tüm linux dağıtımlarında uygulamanız sanal sunucunuzun güvenliği için gereksinim olacaktır.

Linux Sanal Sunucu Nedir?

Herhangi bir sanallaştırma yazılımı veya sanallaştırma platformu üzerinde bulunan, vps veya vds türü bir misafir işletim sistemine, linux dağıtımlarından herhangi birini oluşturmamıza linux sanal sunucu diyoruz.

Linux Sanal Sunucu Güvenlik Önlemleri

Linux dağıtımları genel olarak aynı yapıda bulunurlar. Birbirlerinden çok farklı özellikleri olsa da, dosya sistemleri ve dosya sistemleri hiyerarşileri genel olarak aynıdır. Güvenlik işlemlerini her linux dağıtımında uygulayabilirsiniz. Kullandığınız linux vds veya linux vps sunucularda aşağıdaki adımları uygulayarak güvenlik tedbirlerinizi bir nebze de olsa arttırabilirsiniz.

1-Güçlü Şifreler Kullanın

Bir sunucuyu, işletim sistemini veya bir hesabı güvenli hale getirmenin ilk kuralı güçlü ve karmaşık şifreler kullanmaktır. Kötü niyetli kişiler tahmin edilemeyen şifreleri Brute Force dediğimiz bir yöntemle sürekli denerler. Bu sebeple karmaşık ve tahmin edilemeyen bir şifreye sahip olmak, sunucularımıza Brutce force erişmelerini imkansız hale getirir. Şifre belirlerken aşağıdaki şifre belirleme kurallarını uygulamaya çalışın;

  • Şifreleriniz en az 8 karakter olmalı
  • Şifreleriniz de sembolik karakterler kullanın
  • Şifreleriniz de büyük ve küçük harf kullanın
  • Şifreleriniz de rakam kullanıp, rakamları harflerin arasına koyun

Şifre belirlemek için https://passwordsgenerator.net/ adlı siteyi de kullanabilirsiniz.

Linux sanal sunucunuz üzerinde bir kullanın şifresini değiştirmek için aşağıdaki komutu kullanın;

sudo passwd kullanıcı_ismi

2-SSH Portunu Değiştirin

SSH portu varsayılan olarak 22 şeklindedir. Dolayısı ile hackerların ilk brute force denemesi bu porta olacaktır. Hem riski azaltmak hem de gereksiz brute force denemelerinden kurtulmak için 22 portunu kullanılmayan bir port ile değiştirin.

Ubuntu, Fedora, Arch Linux veya diğer dağıtımlarda da aynı yolu takip ederek SSH portunuzu değiştirebilirsiniz.

3-root kullanıcı için ssh bağlanmayı devre dışı bırakın

Freebsd ve Ubuntu işletim sistemlerinde varsayılan olarak root kullanıcı ile SSH’a bağlanamıyoruz. SSH belirlediğimiz kullanıcı ile bağlandıktan sonra root kullanıcısına geçiş yapabiliyoruz. Bu oldukça güvenli bir yöntem. Centos kullanıyorsanız da aynı işlemi yapmanız da bir güvenlik tedbiri olacaktır. İşlemi yapmak için aşağıdaki adımları takip edin;

SSH konfigürasyon dosyamızı açalım;

nano /etc/ssh/sshd_config

PermitRootLogin yes ibaresini “no” diyerek değiştirelim ve dosyayı ctrl+x kaydedip çıkalım.

Ardından SSH servisini yeniden başlatalım.

service ssh restart

Tabi bu işlemi yapmadan önce, “adduser” ile SSH yetkisi olan bir kullanıcı eklemeyi unutmayın.

4-SSH portunu belirli ip veya iplere izin verin

Sabit (statik) bir IP ve IP adresleri kullanıyorsanız SSH hizmetini sadece o IP adreslerine açın. iptables ile bu işlemi aşağıdaki şekilde yapabilirsiniz;

iptables –A INPUT –p tcp –s x.x.x.x --dport 22 –m state --state NEW,ESTABLISHED –j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j REJECT

x.x.x.x yazan yere statik ip adresinizi yazın ve iptables servisini kaydedip, yeniden başlatın;

service iptables save
service iptables start

Bu işlem ile beraber, SSH servisine sadece sizin belirlediğiniz IP adresi veya IP adreslerinden üzerinden ulaşılabilecektir.

5-İşletim sisteminizi güncel tutun

Linux dağıtımına ait güncellemeleri sürekli kontrol edip, güncellemeleri yapın. Hem kernelinizi hem de servislerinizi sık sık güncelleyin. Özellikle wordpress, joomla gibi betikler kullanıyorsanız, güncelleme işlemlerini sürekli kontrol edip yapın. WordPress için wp-cli de kullanabilirsiniz.

6-SSH Keyfile Kullanın

Linux sunucunuza bağlanırken, root şifresi yerine oluşturduğunuz KEY ile bağlanın ve root kullanıcısını şifreli kullanıma kapatın.

7-Gereksiz paket kurmayın

Linux dağıtımınızı minimal ve base haliyle kurun. Yazılımları veya servisleri mümkünse kendiniz kurun. Kullanmadığınız bir yazılımı sisteme kurmayın veya işleminiz bittiğinde kaldırın. Örneğin tüm dns işlemlerinizi Cloudflare üzerinden yapıyorsanız, dns servisini kaldırın veya mail hizmetlerinizi dışarıdan alıyorsanız smtp servislerini kaldırın.

8-Servislerinizin güvenliği yapılandırın

Linux sanal sunucu, bir çok nedenden ötürü kullanılıyor olabilir. Web sunucusu, mail sunucusu, vpn sunucu vb. taleple kullanıyor olabilirsiniz. PHP kullandığınız bir web sunucusu varsa, php yapılandırma ayarlarını ve web sunucunuzun güvenlik ve optimize ayarlarını yapılandırın. Aynı şekilde mail sunucusu olarak kullanıyorsanız, exim, postfix, zimbra gibi sunucularınızı da tavsiye edilen şekilde güvenliğini optimize edin. Sunucuya ihtiyacınız yoksa Linux Hosting tercih edebilirsiniz.

9-Loglarınızı inceleyin

Linux sanal sunucuların en güzel yanı, her bir olayı (event) log olarak yazması. Sunucunuza kim bağlanmaya çalışıyor, sunucunuzda neler oluyor bilmek için sistem loglarınızı sık sık inceleyin. Linux sistem logları yazımızı inceleyin.

10-Paranoyak olun

Paranoyak olmanız takip edilmediğiniz anlamına gelmez. Sistem yöneticiliği ciddi bir iştir ve performansın yanında tamamen güvenlik gerektirir. Açıkları veya exploitleri takip edin.