私の IP アドレスは頻繁に変更されないため、私の IP アドレスだけが gen4 CentOS7 VPS サーバーの SSH にアクセスできるようにしたいと考えています。
これは、ファイル /etc/ssh/sshd_config の設定ファイルの内容です (コメントアウトされた行は削除されています)。
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
SyslogFacility AUTHPRIV
PermitRootLogin no
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no
PermitEmptyPasswords no
Match Address xx.xxx.xxx.xxx #here is my real ip address
PasswordAuthentication yes
ChallengeResponseAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials no
UsePAM yes
X11Forwarding yes
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
AcceptEnv XMODIFIERS
Subsystem sftp /usr/libexec/openssh/sftp-server
走った後
sudo systemctl restart sshd.service
、次のエラーが発生しました:
制御プロセスがエラー コードで終了したため、sshd.service のジョブが失敗しました。詳細については、「systemctl status sshd.service」および「journalctl -xe」を参照してください。
実行後:
systemctl status sshd.service
結果は以下のようになります。
sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Fri 2020-08-21 21:34:52 MST; 40s ago
Docs: man:sshd(8)
man:sshd_config(5)
Process: 15994 ExecStart=/usr/sbin/sshd -D $OPTIONS (code=exited, status=255)
Main PID: 15994 (code=exited, status=255)
何が問題なのか分かりません。どなたか助けていただければ幸いです。
答え1
コマンドを実行しました:
sudo /usr/sbin/sshd -T
次のようなエラーメッセージが表示されました:
Directive 'ChallengeResponseAuthentication' is not allowed within a Match block
そこで、Match ブロックをファイルの最後の部分に移動すると、問題は解決しました。
ご指導くださった皆様ありがとうございました。