2014-03-30 92 views
1

我是防火牆新手。我今天早些時候在ec2實例上玩iptables,但現在我無法通過ssh連接 - 「連接超時」。控制檯顯示實例正在運行,並且ssh密鑰很好,ping成功。 所以我的結論是,我可能禁用/禁止在使用iptables時使用ssh端口連接。AWS EC2實例 - ssh「連接超時」懷疑iptables

有沒有辦法在不進行完整重新安裝的情況下撤消更改?

注:我沒有獲得外殼,因爲我無法通過SSH

+0

使用'iptables-save'保存所有iptables規則以供參考,並使用'iptables -X -F'清除所有規則 – clement

回答

2

從AWS控制檯應該做一個簡單的重新啓動。希望你沒有在實例中啓用iptables服務,以便它在啓動時啓動。

如果你啓用了iptables服務,你將不得不創建另一個實例,instance B(希望你正在使用EBS實例)。同時假設你原來的實例instance A

  1. instance A
  2. 拆下根EBS卷附上EBS卷instance B爲說的/ dev/xvdf
  3. instance B運行:mkdir -p /mnt/xvdf; mount /dev/xvdf /mnt/xvdf
  4. 修復您的音量安裝在/mnt/xvdfinstance B
  5. 卸載量從instance Bumount /mnt/xvdf
  6. 以root身份將卷附加回instance A
  7. 重啓instance A

如果您正在使用instance-store類型,你的運氣了實例。

1

如果你確實在軟管防火牆設置,你可以試試這個:

停止實例。啓動另一個實例並將原始實例的卷附加到新實例。裝入卷,將iptables修復到安裝的卷中。然後分離並重新將卷連接到原始實例(例如/ dev/sda1)並重新啓動原始實例。

或者,也許你早先從實例中創建了一個AMI,然後使用新密鑰從AMI啓動了一個新實例,但新密鑰不起作用?嘗試使用嵌入原始實例中的密鑰時,舊密鑰可能仍然有效。