![cover](https://img-blog.csdnimg.cn/img_convert/e710553a2f886f54b3bb674cbfbfc2f7.png)
AWS 创建EC2及使用ssh登录
AWS EC2创建的区域即右上角你选择的服务器决定。目前成都测试,下午电信联通环境下,都是绕北京到AWS 日本 首尔线路十分拥堵掉包严重,所以建议可以考虑AWS 新加坡区域,测试发现是直接从香港出海,掉包率较低。1 AWS后台创建EC2实例1 登录AWS EC2控制台并选择EC2服务进入EC2控制界面点击启动实例(确定拥有足够权限)2 选择你需要为EC2预装的操作系统版本,这里我选择ubu...
1 AWS后台创建EC2实例
1 登录AWS EC2控制台并选择EC2服务进入EC2控制界面点击启动实例(确定拥有足够权限)
2 选择你需要为EC2预装的操作系统版本,这里我选择ubuntu
3 选择想要使用的机型,这里选t2.micro 1核1G 作为测试环境(Global 全球区免费套餐机型),比较便宜。
4 配置网络环境公网ip及子网,直接默认 下一步即可,会自动分配公网ip。
5配置存储,存储默认只有8G后面要加自己配置更多存储,因为免费套餐内有30G(Global),但注意你免费套餐是否过期。下一步 配置标签 也直接默认跳过。
6 配置安全组控制端口开放的情况,默认开放22端口,其他需要可后续配置 。
安全组就相当于防火墙,默认只有22端口开启,如果要使用其他端口提供服务如80 443 等需要自行配置安全组并配置相应协议及端口。 中国区AWS 80 443 端口需要向AWS备案才能开放,即配置了安全组也无法使用。
7 review配置并启动EC2
8 最后创建新的证书,生成并下载用于登录EC2的证书(如果在该区域已经创建过可以选择现有证书) 重要
妥善保存证书,该证书只能下载一次。
2 连接到EC2并创建Linux账户
2.1 使用根账户登录到EC2
Linux环境 SSH登录EC2
sudo ssh ubuntu@54.xxx.xxx.24 -i test.pem
ubuntu 系统默认管理员账户为ubuntu -i 为使用密匙登录
windows 环境 xshell 工具登录EC2
这里就已经成功登录得到AWS EC2了
2.2 创建Linux账户并配置证书
但上述使用过程并不安全,我们应该为每个用户创建Linux账户 进行权限管理。
2.2.1 创建密匙并生成公匙
这现在AWSEC2控制台为待创建的Linux用户创建登录用的密匙
1 创建并下载私有密匙
输入密匙对名后会自动下载对应密匙。
2 生成公匙
在linux shell或windows cmd中执行下面命令:
ssh-keygen -y 私匙路径(刚才下载得到)
如:
sudo ssh-keygen -y -f usera.pem
然后命令就会输出公匙请妥善保存,如下:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V
hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr
lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ
qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb
BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE
2.2.2 创建linux账户并配置密匙
这里我们使用默认ubuntu登录到EC2上
sudo ssh ubuntu@54.xxx.xxx.24 -i test.pem
1 创建一个新账户
sudo adduser newuser #newuser即为待创建的用户名 如下:sudo adduser usera
输入账户的密码及信息
2 给予该账户sudo权限
sudo vi /etc/sudoers
找到这一行:“root ALL=(ALL) ALL"在起下面添加"xxx ALL=(ALL) ALL”(这里的xxx是你的用户名),然后保存退出。
usera ALL=(ALL:ALL) ALL
3 配置密匙
切换到新创建的账户
sudo su usera
cd ~
切换到新账户及用户目录下,以便使新建的文件具有正确的所有权。
在 newuser 主目录中创建一个 .ssh 目录,并将其权限更改为 700 (只有文件所有者能够读取、写入或打开该目录。
mkdir .ssh
chmod 700 .ssh
在 .ssh 目录中创建名为
authorized_keys 的文件并将其权限更改为 600 (只有文件所有者能够读取或写入此文件)。
touch .ssh/authorized_keys
chmod 600 .ssh/authorized_key
使用您常用的文本编辑器 (如 vim 或 nano) 打开 authorized_keys 文件。
vim .ssh/authorized_keys
将您的密钥对的公有密钥(2.1中第二步生成的密匙) 粘贴到该文件并保存更改。例如:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClKsfkNkuSevGj3eYhCe53pcjqP3maAhDFcvBS7O6V
hz2ItxCih+PnDSUaw+WNQn/mZphTk/a/gU8jEzoOWbkM4yxyb/wB96xbiFveSFJuOp/d6RJhJOI0iBXr
lsLnBItntckiJ7FbtxJMXLvvwJryDUilBMTjYtwB+QhYXUMOzce5Pjz5/i8SeJtjnV3iAoG/cQk+0FzZ
qaeJAAHco+CY/5WrUBkrHmFJr6HcXkvJdWPkYQS3xqC0+FmUZofz221CBt5IMucxXPkX4rWi+z7wB3Rb
BQoQzd8v7yeb7OzlPnWOyN0qFU0XA246RA8QFYiCNYwI3f05p6KLxEXAMPLE
用户现在应该能够使用对应添加到
authorized_keys 文件的公钥的私有密钥(2.1中下载的密匙 )登录实例上的 newuser 账户。**确保密匙对公匙复制正确,Linux复制很容易缺头或缺尾 **
2.2.3 登录
sudo ssh -i usera.pem usera@54.xxx.xxx.24
完成登录
2.2.4 Ubuntu 22.04 ssh登录失败
在 ssh高版本中 ssh-rsa 类型,属于不支持的公钥类型,会导致登录失败。所以可以生成证书时就生成ED25519 格式证书或
修改配置文件支持 ssh-rsa
sudo vi /etc/ssh/sshd_config
/etc/ssh/sshd_config文件末尾增加一行PubkeyAcceptedAlgorithms +ssh-rsa
修改完/etc/ssh/sshd_config配置文件后重启sshd服务,执行 sudo systemctl restart sshd
![Logo](https://devpress.csdnimg.cn/79de2bf0b7994defa4242ef90d5513fa.jpg)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)