Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ubuntu AWS EC2实例-ssh“;“连接超时”;怀疑iptables_Ubuntu_Ssh_Amazon Ec2_Firewall_Iptables - Fatal编程技术网

Ubuntu AWS EC2实例-ssh“;“连接超时”;怀疑iptables

Ubuntu AWS EC2实例-ssh“;“连接超时”;怀疑iptables,ubuntu,ssh,amazon-ec2,firewall,iptables,Ubuntu,Ssh,Amazon Ec2,Firewall,Iptables,我不熟悉防火墙。今天早些时候,我在ec2实例上玩iptables,但现在我无法通过ssh连接——“连接超时”。控制台显示实例正在运行,ssh密钥良好,ping成功。 因此,我的结论是,在使用iptables时,我可能已经禁用/禁止了ssh端口连接 有没有一种方法可以在不进行完全重新安装的情况下撤消更改 注意:我没有访问shell的权限,因为我无法ssh从AWS控制台简单地重新启动就可以了。希望您没有在实例中启用iptables服务,以便它在启动时启动 如果启用了iptables服务,则必须创建另

我不熟悉防火墙。今天早些时候,我在ec2实例上玩iptables,但现在我无法通过ssh连接——“连接超时”。控制台显示实例正在运行,ssh密钥良好,ping成功。 因此,我的结论是,在使用iptables时,我可能已经禁用/禁止了ssh端口连接

有没有一种方法可以在不进行完全重新安装的情况下撤消更改


注意:我没有访问shell的权限,因为我无法ssh

从AWS控制台简单地重新启动就可以了。希望您没有在实例中启用iptables服务,以便它在启动时启动

如果启用了iptables服务,则必须创建另一个实例,
实例B
(希望您使用的是EBS实例)。还假设您的原始实例是
实例A

  • 将根EBS卷与实例A分离
  • 将该EBS卷附加到
    实例B
    ,例如/dev/xvdf
  • 在实例B上运行:
    mkdir-p/mnt/xvdf;mount/dev/xvdf/mnt/xvdf
  • 修复安装在实例B上的
    /mnt/xvdf
    上的卷
  • 从实例B卸载卷:
    umount/mnt/xvdf
  • 将卷作为根目录重新附加到
    实例A
  • 重新启动
    实例A

  • 如果您使用的是
    实例存储
    类型的实例,则您运气不佳。

    如果您确实使用了防火墙设置,则可以尝试以下方法:

    停止实例。启动另一个实例并将卷从原始实例附加到新实例。装载卷,修复装载卷中的iptables。然后将卷分离并重新连接到原始实例(例如as/dev/sda1),然后重新启动原始实例


    或者您可能在前面用一个实例创建了一个AMI,然后使用一个新密钥从AMI启动了一个新实例,但新密钥不起作用?插入时尝试嵌入原始实例中的密钥,旧密钥可能仍然有效。

    使用
    iptables Save
    保存所有iptables规则以供参考,并使用
    iptables-X-F