我在EC2 ubuntu服务器12.04实例中激活了ufw防火墙,但我忘了允许访问端口22.现在我无法通过ssh连接到该实例。此实例是EBS支持的。
答案 0 :(得分:21)
好吧,多亏了EBS,有一个解决方案。
答案 1 :(得分:2)
第1步:
在实例设置中打开查看/更改用户数据。
第2步:
添加脚本(如下所述)并保存。
#cloud-config
bootcmd:
- cloud-init-per always fix_broken_ufw_1 sh -xc "/usr/sbin/service ufw stop >> /var/tmp/svc_$INSTANCE_ID 2>&1 || true"
- cloud-init-per always fix_broken_ufw_2 sh -xc "/usr/sbin/ufw disable>> /var/tmp/ufw_$INSTANCE_ID 2>&1 || true"
第3步: 重新启动实例:(机器的ip将被更改) 脚本将在启动时执行,ufw将被禁用。
现在我们可以通过ssh连接实例。
参考:https://github.com/ibrahim45/configuration/blob/master/boot_script_instance.md