Linux 使用工具修改ssh_配置
这是默认值,其中包含Linux 使用工具修改ssh_配置,linux,bash,puppet,augeas,Linux,Bash,Puppet,Augeas,这是默认值,其中包含#ForwardX11 no,我想更改它,所以我这样做了 augtool set "/files/etc/ssh/ssh_config/ForwardX11" yes 失败,但这会在主机* augtool set "/files/etc/ssh/ssh_config/Host/ForwardX11" yes 问题 为什么不augtool取消注释#ForwardX11 no 为什么我必须指定../Host/… 为什么下面的输出中缺少GSSAPIAuthentication
#ForwardX11 no
,我想更改它,所以我这样做了
augtool set "/files/etc/ssh/ssh_config/ForwardX11" yes
失败,但这会在主机*
augtool set "/files/etc/ssh/ssh_config/Host/ForwardX11" yes
问题
- 为什么不
取消注释augtool
#ForwardX11 no
- 为什么我必须指定
../Host/…
- 为什么下面的输出中缺少
和GSSAPIAuthentication yes
ForwardX11Trusted yes
主机
节点之后为全局设置创建条目是无效的。因此,您需要在第一个主机
条目之前插入新节点:
ins ForwardX11 before Host[1]
set ForwardX11 yes
如果愿意,您也可以在主机
条目中设置它,尽管这不是严格等效的(请参见manssh\u config
):
至于缺少的两个条目,它们不会出现在输出中,因为
ls
不是递归命令。如果您想递归地查看树,请使用print
。非常感谢!有没有办法在主机[1]之前ins ForwardX11
和从命令行设置ForwardX11 yes
,这样我就可以编写脚本了?您可以将这两个命令放在一个文件中,并使用augtool-f
运行它。请记住树中的插入不是幂等的,因此最好使用某种绑定(Ruby、Perl、PHP等)
ins ForwardX11 before Host[1]
set ForwardX11 yes
set Host[.='*'] * # Ensure the Host entry exists
set Host[.='*']/ForwardX11 yes