标签归档:CentOS

AWS EC2 CentOS 如何开启 SSH root 登录?

前几天电报上看到「博客园的一封求助信」(截图),通过推荐链接成功注册 AWS 账户并通过审核,可获得赠送50元京东E卡,加上又想体验一下免费一年 AWS EC2,于是又注册了一个新 AWS 账户~

AWS EC2 CentOS 如何开启 SSH root 登录?

AWS EC2 CentOS 7 SSH 默认使用用户名 centos,密钥,22 端口连接 VPS。登录后使用 sudo -i 即可切换至 root 用户,一般没必要开启 SSH root 直接登录,不过老杨习惯了,也就顺手折腾上,方法类似 GCP甲骨文

修改 sshd_config

切换到 root 用户:

sudo -i

编辑 sshd_config:

vi /etc/ssh/sshd_config

下面是参考配置:

PermitRootLogin yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no

重启 sshd 服务:

service sshd restart

这时候使用 root 登录还是会提示:

Please login as the user "centos" rather than the user "root".

玄机在 /root/.ssh/authorized_keys 文件,root 用户下打开 authorized_keys 文件:

vi /root/.ssh/authorized_keys

文件内容类似如下:

no-port-forwarding,no-agent-forwarding,no-X11-forwarding,command="echo 'Please login as the user \"centos\" rather than the user \"root\".';echo;sleep 10" ssh-rsa AAAAB3NzaC1ycxEAAAADAQABAAABAQCYHOUR.COMW+eFoWFRTZTRGOLs/W6V2TR1TJCgb1uG1eTP8nsXci1oPuo1GtCiqGBQ5Z9+9vDeHS+mtsXeHzguo38Ld8bWiGaygVG+rwHuzDpM0ntZNS9S3/rLAmbzxvXrfhSUyB7NVKRIscp+Ww0EpBUyr1J4TZH6p15ddic/CYHOUR.COMg7CTePcEu9X9ucWDL609qJbb1uyna1a3jIBXIkaWWJddNtD9t+zM5r56tsQRp1024joCLb+oHkd7s435ecLufSAYvdvGy7oblHhhKhKo6Og1EVsY/LKl5FGo+9B6Mhoszr9fWTKg6kwPmRHAikFDijL51vHL aws-jp

把 ssh-rsa 前面的内容:

no-port-forwarding,no-agent-forwarding,no-X11-forwarding,command="echo 'Please login as the user \"centos\" rather than the user \"root\".';echo;sleep 10" 

删除掉,保存退出,重启 sshd 服务:

service sshd restart

如无意外即可使用 root 用户直接 SSH 登录。

还可以脚本一键安装最新内核开启 BBR

另外,如果修改了 SSH 端口,得在 AWS 入站规则 处放心新 SSH 端口,源 0.0.0.0/0

附:Amazon Web Services (AWS) 注册教程

原文:云计算之路-出海记:蹭一张 AWS 船票