# 阿里云 ECS 配置
# 1. 新增密钥对
在阿里云 ECS 控制台的 密钥对管理 页面创建新密钥对:
- 下载生成的
key.pem
文件(私钥),该文件将用于后续连接服务器 - 密钥对绑定实例后,服务器会自动在
~/.ssh/authorized_keys
中写入公钥
# 2. 开放防火墙端口
在安全组配置中添加入方向规则,开放项目所需端口(如 80
、 443
、 22
):
- 授权对象建议设置为
0.0.0.0/0
(全开放)或指定可信 IP 段
# 服务器配置
# 1. 配置 SSH 密钥对
# 步骤一:sh 密钥对生成
ssh-keygen -t rsa -b 4096
执行完上面的命令,会生成两个文件,分别为 ~/.ssh/id_rsa(私钥)
和 ~/.ssh/id_rsa.pub(公钥)
。
# 步骤二:处理阿里云提供的密钥文件
- 将下载的
key.pem
内容覆盖本地~/.ssh/id_rsa
(私钥文件):1
2cat /path/to/key.pem > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa # 确保私钥仅用户可读 - 阿里云会自动将公钥写入服务器
~/.ssh/authorized_keys
,同时将~/.ssh/authorized_keys
的内容也复制到~/.ssh/id_rsa.pub(公钥)
1 | cat ~/.ssh/authorized_keys > ~/.ssh/id_rsa.pub(公钥) |
# 步骤三:启用公钥认证
编辑 SSH 客户端配置:
1 | vim /etc/ssh/sshd_config |
# 2. Github Action 配置
在 Github 仓库 Settings > Secrets > Actions 中添加以下机密:
名称 | 描述 | 值来源 |
---|---|---|
PRIVATE_KEY | 阿里云 key.pem 内容 | 复制文件全文(含首尾标记) |
HOST | 服务器公网 IP | 阿里云实例详情页 |
USER | 服务器登录用户 | 默认为 root 或自定义用户 |
# Github Action 工作流文件(main.yml)
1 | name: 自动化部署 |