如何解决注释中的分号引起了hosts.allow中的错误
我正在尝试自动执行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连接。
解决方法
来自hosts.allow(5)
man page:
空白行或开始带有“#”字符的行将被忽略。这使您可以插入注释和空格,以使表更易于阅读。
该行必须以#
开头才能进行注释,但不允许在规则中间插入它们。
因此,您应该更改脚本以编写类似以下内容的
#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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。