【问题标题】:Error in hosts.allow due to semicolon in comment [closed]由于评论中的分号导致hosts.allow错误[关闭]
【发布时间】:2020-12-01 13:37:00
【问题描述】:

我正在尝试使 hosts.allow 中的条目自动化(我有一组要添加的预定义 IP)。我的脚本执行良好,并在 hosts.allow 中写入了以下条目 -

ALL:A.B.C.D      #AddedByNayasa-06-Aug-2020(00:36:58)
ALL:W.X.Y.Z      #AddedByNayasa-06-Aug-2020(00:36:58)

其中 A、B、C、D、W、X、Y、Z 是公共 IP 的数量。 # 后面的文字是脚本添加的标记,让用户知道它不是人为添加的,而是脚本添加的。 问题是由于时间戳中的分号引起的。 sshd 在 /var/log/secure 中给出以下错误 -

/etc/hosts.allow, line 14: bad option name: "36"

我无法理解为什么 sshd 不将 分号 冒号视为注释的一部分并忽略它,因为它是在哈希之后编写的。一些线索真的很有帮助。由于这个错误,我也无法建立 ssh 连接。

【问题讨论】:

  • 你在哪里看到分号?分号是;,冒号是:
  • 注释不能放在行的中间,必须是整行。
  • 我的错,我的意思是冒号。

标签: linux networking ssh centos7 sshd


【解决方案1】:

来自hosts.allow(5)man page

空白行或以“#”字符开始的行将被忽略。这允许您插入 cmets 和空格,以便表格更易于阅读。

该行必须以# 开头才能使其成为注释,它们不允许出现在规则中间。

所以你应该改变你的脚本来写这样的东西:

#AddedByNayasa-06-Aug-2020(00:36:58)
ALL:A.B.C.D  
#AddedByNayasa-06-Aug-2020(00:36:58)    
ALL:W.X.Y.Z      

或更简洁:

#AddedByNayasa-06-Aug-2020(00:36:58)
ALL:A.B.C.D  
ALL:W.X.Y.Z 
#EndAddedByNayasa     

【讨论】:

    猜你喜欢
    • 2011-09-10
    • 1970-01-01
    • 2018-12-09
    • 1970-01-01
    • 2018-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-29
    相关资源
    最近更新 更多