명시적으로 비활성화했는데도 X11 전달이 허용되는 이유는 무엇입니까?

명시적으로 비활성화했는데도 X11 전달이 허용되는 이유는 무엇입니까?

SSH를 강화했지만 이상한 이유로 X11Forwarding여전히 활성화된 상태로 유지됩니다. 추가를 시도했지만 X11UseForwarding no실행하면 sudo sshd -T | grep x11다음 오류가 발생하여 제거했습니다.

/etc/ssh/sshd_config: line 134: Bad configuration option: X11UseForwarding
/etc/ssh/sshd_config: terminating, 1 bad configuration options

출력 sudo sshd -T | grep x11:

x11displayoffset 10
x11maxdisplays 1000
x11forwarding yes
x11uselocalhost yes

내 콘텐츠 /etc/ssh/sshd_config:

#   $OpenBSD: sshd_config,v 1.104 2021/07/02 05:11:21 dtucker Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

# To modify the system-wide sshd configuration, create a  *.conf  file under
#  /etc/ssh/sshd_config.d/  which will be automatically included below
Include /etc/ssh/sshd_config.d/*.conf

# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_ecdsa_key
#HostKey /etc/ssh/ssh_host_ed25519_key

# Ciphers and keying
#RekeyLimit default none

# Logging
#SyslogFacility AUTH
#LogLevel INFO

# Authentication:

LoginGraceTime 20
PermitRootLogin no
#StrictModes yes
MaxAuthTries 3
MaxSessions 1

#PubkeyAuthentication yes

# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile  .ssh/authorized_keys

#AuthorizedPrincipalsFile none

#AuthorizedKeysCommand none
#AuthorizedKeysCommandUser nobody

# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication no
PermitEmptyPasswords no

# Change to no to disable s/key passwords
#KbdInteractiveAuthentication yes

# Kerberos options
KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes
#KerberosGetAFSToken no
#KerberosUseKuserok yes

# GSSAPI options
GSSAPIAuthentication no
#GSSAPICleanupCredentials yes
#GSSAPIStrictAcceptorCheck yes
#GSSAPIKeyExchange no
#GSSAPIEnablek5users no

# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the KbdInteractiveAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via KbdInteractiveAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and KbdInteractiveAuthentication to 'no'.
# WARNING: 'UsePAM no' is not supported in Fedora and may cause several
# problems.
#UsePAM no

AllowAgentForwarding no
AllowTcpForwarding no
#GatewayPorts no
X11Forwarding no
#X11DisplayOffset 10
#X11UseLocalhost yes
#PermitTTY yes
#PrintMotd yes
#PrintLastLog yes
#TCPKeepAlive yes
PermitUserEnvironment no
#Compression delayed
ClientAliveInterval 300
ClientAliveCountMax 1
#UseDNS no
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# override default of no subsystems
Subsystem   sftp    /usr/libexec/openssh/sftp-server

# Example of overriding settings on a per-user basis
#Match User anoncvs
#   X11Forwarding no
#   AllowTcpForwarding no
#   PermitTTY no
#   ForceCommand cvs server

# custom ssh settings
AllowUsers [REDACTED]

답변1

이는 구성 파일에 존재하지만 그 이전에도 존재합니다 X11Forwarding no. Include /etc/ssh/sshd_config.d/*.conf각 키워드에 대해(예 X11Forwarding: )첫 번째얻은 값을 사용하십시오( man 5 sshd_config명시적으로 명시하십시오). 즉 , 파일 X11Forwarding yes에서 적용하면 값은 가 됩니다 ..conf/etc/ssh/sshd_config.d/yes

/etc/ssh/sshd_config.d/*.conf파일을 확인하세요 . 유용한 명령:

grep -il X11Forwarding /etc/ssh/sshd_config.d/*.conf

우선순위를 원한다면 X11Forwarding no기본 구성 파일의 앞부분, Include물론 이 줄 앞에 넣으십시오.

답변2

Giles가 말했듯이 구성 지시문에 대해 혼란스러워하는 것 같습니다. 'sshd -T'의 출력에는 134행에 오류가 표시되지만 구성의 처음 133행만 표시되었습니다. 대신 grep 문은 grep 파일에 "잘못된 구성 옵션: X11UseForwarding"이 존재하지 않음을 의미합니다.

나는 돌아가서 구성 파일에 무엇이 있는지 정확히 확인하고 sshd 서비스를 명시적으로 다시 시작하여 파일의 현재 구성으로 실행되고 있는지 확인해야 한다고 생각합니다.

관련 정보