Search code examples
amazon-ec2sshufw

How can i connect to ec2 if i close port 22 using ufw?


I cant connect to my instance on ec2. All was ok early, and I think now problem in ufw.

When I configured my server I enable ufw for 80 port and maybe its disable 22 port. Because early all was ok, but now i cant connect by ssh.

How can i connect to my ec2 instance and allow 22 port again?


Solution

  • You could use the following simplest way (user-data) to turn off the ufw then access the instance and edit your firewall.

    1. stop the instance
    2. Edit the user data to disable the ufw once and let you access the instance
    3. start the instance

    Following is the user data:

    Content-Type: multipart/mixed; boundary="//"
    MIME-Version: 1.0
    
    --//
    Content-Type: text/cloud-config; charset="us-ascii"
    MIME-Version: 1.0
    Content-Transfer-Encoding: 7bit
    Content-Disposition: attachment; filename="cloud-config.txt"
    
    #cloud-config
    cloud_final_modules:
    - [scripts-user, once]
    
    --//
    Content-Type: text/x-shellscript; charset="us-ascii"
    MIME-Version: 1.0
    Content-Transfer-Encoding: 7bit
    Content-Disposition: attachment; filename="userdata.txt"
    
    #!/bin/bash
    sudo ufw disable
    --//
    

    See my answer here enable firewall port 22 on ec2 server after disable it