iptables Bash函数中的错误参数`ACCEPT'

时间:2012-07-10 18:07:54

标签: bash function iptables

我正在尝试创建一个将远程VPS上的IP列入白名单的bash功能:

function whitelist-ip () { ssh vps-01 '/usr/bin/sudo /sbin/iptables -v -I INPUT 1 -s $1 -j ACCEPT'; }
  

[jdorfman@mba.local]:〜$ whitelist-ip 192.0.43.10

     

错误的论据'接受'

     

尝试使用iptables -h'或'iptables --help'获取更多信息。'

它适用于CLI:

  

[jdorfman@mba.local]:〜$ ssh vps-01'/ usr / bin / sudo / sbin / iptables -v -I INPUT 1 -s 192.0.43.10 -j ACCEPT'

     

接受所有选择* * * 192.0.43.10 - > 0.0.0.0/0

1 个答案:

答案 0 :(得分:3)

您硬命令该命令,因此$1不会扩展。请改用软引号:

 function whitelist-ip () { ssh vps-01 "/usr/bin/sudo /sbin/iptables -v -I INPUT 1 -s $1 -j ACCEPT"; }