/etc/ssh/sshd_config配置文件各选项的作用
时间: 2023-05-18 22:05:35 浏览: 181
1. Port:指定SSH服务监听的端口号,默认为22。
2. Protocol:指定SSH服务使用的协议版本,可以是SSH-1或SSH-2。
3. HostKey:指定SSH服务使用的主机密钥文件路径,用于加密和解密数据。
4. LoginGraceTime:指定SSH客户端连接到服务器后的登录超时时间,单位为秒。
5. PermitRootLogin:指定是否允许root用户通过SSH登录,默认为yes。
6. StrictModes:指定是否启用严格模式,即检查用户家目录和.ssh目录的权限是否正确。
7. MaxAuthTries:指定SSH客户端尝试登录的最大次数,超过该次数将被拒绝登录。
8. MaxSessions:指定SSH服务允许的最大会话数。
9. PasswordAuthentication:指定是否允许使用密码进行身份验证,默认为yes。
10. PubkeyAuthentication:指定是否允许使用公钥进行身份验证,默认为yes。
11. AuthorizedKeysFile:指定SSH服务使用的公钥文件路径。
12. X11Forwarding:指定是否允许X11转发,默认为no。
13. TCPKeepAlive:指定是否启用TCP保持活动连接,默认为yes。
14. ClientAliveInterval:指定SSH客户端发送保持活动连接的间隔时间,单位为秒。
15. ClientAliveCountMax:指定SSH客户端发送保持活动连接的最大次数,超过该次数将断开连接。
相关问题
逐条注释 ``` if grep -q "Protocol" /etc/ssh/sshd_config then sed -i '/Protocol/s/^#//' /etc/ssh/sshd_config sed -i "s/Protocol.*/Protocol 2/g" /etc/ssh/sshd_config else echo 'Protocol 2' >> /etc/ssh/sshd_config fi if grep -q "PrintMotd" /etc/ssh/sshd_config then sed -i '/PrintMotd/s/^#//' /etc/ssh/sshd_config sed -i "s/PrintMotd.*/PrintMotd yes/g" /etc/ssh/sshd_config else echo "PrintMotd yes" >> /etc/ssh/sshd_config fi service sshd restart systemctl restart sshd.service ```
这段脚本的作用是修改/etc/ssh/sshd_config文件中的SSH配置,并重新启动SSH服务。具体解释如下:
```shell
if grep -q "Protocol" /etc/ssh/sshd_config
then
sed -i '/Protocol/s/^#//' /etc/ssh/sshd_config
sed -i "s/Protocol.*/Protocol 2/g" /etc/ssh/sshd_config
else
echo 'Protocol 2' >> /etc/ssh/sshd_config
fi
```
- 检查/etc/ssh/sshd_config文件中是否存在"Protocol"这一行。
- 如果存在,则使用sed命令将该行的行首的注释符号#去掉,即取消注释。
- 然后使用sed命令将该行的值修改为"Protocol 2",即设置SSH协议版本为2。
- 如果不存在,则在文件末尾添加一行"Protocol 2"。
```shell
if grep -q "PrintMotd" /etc/ssh/sshd_config
then
sed -i '/PrintMotd/s/^#//' /etc/ssh/sshd_config
sed -i "s/PrintMotd.*/PrintMotd yes/g" /etc/ssh/sshd_config
else
echo "PrintMotd yes" >> /etc/ssh/sshd_config
fi
```
- 检查/etc/ssh/sshd_config文件中是否存在"PrintMotd"这一行。
- 如果存在,则使用sed命令将该行的行首的注释符号#去掉,即取消注释。
- 然后使用sed命令将该行的值修改为"PrintMotd yes",即启用SSH登录时显示欢迎信息。
- 如果不存在,则在文件末尾添加一行"PrintMotd yes"。
```shell
service sshd restart
systemctl restart sshd.service
```
- 重新启动SSH服务,使配置生效。这两行命令可能根据Linux发行版的不同而有所区别,用于重启SSH服务。
cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_bak -p是什么意思
`cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_bak` 是一个命令行操作,用于在Linux或类Unix系统中使用`cp`(copy)命令将文件进行备份。这里参数解释如下:
- `cp`: 是复制文件的命令。
- `-p`: 这个选项表示"preserve",即在复制文件时保留所有属性,包括权限、所有权和时间戳。这样可以确保源文件的详细信息在目标文件中也被保留,这对于备份配置文件等重要文件尤其重要,因为它们通常包含系统的敏感设置。
所以,这条命令的意思是将 `/etc/ssh/sshd_config` (sshd服务的配置文件) 文件精确地复制一份,并保存为 `/etc/ssh/sshd_config_bak` (备份文件名),保留了原始文件的所有属性。
阅读全文