use*_*096 6 linux unix shell bash iptables
我/etc/init.d/iptables start|stop|restart在不同的 ubuntu 服务器上有一个脚本(这是一个普通的 shell 脚本)
对于每个新服务,我必须编辑并插入一行以打开端口。这导致不同机器上有许多不同版本的 init.d 脚本。
是否可以自动包含假设所有文件/etc/iptables/include.d/?
目标是在/etc/init.d/iptables的启动函数中应该只有一行,如
include /etc/iptables/include.d/*
Run Code Online (Sandbox Code Playgroud)
在/etc/iptables/include.d/我添加了一个附加文件之后,我只想说
/etc/init.d/iptables restart
Run Code Online (Sandbox Code Playgroud)
编辑:正如 Saurabh 指出的那样,当命令需要特定顺序时,这可能会导致问题。高级设置可能有不同的目录,例如:
/etc/iptables/include01.d/
/etc/iptables/include02.d/
/etc/iptables/include03.d/
Run Code Online (Sandbox Code Playgroud)
并像这样包括它们:
包含 /etc/iptables/include01.d/*
...也许一些代码在主文件中......
包括/etc/iptables/include02.d/*
包括/etc/iptables/include03.d/*
rkt*_*hkr 11
将以下行添加到您的 init.d 脚本中。
run-parts --report /etc/iptables/include.d
Run Code Online (Sandbox Code Playgroud)
它将目录中的所有内容作为 shell 脚本(需要是可执行的)运行。
如果您只想执行以 .port 结尾的文件,您可以使用以下内容:
run-parts --regex '\.port$' /etc/iptables/include.d/
Run Code Online (Sandbox Code Playgroud)
如果您想确保顺序正确,您可以命名文件:
10_web.port
20_ssh.port
etc..
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8142 次 |
| 最近记录: |