Konuyu Açan
#1
sshd_config ile Güvenlik Kontrollerini Sertleştirmek: Uygulamalı Rehber
Giriş ve bağlam
sshd_config dosyası, uzaktan güvenli erişimi yöneten ana konfigürasyon dosyasıdır. Yanlış yapılandırma, brute-force saldırılarına açık kapılar açabilir veya yönetimsel işlemleri zorlaştırabilir. Bu nedenle, oturum açma davranışını ve protokol güvenliğini temel düzeyde güvenli kısıtlama ile başlatmak kritik önemdedir.
1) Temel güvenlik ilkeleri ve kanonikler
2) Erişim ve yetkilendirme stratejileri
3) Anahtar yönetimi ve güvenlik operasyonları
4) Uygulama örnekleri ve pratik ayarlar
5) Güncel tehditler ve uyarlamalar
Kapanış
Bu konfigürasyonu adım adım gözden geçirin, ortamınıza uygun Match blokları ve kullanıcı kısıtlamalarını ekleyin. Elbette her değişiklikten sonra servisi yeniden başlatmayı unutmayın. Bu konudaki deneyimleriniz veya karşılaştığınız özgün senaryoları paylaşmak isterseniz nasıl bir yapı kurduğunuz ve hangi riskleri gördüğünüzü açıklarsanız sevinirim.
Düşüncelerim: sistem güvenliğini artırırken, erişim esnekliğini hangi dengede tutmak gerekiyor? Bu yazıda temel güvenlik önlemlerini, pratik uygulama adımlarıyla ele alacağım.
Giriş ve bağlam
sshd_config dosyası, uzaktan güvenli erişimi yöneten ana konfigürasyon dosyasıdır. Yanlış yapılandırma, brute-force saldırılarına açık kapılar açabilir veya yönetimsel işlemleri zorlaştırabilir. Bu nedenle, oturum açma davranışını ve protokol güvenliğini temel düzeyde güvenli kısıtlama ile başlatmak kritik önemdedir.
1) Temel güvenlik ilkeleri ve kanonikler
- Protokol ve sürüm kontrolü: gerekli ise sadece SSH-2 kullanılsın ve eski protokoller devre dışı bırakılır. Bu, zafiyetleri azaltır ve client tarafında daha güvenli sürümlerin tercih edilmesini sağlar.
- Şifreleme ve KEX (Key Exchange): güvenli algoritmalar seçilir; zayıf şifreleme ve eski anahtar değişim yöntemleri devre dışı bırakılır. Bu adım, MITM ve benzeri saldırılara karşı ciddi bir savunma katmanı ekler.
- Arama hacmi ve kimlik doğrulama: kök kullanıcı (root) üzerinden SSH ile giriş sınırlanır; mümkünse parola yerine anahtar tabanlı kimlik doğrulamasına geçilir.
2) Erişim ve yetkilendirme stratejileri
- Kullanıcı ve grup temelli kısıtlamalar: sadece belirli kullanıcılar veya gruplar için SSH erişimi açılır. Match blokları ile kullanıcıya özel kurallar uygulanabilir.
- Parola kilitleme ve hız sınırlamaları: başarısız giriş denemeleri belirli bir sayıyı aştığında IP engellemesi veya Captcha benzeri durumlar yerine kaba kuvveti sınırlayan mekanizmalar kullanılır.
- kök olmayan ortamlarda sınırlı komutlar: authorized_keys üzerinde from="..." gibi kısıtlamalarla belirli kaynaklardan gelen anahtarlar dışında bağlantıya izin verilmez.
3) Anahtar yönetimi ve güvenlik operasyonları
- Anahtar saklama: özel anahtarlar güvenli dizinlerde (örneğin .ssh) ve doğru izinlerle saklanmalı; passphrase kullanımı önerilir.
- Yeniden anahtar üretimi ve rol tabanlı rotasyon: anahtarlar periyodik olarak değiştirilir; erişim değişikliklerinde yeni anahtarlar dağıtılır.
- Log ve denetim: SSH oturumları için aşamalı günlükler tutulur; anormal oturum açma girişimleri tetikte tutulur ve gerektiğinde olay müdahalesi için süreçler netleşir.
4) Uygulama örnekleri ve pratik ayarlar
KOD
1234567891011121314151617181920# Temel güvenlik iyileştirmesi
Protocol 2
PermitRootLogin no
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM yes
X11Forwarding no
AllowUsers aydin park
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
LogLevel VERBOSE
PermitEmptyPasswords no
[b]Girişleri sınırlamak için başlıca güvenlik parametreleri[/b]
MaxAuthTries 3
MaxSessions 2
ClientAliveInterval 300
ClientAliveCountMax 2
PermitUserEnvironment no
AllowUsers kullanici1 kullanici2
5) Güncel tehditler ve uyarlamalar
- Otomatik tarama ve zafiyetler: SSH hizmetinin güncel güvenlik yamaları ve güvenlik politikalarıyla uyumlu olduğundan emin olmak gerekir.
- Ağ düzeyi güvenlik: gerektiğinde VPN veya güvenlik duvarı entegrasyonu ile ek katman sağlanır; sadece güvenli portlar ve kaynaklar üzerinden erişim sağlanır.
- Denetim ve uyum: kurum içi güvenlik standartları ile uyum için konfigürasyon değişiklikleri bir değişiklik yönetimi sürecine alınır.
Kapanış
Bu konfigürasyonu adım adım gözden geçirin, ortamınıza uygun Match blokları ve kullanıcı kısıtlamalarını ekleyin. Elbette her değişiklikten sonra servisi yeniden başlatmayı unutmayın. Bu konudaki deneyimleriniz veya karşılaştığınız özgün senaryoları paylaşmak isterseniz nasıl bir yapı kurduğunuz ve hangi riskleri gördüğünüzü açıklarsanız sevinirim.
