SSH şifre doğrulamasına sadece belirli IP adreslerinden nasıl izin verebilirim?


103

SSH parola doğrulamasına yalnızca belirli bir alt ağdan izin vermek istiyorum. Küresel olarak buna izin vermeme seçeneğini görüyorum /etc/ssh/sshd_config:

# Change to no to disable tunnelled clear text passwords
#PasswordAuthentication yes

Bu yapılandırmayı belirli bir IP adresi aralığına uygulamanın bir yolu var mı?

Yanıtlar:


156

Bir kullan Matchblok sonunda bir /etc/ssh/sshd_config:

# Global settings
…
PasswordAuthentication no
…

# Settings that override the global settings for matching IP addresses only
Match address 192.0.2.0/24
    PasswordAuthentication yes

Ardından sshd servisine yapılandırmasını yeniden yüklemesini söyleyin:

service ssh reload

1
Bunu denedim (bunun yerine 192.168.0.0/16 ile) ve ssh servisini yeniden başlattığımda kilitli kaldım. SSH herhangi bir bağlantıyı reddetti. Bunun neden olabileceği hakkında bir fikrin var mı?
Michael Waterfall

2
@MichaelWaterfall Çok az bilgi ile anlatmak imkansız. Yeni yapılandırmayı onaylayana kadar bir kabuğun çalıştığından emin olun. Ssh servisini yeniden başlatmak aktif bağlantıları etkilemez.
Gilles

28
Muhtemel sorun, Maç bloğunu sshd_config'in ortasına bir yere koymanızdır. Eşleşme çizgileri, bir sonraki Eşleşme çizgisine kadar izleyen her çizgiyi etkiler, bu nedenle dosyanın sonunda olmalıdır.
Ken Simon,

6
Cevabındaki girintiye rağmen, sshd_configPython değil;)
Nick T

1
@frepie MatchBlok, bir sonraki Matchyönergeye kadar veya dosyanın sonuna kadar uzanır . Bu yüzden sonuna koymak zorundasın.
Gilles

8

ekleyebilirsin:

AllowUsers user1@192.168.*.*, user2@192.168.*.*

bu, varsayılan davranışı değiştirir, diğer tüm kullanıcıları tüm ana bilgisayarlardan inkar eder. OpenSsh sürüm 5.1 ve daha yeni sürümlerde mevcut olan eşleştirme bloğu .


call Tek bir kullanıcı yerine bir gruba izin veriyorum
Lamar

@Lamar From man sshd_config, AllowGroupsaynı şekilde çalışıyor gibi görünüyor AllowUsers, ancak AllowUsersönceliği ele alıyor gibi görünüyor AllowGroups.
conradkdotcom
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.