实战案例 | 使用 Amazon EC2 实例快速搭建网站服务器


  项目需求

本次项目旨在快速搭建并配置 Amazon EC2 实例,以满足开发测试环境的需求。具体要求为创建一个具备基本网络连接和安全防护的 EC2 实例,安装必要的软件和服务,使其能够作为一个稳定的 Web 服务器运行简单的静态网站。同时,要确保实例的访问安全,仅允许特定 IP 地址的用户访问。

  解决方案

本次的解决方案,选择 Amazon EC2 作为计算资源。使用 Amazon Linux 2023 操作系统,它具有与 AWS 服务良好的兼容性和稳定性。在安全方面,通过安全组设置入站和出站规则,限制访问来源。此外,使用 Elastic IP 为实例提供固定的公网 IP 地址,方便外部访问。对于 Web 服务器软件,选择 Apache,它是一款广泛使用且功能强大的 Web 服务器。

  作业步骤

本次采用AWS Console界面完成作业。
注意:根据项目的具体情况,可以采用不同的实施方法。比如使用命令行(CLI)部署、代码部署 (CloudFomation、Terraform等)、以及其它开发语言(SDK)完成作业。

步骤一:创建 EC2 实例
登录 AWS 管理控制台,进入 EC2 服务页面。点击“启动实例”,选择 Amazon Linux 2023 镜像。选择合适的实例类型为 t2.micro 。配置实例详细信息。网络、子网等,保持默认设置即可。添加存储,根据需求设置磁盘大小。

步骤二:配置安全组
创建新的安全组,为实例设置访问规则。添加一条入站规则,允许来自特定 IP 地址(比如,你正在使用 PC 的公共 IP 地址)的 HTTP(端口 80)和 SSH(端口 22)访问。出站规则保持默认的全开放状态。

步骤三:启动实例并分配 Elastic IP
完成实例配置后,点击“启动”,选择或创建密钥对(用于 SSH 登录实例)。启动成功后,为实例分配一个 Elastic IP,确保实例的公网 IP 地址固定不变。

步骤四:安装和配置 Apache
通过 SSH 登录到 EC2 实例,使用命令 sudo yum install httpd -y 安装 Apache。安装完成后,启动 Apache 服务:sudo systemctl start httpd,并设置开机自启:sudo systemctl enable httpd。

步骤五:部署静态网站
在本地创建简单的静态网站文件(如 index.html),通过 SCP 命令将其上传到 EC2 实例的 /var/www/html 目录下。

  结果验证

1. 在本地浏览器中输入 EC2 实例的 Elastic IP 地址,可以看到部署的静态网站页面,说明 Apache 服务器正常运行且网站部署成功。
2. 尝试从非指定的 IP 地址访问实例,可以看到无法连接,说明安全组的访问限制生效。
3. 通过 sudo systemctl status httpd 命令检查 Apache 服务状态,显示为“active (running)”,验证服务器运行正常。
4. 验证结束后,删除不再使用 AWS 资源,以免产生不必要的费用。