VPS Sunucu Güvenliği İçin Yapılması Gerekenler

İşletim sisteminin güvenliğini sağlamak, web siteniz, web uygulamalarınız ve çevrimiçi işleriniz kadar önemlidir. Linux VPS sunucularının avantajları vardır. Aslında, Linux VPS, Linux’un güvenlik modeli (LSM) nedeniyle, Windows gibi diğer işletim sistemlerine kıyasla çok daha güvenlidir. Ama mükemmel değiller ve kesinlikle yenilmez değiller. Bu yayında VPS’inizi güvenli kılmak ve bilgisayar korsanlarından korumak için ilgili yollardan yararlanacağız.

Linux’un varsayılan güvenliği oldukça iyidir ve rakiplerinin çoğundan daha iyidir, ancak yine de zayıf yönleri vardır.

1.Root girişlerini devre dışı bırakın

Varsayılan olarak, her Linux VPS bir kullanıcı adı olarak “root” a sahiptir ve bu nedenle bilgisayar korsanları şifreyi kırmak ve erişim kazanmak için kaba kuvvet saldırılarını dener. Girişleri “root” kullanıcı adından devre dışı bırakmak, bilgisayar korsanlarının yalnızca kullanıcı kimlik bilgilerinizi tahmin etmesini engellediği için başka bir güvenlik katmanı ekler.

Kök(root) kullanıcı olarak giriş yapmak yerine, başka bir kullanıcı adı oluşturmanız ve kök düzeyinde komutları yürütmek için “sudo” komutunu kullanmanız gerekir.

Kök(root) olmayan kullanıcınızı oluşturduğunuzdan ve “kök” hesabını devre dışı bırakmadan önce uygun yetki düzeylerini verdiğinizden emin olun.

Hazır olduğunuzda /etc/ssh/sshd_confignano veya vi’de açıp “PermitRootLogin” parametresini bularak devam edin.

Varsayılan olarak, bu “evet” diyecektir.

Bunu “hayır” olarak değiştirin ve değişiklikleri kaydedin.

2. SSH portunu değiştirin

İnsanların bulamadıklarında SSH’yi kırmaları zor. SSH portu numarasının değiştirilmesi, kötü amaçlı komut dosyalarının doğrudan varsayılan port’a (22) bağlanmasını önleyebilir.

Bunu yapmak için açmanız /etc/ssh/sshd_configve uygun ayarı değiştirmeniz gerekecektir .

Seçilen port numarasının başka herhangi bir servis tarafından kullanılıp kullanılmadığını tekrar kontrol ettiğinizden emin olun – bir çakışma yaratmak istemezsiniz!

Varsayılan olarak, SSH  programı 22 numaralı bağlantı noktasını dinler.En iyisi SSH portunu başka bir portla değiştirmektir, bu yüzden birisi IP bilse bile, varsayılan SSH portu kullanarak bağlanmayı deneyemezler .

nano  /etc/ssh/sshd_config

 

  • İçinde bulunan satırı arayın Port 22(genellikle dosyanın başında)

 

# What ports, IPs and protocols we listen for
Port 22
  • 22’yi başka bir numaraya değiştirin ( bağlanmak için ihtiyacınız olacak şekilde hatırladığınızdan emin olun ). Diyelim ki 5000
Port 5000
  • Dosyayı kaydedin ve SSH  yeniden başlatın,
service sshd restart

Artık siz veya hiç kimse SSH varsayılan bağlantı noktasını kullanarak sunucunuza bağlanamaz. Bunun yerine, bağlanmak için yeni bağlantı noktasını kullanabilirsiniz.

MAC’ta SSH istemcisi veya Terminal kullanıyorsanız -p, özel portu tanımlamak için kullanabilirsiniz .

ssh -p 5000 kullanıcı adı@128.199.100.xxx

 

3. Brute Force Saldırılarından Koruma

Bir hacker’ın çevrimiçi işinizi kontrol altına almak için kullandığı yaygın mekanizmalardan biri, WordPress , Joomla , vb. Gibi sunucu ve web platformlarına Brute Force saldırıları başlatmaktır.

Ciddiye alınmazsa bu tehlikeli olabilir.

SSH Guard

SSHGuard , çalışan hizmetleri sistem günlük dosyalarından izler ve tekrarlanan hatalı giriş denemelerini engeller.

Başlangıçta, SSH giriş koruması için yapıldı , ancak şimdi birçok servisi destekliyor.

  • Pure FTP, PRO FTP, VS FTP, FreeBSD FTP
  • Exim
  • Sendmail
  • Dovecot
  • Cucipop
  • UWimap

SSHGuard’ı aşağıdaki komutlarla yükleyebilirsiniz.

sudo apt install sshguard

 

Fail2Ban

Fail2Ban, SSH’yi korumak için bir başka popüler programdır. Başarısız oturum açma girişimi tanımlanan eşiğe ulaşırsa Fail2Ban otomatik olarak iptables kuralını günceller.

Fail2Ban kurmak için

sudo apt install fail2ban

 

4. Parola Tabanlı Kimlik Doğrulamayı Devre Dışı Bırak

Sunucunuzda bir veya iki bilgisayardan oturum açarsanız, SSH anahtar tabanlı kimlik doğrulamasını kullanabilirsiniz.

Ancak, birden fazla kullanıcınız varsa ve genellikle birden fazla ortak bilgisayardan giriş yaptıysanız, her seferinde anahtar değişimi yapmak zor olabilir.

Dolayısıyla duruma göre, parola tabanlı kimlik doğrulamasını devre dışı bırakmayı tercih ederseniz, aşağıdaki gibi yapabilirsiniz.

Not: Bu, zaten SSH anahtar değişimi ayarlamış olduğunuzu varsaymaktadır.

  • nano editörü /etc/ssh/sshd_configkullanarak değiştir
  • Aşağıdaki satırı ekleyin ya da varsa
  • PasswordAuthentication no
    
    

 

SSH Daemon’unu yeniden yükle

sudo systemctl restart ssh

 

5. Düzenli Yedekleme

Yedekleme senin arkadaşın! Hiçbir şey işe yaramazsa yedek sizi kurtarır .

İşler ters gidebilir , ancak geri yüklemek için gereken yedeğe sahip değilseniz ne olacak? Bulut veya VPS sağlayıcısının çoğu az miktarda ek bir ücret karşılığında yedekleme sunar ve her zaman düşünülmelidir.

Yedekleme servisini nasıl etkinleştireceğinizi VPS sağlayıcınıza danışın. Linode ve DO’nun yedekleme için damla fiyatının% 20’sini talep ettiğini biliyorum.

Google Compute Engine veya AWS’deyseniz, günlük bir anlık görüntü planlayın.

Yedeklemeye sahip olmak hızlı bir şekilde VM’nin tamamını geri yüklemenizi sağlar , böylece işinize geri dönersiniz. Veya anlık görüntü yardımı ile VM’yi klonlayabilirsiniz .

 

8. Güçlü bir parola politikası kullanın

Zayıf şifreler her zaman – ve her zaman – güvenliğe yönelik en büyük tehditlerden biri olmuştur. Kullanıcı hesaplarının boş şifre alanlarının olmasına ya da “123456”, “şifre”, “qwerty123” veya “trustno1” gibi basit şifreler kullanmasına izin vermeyin.

Bu konuda hiç bilginiz yoksa aşağıdaki gibi benzer siteleri kullanarak parola üretin.

https://sifre.hesaplama.net/

 

9.VPS’nizin Güvenlik Duvarını Yapılandırma

 

Basitçe söylemek gerekirse, gerçekten güvenli bir VPS istiyorsanız, bir güvenlik duvarına ihtiyacınız var.

Çok önemli bir ipucu da dağıtımınıza dahil edilen güvenlik duvarını etkinleştirin. Pek çok Linux işletim sistemi zaten zaten bir dizi önceden yapılandırılmış kural sunar, ancak aşağıdaki kuralları önermek istiyoruz:

>iptables -A INPUT -p icmp -j ACCEPT

>iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT

>iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT

>iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

>iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

>iptables -P INPUT DROP

Bu, ICMP portunu, SSH portunu ve web portlarını açık bırakacaktır (80 ve 443).

Sunucunuza her zaman evinizden veya ofisinizden bağlanırsanız, ICMP protokolünü açık bırakmaktan ve SSH bağlantı noktası kuralına bir kaynak adresi eklemekten kaçınabilirsiniz.

Bu kuralı ekleyerek, davetsiz misafirlerin VPS’nize erişmesini pratik olarak imkansız hale getireceksiniz. Bunu yapmanın başka bir yolu aşağıdaki komutu çalıştırmaktır:

> iptables -A INPUT -p tcp -m tcp –s IP-ADRESİNİZ --dport 22 -j ACCEPT
VPS'niz için uygun güvenlik duvarı kurallarını yükledikten sonra, sunucuyu yeniden başlattıklarında yeniden yüklenecekleri şekilde kaydetmeyi unutmayın. Bunu şu iki komutla kolayca yapabilirsiniz:

> iptables-save> / root / iptables-startup-rules

> echo “iptables-restore </ root / iptables-startup-rules” >> /etc/rc.local

 

Artık VPS’nizle olan tüm gereksiz iletişimi engellediniz.

 

10. Düzenli Güncelleme

 

VM işletim sisteminizi güncel tutmak, sunucunuzun en son güvenlik açıklarına maruz kalmamasını sağlamak için temel görevlerden biridir .

Debin/Pardus/Ubuntu/Mint , kullanabileceğiniz  apt-get update en son paketleri kontrol edebilirsiniz.

apt-get upgrade ile en son paketleri yükleyebilirsiniz.

 

11.DDoS Saldırılarından Koruma

DDoS (Dağıtılmış Hizmet Reddi) herhangi bir katmanda gerçekleşebilir ve bu, işletme sahibi olarak istediğiniz en son şeydir. Kaynak IP’yi bulmak mümkündür ve en iyi uygulama olarak, sunucu IP’nizi genel İnternet’e maruz bırakmamalısınız . Cloud / VPS sunucunuzda DDoS’u önlemek için “ Origin IP ” yi gizlemenin birçok yolu vardır .

Bir yük dengeleyici (LB) kullanın – İnternete bakan bir yük dengeleyici kullanın, böylece sunucu IP’si İnternete maruz kalmaz. Seçim yapabileceğiniz birçok yük dengeleyicisi var – Google Cloud LB, AWS ELB, Linode Nodebalancer, DO LB, vb.

Bir CDN (İçerik Dağıtım Ağı) kullanın – CDN , web sitesi performansını ve güvenliğini artırmanın en iyi yollarından biridir.

CDN’yi uyguladığınızda, DNS A kaydını CDN sağlayıcısı tarafından sağlanan herhangi bir yayın IP adresi ile yapılandırırsınız. Bunu yaparak, etki alanınız için CDN sağlayıcısı IP’sini tanıtıyorsunuz ve IP’niz görünmüyor .

Web sitesi performansını, DDoS koruması, WAF ve diğer birçok özelliği hızlandırmak için birçok CDN sağlayıcısı var.

Bu yüzden hem performans hem de güvenlik sağlayan CDN sağlayıcısını seçin.

 

12. Düzenli Yedekleme

Yedekleme senin arkadaşın! Hiçbir şey işe yaramazsa yedek sizi kurtarır .

İşler ters gidebilir , ancak geri yüklemek için gereken yedeğe sahip değilseniz ne olacak? Bulut veya VPS sağlayıcısının çoğu az miktarda ek bir ücret karşılığında yedekleme sunar ve her zaman düşünülmelidir.

Yedeklemeye sahip olmak hızlı bir şekilde VM’nin tamamını geri yüklemenizi sağlar , böylece işinize geri dönersiniz. Veya anlık görüntü yardımı ile VM’yi klonlayabilirsiniz .

 

13. SFTP’yi kullanın, FTP’yi değil

Dosya aktarım protokolü (FTP) eski ve artık TLS şifreli bağlantılar kullanıldığında bile güvenli değil.

Hem FTP hem de FTPS, bir bilgisayar programı ağınız üzerinden geçen trafiği yakaladığında ve günlüğe kaydettiğinde, paket taramasına karşı savunmasızdır. FTP tamamen “açık” ve FTPS dosya transferleri de “açık” durumdadır, bu sadece kimlik bilgilerinin şifrelenmiş olduğu anlamına gelir.

SFTP “SSH üzerinden FTP” dir (“güvenli FTP” olarak da bilinir) ve hem kimlik bilgileri hem de aktarılmakta olan dosyalar dahil tüm verileri tamamen şifreler.

 

14.Kullanılmayan ağ bağlantı noktalarını devre dışı bırakın

Açık ağ bağlantı noktaları ve kullanılmayan ağ servisleri bilgisayar korsanları için kolay hedeflerdir ve kendinizi sömürüye karşı korumak isteyeceksiniz.

Açık olan tüm ağ bağlantı noktalarını ve bunlarla ilişkili hizmetleri görmek için “netstat” komutunu kullanın.

nmap -v scanme.nmap.org