Dijital çağda, Linux Virtual Private Server (VPS) güvenliğini sağlamak
verilerinizi ve altyapınızı koruma açısından vazgeçilmezdir. Bu
kapsamlı rehber, Linux VPS'nizi koruma yöntemlerini ele alır.
cyber threats.
Sisteminizi Güncel Tutun
Updated
Linux VPS'nizi güvende tutmanın en önemli adımlarından biri,
sisteminizin güncel kalmasını sağlamaktır. Eski yazılımlar,
kötü niyetli kişilerin istismar edebileceği güvenlik açıkları barındırabilir. İşte nasıl yapacağınız:
do it:
Paket Yöneticisini Kullanın
Linux dağıtımlarının çoğu bir paket yöneticisiyle gelir. Örneğin,
Debian tabanlı bir sistem kullanıyorsanız paketleri güncellemek için
aşağıdaki komutları çalıştırabilirsiniz:
sudo apt update
sudo apt upgrade
CentOS tabanlı bir sistemdeyseniz yum kullanın:
sudo yum update
Set Up Automatic
Updates
Debian Tabanlı Sistemlerde unattended-upgrades ile
Otomatik Güncellemeleri Yapılandırın:
Ubuntu gibi Debian tabanlı sistemlerde
unattended-upgrades paketi kullanılarak güncelleme süreci otomatik hale getirilebilir.
- unattended-upgrades'i Kurun:
sudo apt install unattended-upgrades
- Otomatik güncelleme ayarlarını yapılandırın. Yapılandırmayı düzenleyin
file:
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
- Güvenlikle ilgili paketler için otomatik güncellemeleri etkinleştirin:
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}-security";
"${distro_id}:${distro_codename}-updates";
"${distro_id}:${distro_codename}-proposed";
"${distro_id}:${distro_codename}-backports";
};
- Katılımsız güncelleme servisini etkinleştirin ve başlatın:
sudo dpkg-reconfigure -plow unattended-upgrades
Bu komut değişiklikleri onaylamanızı isteyecektir. Devam etmek için "Evet"i seçin.
otomatik güncellemeleri etkinleştirin.
yum-cron ile Otomatik Güncellemeleri Yapılandırın
CentOS:
CentOS üzerinde otomatik güncellemeler için yum-cron kullanabilirsiniz:
- yum-cron'u kurun:
sudo yum install yum-cron
- yum-cron servisini başlatın ve etkinleştirin:
sudo systemctl enable yum-cron
sudo systemctl start yum-cron
Kullan
Güvenli Kimlik Doğrulama için Güçlü Parolalar ve SSH Anahtarları
Linux VPS güvenliğini sağlamak için güçlü kimlik doğrulama yöntemleri kullanılmalıdır.
Bir Linux veya Windows istemcisinden bağlanıyor olun, işte nasıl yapılacağı:
Güçlü parolalar ve SSH anahtarlarını etkili biçimde kullanın:
Using Strong
Passwords
VPS üzerinde kullanıcı hesapları oluştururken parolaların
büyük ve küçük harfleri, rakamları ve özel karakterleri bir arada içeren karmaşık
karakter. Tahmin edilmesi kolay parolalar kullanmayın.
SSH Anahtarı Kullanılıyor
Authentication
Linux Müşterisi İçin:
- Linux istemcinizde bir SSH anahtar çifti oluşturmak için ssh-keygen komutunu kullanın
command:
ssh-keygen -t rsa -b 2048
Varsayılan olarak, genel anahtar ~/.ssh/id_rsa.pub konumuna kaydedilir.
- Genel anahtarınızı VPS'ye kopyalayın:
ssh-copy-id user@your_server_ip
- SSH sunucusundaki VPS üzerinde SSH için parola tabanlı girişi devre dışı bırakın
yapılandırma dosyası (/etc/ssh/sshd_config):
PasswordAuthentication no
Windows Müşterisi İçin:
- Windows üzerinde, benzer işlevler için PowerShell'i kullanın:
ssh-keygen
- Ortak anahtarınızı PowerShell kullanarak VPS sunucusuna kopyalayın. Şunu değiştirin:
IP-ADDRESS-OR-FQDN uzak sunucunun
address:
type $env:USERPROFILE\.ssh\id_rsa.pub | ssh root@{IP-ADDRESS-OR-FQDN} "cat >> .ssh/authorized_keys"
- SSH sunucusundaki VPS üzerinde SSH için parola tabanlı girişi devre dışı bırakın
yapılandırma dosyası (/etc/ssh/sshd_config):
PasswordAuthentication no
Implement a Firewall
Linux VPS güvenliğini sağlamak, trafiği kontrol etmek için bir güvenlik duvarı yapılandırmasını gerektirir
gelen ve giden trafiği kontrol etmek için bir güvenlik duvarı nasıl kurulur, işte adımlar:
enhance security:
Debian/Ubuntu üzerinde ufw (Uncomplicated Firewall) kullanın veya
firewalld on CentOS:
- Güvenlik duvarı yönetim aracı kurulu değilse, önce onu yükleyin.
Debian/Ubuntu üzerinde ufw için:
sudo apt install ufw
CentOS üzerinde firewalld için:
sudo yum install firewalld
- Güvenlik duvarını etkinleştirmeden önce bağlantı kesintisini önlemek için SSH'ye izin veren kurallar ekleyin
locked out:
Debian/Ubuntu üzerinde ufw için:
sudo ufw allow OpenSSH
CentOS üzerinde firewalld için:
sudo firewall-cmd --permanent --add-service=ssh
- Güvenlik duvarını etkinleştirin ve varsayılan kuralları ayarlayın:
Debian/Ubuntu üzerinde ufw için:
sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing
CentOS üzerinde firewalld için:
sudo systemctl start firewalld
sudo systemctl enable firewalld
- Değişikliklerin geçerli olması için güvenlik duvarını yeniden yükleyin.
Debian/Ubuntu üzerinde ufw için:
sudo ufw reload
CentOS üzerinde firewalld için:
sudo systemctl reload firewalld
Root Girişini Devre Dışı Bırakın
Linux VPS güvenliğini sağlamanın ilk adımı root erişimini kısıtlamaktır. İşte nasıl yapacağınız
Güvenliği artırmak için root girişini devre dışı bırakmak üzere:
- Yeni Kullanıcı Oluşturun: VPS'ye root kullanıcısı olarak giriş yapın. Ardından oluşturun
sudo ayrıcalıklarına sahip yeni bir kullanıcı hesabı oluşturun. newuser kısmını kendi
desired username:
adduser newuser
usermod -aG sudo newuser
- SSH bağlantısı için .ssh dizinini ve authorized_keys dosyasını oluşturun, ardından izinleri ayarlayın
Yeni Kullanıcı:
mkdir -p /home/newuser/.ssh
touch /home/newuser/.ssh/authorized_keys
chmod 600 /home/newuser/.ssh/authorized_keys
chown -R newuser:newuser /home/newuser/.ssh
-
Genel anahtarı oluşturup kopyaladığınızdan emin olun:
VPS. -
Yeni kullanıcı olarak giriş yapın.
-
VPS'den bağlantıyı kesin (root olarak bağlıysanız) ve oturum açın
yeni kullanıcı hesabıyla tekrar giriş yapın. Bu sayede gerekli işlemleri gerçekleştirebilirsiniz
sudo kullanarak yönetimsel görevleri gerçekleştirin. -
SSH Yapılandırmasını Düzenle:
SSH sunucu yapılandırma dosyasını VPS üzerinde açın. Bu dosya
genellikle /etc/ssh/sshd_config konumunda bulunur:
sudo nano /etc/ssh/sshd_config
PermitRootLogin satırını bulun ve değerini no olarak ayarlayın:
PermitRootLogin no
Dosyayı kaydedin ve metin düzenleyiciden çıkın.
- SSH Servisini Yeniden Başlat:
Bu değişikliği yaptıktan sonra, etkili olması için SSH servisini yeniden başlatmanız gerekir.
değişikliklerin geçerli olması için yeni ayarlar:
On Debian/Ubuntu:
sudo systemctl restart ssh
On CentOS:
sudo systemctl restart sshd
Harden SSH
Yapılandırma
Linux VPS güvenliğini sağlamak, SSH'yi daha da sertleştirmeyi gerektirir
ek güvenlik için yapılandırma ve UFW kurallarının güncel olduğundan emin olma
tarih. SSH ayarlarınızı nasıl güçlendireceğinizi ve UFW'yi nasıl güncelleyeceğinizi burada bulabilirsiniz
rules:
- UFW'de Yeni SSH Portuna İzin Verin:
UFW (Uncomplicated Firewall) kullanıyorsanız, önce yeni SSH'ye izin verin
varsayılan portu değiştirmeden önce mevcut portu not edin:
# Allow the new SSH port (e.g., 2222)
sudo ufw allow 2222/tcp
- UFW Kurallarından OpenSSH'yi Kaldırın:
SSH portunu değiştirdikten sonra, eski OpenSSH'yi kaldırmalısınız.
UFW kurallarından SSH servisini (varsayılan port 22) kaldırarak yalnızca yeni
SSH portu açık:
# Remove the old OpenSSH service (default port 22)
sudo ufw delete allow OpenSSH
- SSH Portunu Değiştir:
Varsayılan olarak, SSH port 22'yi kullanır. Varsayılan portu değiştirmek ekstra bir
otomatik botların tespit etmesini zorlaştırarak ek bir güvenlik katmanı sağlar
SSH sunucunuz.
SSH sunucu yapılandırma dosyasını açın:
sudo nano /etc/ssh/sshd_config
Port 22 yazan satırı bulun ve port numarasını şu değerle değiştirin:
farklı, kullanılmayan bir port, örneğin 2222:
Port 2222
- Anahtar Yeniden Kimlik Doğrulamayı Etkinleştir:
Anahtarın yeniden kimlik doğrulaması için bir zaman sınırı belirleyerek güvenliği artırabilirsiniz
SSH oturumunuz. Bu, SSH oturumunuzdan çıkarsanız
Gözetimsiz bırakıldığında, belirli bir süre sonra otomatik olarak sona erecektir.
SSH sunucu yapılandırmasına aşağıdaki satırları ekleyin veya mevcut olanları düzenleyin
dosyasını açın ve kaydedin:
ClientAliveInterval 300
ClientAliveCountMax 2
- UFW Kurallarını ve SSH Servisini Yeniden Yükle:
sudo ufw reload
sudo systemctl restart ssh
- Gerekli değişiklikleri yaptıktan sonra yeni bir SSH kurabilirsiniz.
aşağıdaki komutu kullanarak bağlanın:
ssh -p <new_port> user@your_server_ip
Implement Fail2Ban
Linux VPS güvenliğini sağlamak, kaba kuvvet saldırılarına karşı koruma altına almayı içerir
girişimleri ve diğer kötü amaçlı etkinlik türlerine karşı koruma sağlar. Fail2Ban, kullanışlı bir
bu amaç için doğru araçtır. Fail2Ban'ı nasıl kuracağınız aşağıda açıklanmıştır:
- Install Fail2Ban:
Başlamak için paket listenizi güncelleyin ve en güncel bilgilere sahip olduğunuzdan emin olun
available packages:
Debian tabanlı sistemler için (ör. Ubuntu):
sudo apt update
For CentOS:
sudo yum update
Install Fail2Ban:
Debian tabanlı sistemler için:
sudo apt install fail2ban
For CentOS:
sudo yum install fail2ban
- Configure Fail2Ban:
Fail2Ban'ın ana yapılandırma dosyası şu konumda bulunur:
/etc/fail2ban/jail.conf. Bir geçersiz kılma oluşturabilirsiniz
file at /etc/fail2ban/jail.local to customize settings
varsayılan yapılandırmayı değiştirmeden. Şu dosyayı açın:
sudo nano /etc/fail2ban/jail.local
Aşağıdaki yapılandırmayı ekleyerek IP adreslerini 10 dakika boyunca engelleyin
(600 saniye) altı başarısız giriş denemesinin ardından. Parametreleri şu şekilde ayarlayın:
needed:
[sshd]
enabled = true
maxretry = 6
findtime = 600
bantime = 600
Dosyayı kaydedin ve metin düzenleyiciden çıkın.
- Fail2Ban'ı Başlatın ve Etkinleştirin:
Fail2Ban'ı başlatın ve sistem açılışında otomatik olarak çalışacak şekilde etkinleştirin:
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
- Check Fail2Ban Status:
Fail2Ban'ın düzgün çalışıp çalışmadığını kontrol etmek için durumunu inceleyebilirsiniz
expected:
sudo fail2ban-client status
SSH servisinin izlendiğini görmelisiniz.
Burada ele alınan 6 temel yöntem, güçlü bir savunma katmanı oluşturur
olası güvenlik açıklarına karşı. Sisteminizi güncel tutarak,
güçlü kimlik doğrulama kullanarak, güvenlik duvarlarını yapılandırarak, SSH'yi sıkılaştırarak,
ve Fail2Ban uygulayarak VPS'nizi güçlendirir ve sürekli bağlantılı bu dünyada
gönül rahatlığı sağlarsınız. Sorularınız için destek ekibimizle
iletişime geçmekten çekinmeyin: submitting a
ticket.
Başka bir konuda yardıma mı ihtiyacınız var?
Ortalama yanıt süresi 1 saatin altında. Gerçek insanlar, botlar değil.