sshd 配置文件

sshd 的配置文件在/etc/ssh目录,主配置文件是sshd_config,此外还有一些安装时生成的密钥。

  • /etc/ssh/sshd_config:配置文件
  • /etc/ssh/ssh_host_ecdsa_key:ECDSA 私钥。
  • /etc/ssh/ssh_host_ecdsa_key.pub:ECDSA 公钥。
  • /etc/ssh/ssh_host_key:用于 SSH 1 协议版本的 RSA 私钥。
  • /etc/ssh/ssh_host_key.pub:用于 SSH 1 协议版本的 RSA 公钥。
  • /etc/ssh/ssh_host_rsa_key:用于 SSH 2 协议版本的 RSA 私钥。
  • /etc/ssh/ssh_host_rsa_key.pub:用于 SSH 2 协议版本的 RSA 公钥。
  • /etc/pam.d/sshd:PAM 配置文件。

注意,如果重装 sshd,上面这些密钥都会重新生成,导致客户端重新 ssh 连接服务器时,会跳出警告,拒绝连接。为了避免这种情况,可以在重装 sshd 时,先备份/etc/ssh目录,重装后再恢复这个目录。

配置文件sshd_config的格式是,每个命令占据一行。每行都是配置项和对应的值,配置项的大小写不敏感,与值之间使用空格分隔。

Port 2034

上面的配置命令指定,配置项Port的值是2034Port写成port也可。

配置文件还有另一种格式,就是配置项与值之间有一个等号,等号前后的空格可选。

Port = 2034

配置文件里面,#开头的行表示注释。

# 这是一行注释

注意,注释只能放在一行的开头,不能放在一行的结尾。

Port 2034 # 此处不允许注释

上面的写法是错误的。

另外,空行等同于注释。

sshd 启动时会自动读取默认的配置文件。如果希望使用其他的配置文件,可以用 sshd 命令的-f参数指定。

$ sshd -f /usr/local/ssh/my_config

上面的命令指定 sshd 使用另一个配置文件my_config

修改配置文件以后,可以用 sshd 命令的-t(test)检查有没有语法错误。

$ sshd -t

配置文件修改以后,并不会自动生效,必须重新启动 sshd。

$ sudo systemctl restart sshd.service
© 2017~ 随风逐叶 all right reserved,powered by Gitbook文章修订时间: 2023-06-15 17:23:46

results matching ""

    No results matching ""