By default, ec2 instances don’t have password authentication. You have to use the private key to connect to the instances. However, you might have situations to use password-based authentication for your ec2 instances. In this tutorial, I have added the configurations required for password authentication for ec2 instances.
Password Authentication For AWS ec2
I assume that you have an instance up and running. Follow the steps given below for the password authentication setup.
Note: I higly discourage using password authentication on cloud instances unless required. It is always safe to use key based authentication.
Step 1: Log in to the server using ssh client of your choice using the private key. For Windows machines, you can use putty for connecting to the instance. If you want the steps, you can follow this article. Connecting ec2 instance using putty.
If you are using Mac or Linux, you can use the following command to connect to the instance.
1 | ssh -i your-key.pem username@(public-ip-address) |
Step 2: Open the sshd_config
file.
1 | sudo vi /etc/ssh/sshd_config |
Step 3: Find the Line containing “PasswordAuthentication” parameter and change its value from “no” to “yes“
1 | PasswordAuthentication yes |
If you want to set up “root” login, find “PermitRootLogin” parameter and change its value from “prohibit-password” to “yes“
After the changes, save the file and exit.
Info: Learn all AWS administration essentials using this AWS Certified SysOps Administrator course
Step 4: Setup a password for the user using the “passwd
” command along with the username. You need to enter the password twice. For example, if you want to set up a password for “ubuntu“, use the following command.
1 | sudo passwd ubuntu |
Step 5: Now, restart the “sshd” service using the following command.
1 | sudo service sshd restart |
Step 6: Now you can log out and log in using the password you set for the user. For example,
1 | ssh ubuntu@35.162.225.240 |
I hope this article helps. Let me know in the comment section if you face any errors.