Używam Match
bloku w OpenSSH /etc/ssh/sshd_config
(na debianie), aby ograniczyć niektórych użytkowników do SFTP:
# my stuff
Match group sftponly
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp -u 0002
ChrootDirectory %h
Jak widać, używam #my stuff
komentarza w niestandardowych plikach konfiguracyjnych, aby łatwo odróżnić konfiguracje domyślne od tych, które stworzyłem (i umieszczam je na końcu plików konfiguracyjnych).
Teraz chciałem dołączyć dyrektywę UseDNS no
do konfiguracji (aby przyspieszyć logowanie), ale OpenSSH powiedział Directive 'UseDNS' is not allowed within a Match block
.
Teraz zastanawiałem się, czy istnieje składnia, End Match
która kończy te bloki dopasowania?
UseDNS
dyrektywy (która wcześniej nie działała). Akceptując to jako nową odpowiedź. - Nowsze wersje OpenSSH najwyraźniej nawet nie zacznij od pustegoMatch
: lists.mindrot.org/pipermail/openssh-unix-dev/2014-April/…Wydaje się, że nie ma sposobu, aby jawnie zakończyć bloki dopasowania. Na stronie podręcznika sshd_config :
Tak więc
Match
bloki muszą znajdować się na końcusshd_config
pliku.źródło
Match
, co skutecznie pasuje do wszystkiego i dlatego jest takie samo jak „zakończenie” bloku. Nadal nie pozwoli to jednak na użycie dyrektyw, które nie są dozwolone w blokach meczów, więc nie pomoże w konkretnym scenariuszu.Myślę, że powinniśmy jednocześnie wspomnieć o kluczu
Match
iHost
.Czytając instrukcję obsługi
man ssh_config
, zarównoHost *
iMatch all
zresetuje byłego bloku ograniczeń, bez względu na to, że jest toMatch
blok lubHost
blok.źródło