Jan
27
2021
在Linux系统的ECS实例中SSH服务启动时出现如下错误“fatal: Cannot bind any address”
问题描述
Linux系统的ECS实例服务器启动SSH服务时,命令行或Secure日志出现类似如下错误信息。
FAILED. fatal: Cannot bind any address. address family must be specified before ListenAddress.
问题原因
SSH服务的AddressFamily参数用于指定运行时使用的协议簇。如果配置只使用了IPV6,而系统内没有启用IPV6、或IPV6协议没有得到有效配置,就可能会导致出现该问题。
用户告知
本文相关配置及说明在CentOS 7.6 64位操作系统中进行测试。其它类型版本操作系统配置可能有所差异,具体情况请参阅相应操作系统官方文档。
解决方案
阿里云提醒您:
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
解决步骤如下。
- 通过管理终端进入系统。
-
通过
cat
命令查看/etc/ssh/sshd_config
中是否包含类似如下配置。AddressFamily inet6
注:常用参数说明如下。
-
inet
使用 IPV4 协议簇,为默认值。 -
inet6
使用 IPV6 协议簇。 -
any
同时启用 IPV4 和 IPV6 协议簇。
-
-
使用
vi
等编辑器,将参数值设置为inet
,或者整个删除或注释(在最开头添加#
号)整行配置,操作类似如下。# AddressFamily inet
注:确认AddressFamily参数在
ListenAddress
之前配置,方能生效。
如果您有其他问题,可以联系汉中创云互联阿里云代理商,为您提供一对一专业全面的技术服务,同时新老阿里云会员,均可享受我公司代理商价格,欢迎咨询!
本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。
我有话说: