나는 들어가고 싶다/etc/ssh/sshd_config
Protocol 2
Ciphers aes256-ctr
PermitRootLogin no
X11Forwarding no
Match User joebob
X11Forwarding yes
AuthorizedKeysFile .ssh/authorized_keys
PermitEmptyPasswords no
RSAAuthentication no
RhostsRSAAuthentication no
IgnoreUserKnownHosts no
문제는
SSH 데몬 시작 /etc/ssh/sshd_config 40행:
'IgnoreUserKnownHosts' 지시문은 일치 블록에서 허용되지 않습니다.
Match 문 뒤의 첫 번째 명령어 이후 몇 개의 명령어가 일치 항목에 포함되는 것 같나요?
파일 끝에 Match 문을 넣으면 작동합니다 sshd_config
.
나는 그렇게 하고 싶지 않습니다.
X11Forwarding no 문 바로 뒤에 일치하는 문을 파일 상단 근처에 배치할 수 있는 방법이 있습니까?
파일 상단에 관심 있는 모든 관련 SSH 설정이 있으며 일치하는 사용자가 X11forwarding no 이후에 있기를 원하므로 이러한 일이 발생하고 있음을 알 수 있습니다. 파일 맨 아래에 배치하면 잊어 버릴 것입니다.
내 목표는 을 제거하는 것입니다 /etc/passwd
.
답변1
man sshd_config
및 섹션 Match
에서 언급한 바와 같이 :
키워드 다음 줄에는 키워드 하위 집합만 사용할 수 있습니다
Match
. 사용 가능한 키워드는AllowAgentForwarding, AllowTcpForwarding, 배너, ChrootDirectory, ForceCommand, GatewayPorts, GSSAPIAuthentication, HostbasedAuthentication, KbdInteractiveAuthentication, KerberosAuthentication, KerberosUseKuserok, MaxAuthTries, MaxSessions, PubkeyAuthentication, AuthorizedKeysCommand, AuthorizedKeysCommandRun As,PasswordAuthentication,PermitEmptyPasswords,PermitOpen,PermitRootLogin,Require d인증1,필수인증RSA Rhosts2,인증,RSA ID 인증, X11DisplayOffset, X11Forwarding 및 X11UseLocalHost
보시다시피 IgnoreUserKnownHosts
Matches 섹션에 있을 수 없습니다. 하나가 있는 경우 첫 번째 일치 항목으로 이동하거나 모든 Match
섹션(있는 경우 하나 이상)을 구성 파일 끝에 배치합니다(권장). 그렇지 않으면 Match 이후의 모든 구성이 전역 구성을 덮어쓰고 joebob
해당 항목에만 적용됩니다. 사용자( ).
따라서 모든 일치 항목을 구성 파일의 끝으로 이동하는 것이 좋습니다.
참고: 각 Match
블록은 다른 블록을 시작하거나 Match
구성 파일을 종료하여 끝날 수 있습니다. 또는 이후의 모든 후속 구성을 입력하면 Match All
전역 구성으로 간주됩니다.
답변2
일치 블록의 끝을 표시하려면 "모두 일치"를 사용할 수 있습니다.
Protocol 2
Ciphers aes256-ctr
PermitRootLogin no
X11Forwarding no
Match User joebob
X11Forwarding yes
Match all
AuthorizedKeysFile .ssh/authorized_keys
PermitEmptyPasswords no
RSAAuthentication no
RhostsRSAAuthentication no
IgnoreUserKnownHosts no