我使用pxssh
建立与服务器的SSH连接。可以建立连接,我可以运行简单命令,例如ls -l
。
我现在需要的是通过SSH连接创建iptable条目。 我尝试了以下
s = pxssh.pxssh()
print(ip)
if not s.login(ip, username, auth_password):
Log("SSH session failed on login")
Log(str(s))
else:
Log("SSH session login successful")
cmd = 'sudo iptables -I INPUT -p udp -m udp --dport 53 -j ACCEPT;'
s.sendline(cmd)
s.prompt()
print(s.before)
s.logout()
运行没有错误,但是当连接到服务器时,没有创建iptable条目!?
答案 0 :(得分:1)
尝试修改你的python脚本:
cmd = '/usr/bin/sudo /usr/sbin/iptables -I INPUT -p udp -m udp --dport 53 -j ACCEPT'
s.sendline(cmd)
如果你的操作系统不同,你应该更改sudo和iptables路径
还尝试打印s.sendline(cmd)以查看通过服务器上的ptyhon脚本实际执行的内容,以确保执行正确的iptables命令