/etc/ssh/sshd_config空白
时间: 2023-10-03 12:07:54 浏览: 133
/etc/ssh/sshd_config是一个SSH服务器的配置文件。它包含了许多参数来控制SSH服务器的行为。根据您提供的引用内容,我们可以看到一些参数的修改建议,以解决"permission denied (publickey)"的问题。
- 首先,将PermitRootLogin参数从no修改为yes。这将允许root用户使用SSH登录。
- 其次,将PubkeyAuthentication参数从yes修改为no。这将禁用基于公钥的身份验证。
- 最后,在AuthorizedKeysFile参数前加上#,屏蔽掉这行。这将取消对.ssh/authorized_keys文件的使用。
这些修改将允许使用密码身份验证登录SSH服务器。请注意,在进行任何修改之前,请务必备份原始配置文件,以防万一需要恢复。
相关问题
/etc/ssh/ssh_config 与 /etc/ssh/sshd_config的区别
/etc/ssh/ssh_config 是 SSH 客户端的配置文件,它用于设置客户端的连接参数。
/etc/ssh/sshd_config 是 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服务。
阅读全文