[英]Python pxssh execute iptables not working
我正在使用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條目!
嘗試像這樣修改您的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命令
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.