Hello! 欢迎来到小浪云!


SSH 服务错 fatal: Cannot bind any address


avatar
小浪云 2024-10-09 43


现象描述

Linux 实例启动 ssh 服务时,直接返回或在 secure 日志文件中出现类似如下错误信息:

FaiLED.

fatal: Cannot bind any address.

address family must be specified before ListenAddress.

可能原因

ssh 服务的 AddressFamily 参数配置不当。AddressFamily 参数用于指定运行时使用的协议簇,若参数仅配置了 IPv6,而系统内未启用 IPv6 或 IPv6 配置无效,则可能出现该问题。

处理步骤

  1. 使用 VNC 登录 Linux 实例
  1. 执行以下命令,使用 vim 编辑器进入 sshd_config 配置文件。

vim /etc/ssh/sshd_config

  1. 查看是否包含类似如下配置。

AddressFamily inet6

常用参数说明如下:

inet:使用 IPv4 协议簇,为默认值。

inet6:使用 IPv6 协议簇。

any:同时启用 IPv4 和 IPv6 协议簇。

  1. 按 i 进入编辑模式,修改为以下配置,或在行首增加 # 进行注释。

AddressFamily inet

注意:

AddressFamily 参数需在 ListenAddress 前配置才可生效。

  1. 按 Esc 退出编辑模式,并输入 :wq 保存修改。
  1. 执行以下命令,重启 ssh 服务。

service sshd restart

重启 ssh 服务后,即可使用 ssh 登录。

相关阅读