设置AWS ec2服务器直接使用密码登录
搞一个aws账号,创建了一个ec2,用的ubuntu镜像,不过发现ec2不能直接用账号密码登录,需要用证书登录,好吧,那就用证书登录吧
在 putty->Connection->Auth->Private key file for authentication
里选择在aws下载的私钥证书 xxx.pem, 然后登陆,结果提示如下错误:
Unable to use key file "xxx.pem" (OpenSSH SSH-2 private key)
What? 不能使用OpenSSH SSH-2 private key,密钥有问题?什么情况?好吧,没用过证书登录,以前都是直接用账号密码登录的,这有点尴尬,搜了一下,貌似是OpenSSH私钥与putty使用的私钥格式有点不一样,需要转换一下,好吧,去 https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 这里下载一个puttygen.exe
在puttygen->Conversions->Import Key->Save private key
里把在aws下载的私钥证书 xxx.pem 转换为 xxx.ppk,再用putty尝试登陆,结果提示如下:
Please login as the user "ubuntu" rather than the user "root".
好吧,这镜像还是默认禁用root的,那就用ubuntu登陆吧,OK,登陆成功,这,虽说用证书是免密登陆,不过这一顿操作,反正也是测试服务器,还是改成账号密码登录吧
编辑 /etc/ssh/sshd_configsudo vim /etc/ssh/sshd_config
修改 PermitRootLogin prohibit-password
为 PermitRootLogin yes
这是设置允许root登陆
修改 PasswordAuthentication no
为 PasswordAuthentication yes
这是设置允许使用账号密码登录
保存退出并重启ssh服务sudo service ssh restart
哦对,还差一步,要重置root的密码
sudo passwd root
OK,现在就可以直接使用账号密码登录,也可以使用root账号直接登陆了。