AWS 上利用 EC2 和 S3 搭建免费私人网盘

LalaPodo
首页
技术博客
云原生学院
avatar

原文: https://www.lalapodo.com/lalapodoblog/4

在这里插入图片描述

AWS 上利用 EC2 和 S3 搭建免费私人网盘
网盘现在在我们日常中不可或缺。很多公司都为个人和企业提供网盘服务。但这些服务都有一些限制,比如下载速度,文件大小等等。如果想取消这些限制,就要付费。现在我们来自己搭建一个私人网盘。

这里我使用NextCloud进行搭建,它是一款基于php开发的开源网盘应用。

开始操作步骤:

1.创建 IAM 用户

请确保您位于美国东部(弗吉尼亚北部)us-east-1 区域

顶部菜单导航到 IAM

单击添加用户该按钮以创建新的 IAM 用户

在添加用户部分,设置用户详细信息:

用户名:随喜好填写任意用户名

在选择AWS 访问类型部分,选择AWS 凭证类型为访问密钥 - 编程访问和密码

单击下一步设置权限:现在,您可以看到策略列表

单击直接附加现有策略,搜索AmazonS3FullAccess并选择它

现在点击下一页:标签按钮。无需更改

单击下一步:“审核"按钮查看选择是否有误,然后单击"创建用户”

现在您会得到访问密钥 ID和私有访问密钥,请保存好它

2.创建 EC2 实例

请确保您位于美国东部(弗吉尼亚北部)us-east-1 区域。

顶部菜单导航到 EC2

左侧面板,单击实例,然后单击启动新实例。

(1)名称和标签:随意填写即可,这是实例的显示名称。

(2)应用程序和操作系统映像:选择Amazon Linux镜像Amazon Linux 2 AMI

(3)选择实例类型:t2.micro即可

(4)密钥对:选择账户中存在的密钥对或者新创建

(5)网络设置:勾选允许来自互联网的 HTTP/S 流量

(6)配置存储:保持默认即可

(7)最后启动实例

3.为 EC2 实例分配弹性IP

EC2左侧面板,单击弹性 IP,然后单击分配弹性 IP 地址按钮。

直接点击分配按钮即可。

最后点击刚刚分配的弹性IP将其附加至启动好的EC2实例。

请记下这个弹性IP地址,后面会使用它来访问网盘。

4.进入 EC2 实例安装NextCloud

左侧菜单回到EC2选项

选中刚刚创建的EC2实例点击连接,选择使用SSH客户端

根据操作步骤连接至EC2

输入以下命令开始安装步骤:

切换root用户

(1)sudo su

安装httpd 并配置启动

(2)yum install httpd -y

(3)systemctl start httpd

(4)systemctl enable httpd

安装php7 并安装相关依赖

(5)amazon-linux-extras install php7.4 -y

(6)yum install php php-curl php-fpm php-mysqlnd php-opcache php-gd php-xml php-mbstring php-common php-json php-zip -y

安装玛丽亚DB 并配置启动

(7)yum install mariadb-server -y

(8)systemctl enable --now mariadb

进入玛丽亚DB 为NextCloud创建数据库

(9)mysql -u root -p

(10)CREATE DATABASE nextclouddb;

(11)EXIT;

下载最新版NextCloud并配置httpd 让其可供访问

(12)wget https://download.nextcloud.com/server/releases/latest.zip

(13)unzip latest.zip

(14)mv nextcloud /var/www/html

(15)mkdir -p /var/www/html/nextcloud/data

(16)chown -R apache:apache /var/www/html/nextcloud/

(17)vim /etc/httpd/conf.d/nextcloud.conf

(18)粘贴以下config配置 并保存退出

<VirtualHost *:80>
ServerName nextcloud.example.com
DocumentRoot /var/www/html/nextcloud
ErrorLog /var/www/html/nextcloud/error.log
CustomLog /var/www/html/nextcloud/requests.log combined

允许httpd访问文件/var/www/html/nextcloud/并重启服务

(19)chown -R apache:apache /var/www/html/nextcloud/

(20)chmod -R 755 /var/www

(21)rm -f /etc/httpd/conf.d/welcome.conf

(22)systemctl restart httpd

5.访问 EC2 实例公有IP完成NextCloud安装

用浏览器打开EC2的IP地址或域名,注意使用http协议

应该显示以下页面

输入任意用户名和密码以注册管理员账户

存储和数据库选项选择MySQL/MariaDB

数据库用户:root

数据库密码:留空

数据库名:nextclouddb

数据库主机:localhost:3306

最后点击安装即可。

等待安装完成。

推荐应用界面点击跳过。

即可来到NextCloud主界面。

6.配置S3存储桶为外部存储

目前为止,网盘已经搭建完成,现在使用的是免费的EBS作为网盘存储介质。

如果您需要更大的空间,更好的持久性,我们可以配置网盘利用S3作为外部存储。

点击右上角个人,选择应用,在已禁用的应用中找到External storage support,点击启用按钮。

点击右上角个人,选择管理设置,在管理选项中找到外部存储,点击增加外部存储,类型选择Amazon S3。

认证选项选择Access Key,配置选项Bucket填写存储桶名称(可以是已存在的或者新建存储桶)。

区域处填写S3存储桶所在区域。

下方Access Key和Secret Key填写IAM用户的访问密钥。

最后点击三个点图标保存一下即可。

7.验证外部S3存储。

顶部点击文件,选择外部存储,点击Amazon S3

现在可以看到S3存储桶内部的文件

现可以进行文件的上传和下载验证网盘已搭建成功。

LalaPodo

Copyright © 2023 - LalaPodo Education INC. All rights reserved.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值