Soru SSH girişini belirli bir kullanıcıdan belirli bir IP adresine kısıtla


Belirli bir FreeBSD kullanıcı hesabı için SSH oturumlarını belirli bir IP adresine kısıtlamak istiyorum (bir makineden diğerine otomatik rsync yedeklemeleri, hiçbir kullanıcının giriş yapması gerekmiyor, sadece SSH + rsync işlemi).

Bunu hosts.allow veya sshd_config kullanarak yapabilmem gerektiğini hissediyorum ... ama bunun nasıl yapılacağına dair net bir örnek bulamıyorum. Birisi bana söyleyebilir mi?


5
2018-03-01 17:35


Menşei




Cevaplar:


Sarmalayıcı seçeneklerine ek olarak .... Bu rsync yedeklemesinin bir ssh anahtarını kullandığını hayal ediyorum. Bir anahtarı belirli bir kaynak IP veya alana kısıtlayabilirsiniz. Bu, bir kullanıcı-IP kısıtlamasına eşdeğer olacaktır, çünkü yalnızca bu kullanıcı bu anahtarı kullanıyor demektir (eğer akıllı, görünürseniz).

Authorized_keys dosyasının ilk satırı:

= "trusted.domain.com", bağlantı noktası iletme yok, no-pty ssh-rsa AAAABasdf


4
2018-03-01 18:08



İlginç! Bu sadece anahtardan veya genel olarak herhangi bir SSH oturumundan erişimi kısıtlıyor mu? Yani, birisi anahtar dosyası olmadan başka bir yerden giriş yapmayı denediyse (eğer şifreyi bilseler)? Eğer öyleyse, kısıtlamak için bir yol var mı? şart Yukarıda açıklananlara ek olarak oturum açmak için anahtar dosya var mı? - Keith Palmer Jr.
/ Etc / shadow dahilinde şifre belirlemeyen kullanıcılar otomatik olarak ssh giriş erişimini reddeder. Yani eğer bir kullanıcının SADECE anahtarları kullanarak giriş yapmasını istemiyorsanız, sadece şifresini kaldırın. Tüm oturum açma anahtarlarını "PasswordAuthentication no" ile kullanmanız gerekebilir, sadece root kullanıcısı "PermitRootLogin nopwd" ile bir anahtar kullanmanız gerektiğini belirtebilirsiniz. - CarpeNoctem


Host.allow manpage'den:

CLIENT USERNAME LOOKUP
       When the client host supports the RFC  931  protocol  or  one  of  its
       descendants  (TAP,  IDENT, RFC 1413) the wrapper programs can retrieve
       additional information about the owner of a connection.  Client  user-
       name  information,  when available, is logged together with the client
       host name, and can be used to match patterns like:

          daemon_list : ... user_pattern@host_pattern ...

0
2018-03-01 17:50