步骤1:先决条件
1。您希望上传到云的媒体。从现在开始,将当前存储媒体的设备称为客户端。
2。一台服务器。除非您打算要访问大量流量,否则服务器不必特别强大。我发现旧的戴尔计算机可以很好地用作云服务器。您需要担心的服务器主要部分是硬盘驱动器和内存。硬盘将数据存储在云中。硬盘驱动器的大小限制了可以在云中存储多少数据。服务器中的大量内存不是必需的,但是在传输大文件时可以提供帮助。我建议在云服务器中至少有1gb的内存。
3。 Ubuntu Server 14.04 LTS。这是将用于运行云的软件。该软件基于命令行,这意味着没有GUI。如果那让您担心,请不要惊慌!学习使用命令行令人兴奋。假设您按照本指南中的说明进行操作,则应该没有问题。在本指南中,我不会解释如何下载和刻录Ubuntu光盘,但是如果您需要帮助,请查看上一指南中的步骤2。
4。监视器。在服务器的初始配置期间,这是必需的。配置完成后,您可以取下显示器,键盘和鼠标。
此外,请确保将服务器放置在靠近路由器的以太网连接附近。与Wi-Fi相比,以太网连接非常重要,因为它更快,更可靠,如果您正在流传输电影等媒体,这将很有帮助。
接下来,我们将Ubuntu Server 14.04 LTS安装到服务器上。
步骤2:安装Ubuntu
1。首先将带有Ubuntu Server的CD/USB插入服务器。确保服务器设置为从USB引导。如果您不知道如何从CD/USB引导,请参阅此处的指南。 Ubuntu Server将加载,安装过程将开始。
2。首先,将显示语言屏幕。突出显示您的语言,然后按Enter继续。
3。接下来将显示Ubuntu Server启动屏幕。该屏幕包含用于安装和配置Ubuntu Server的服务器选项。突出显示“安装Ubuntu服务器”选项,然后按Enter继续。
4。接下来,在列表中突出显示适当的语言,然后按Enter继续。
5。在下一个屏幕上,突出显示您的位置,然后按Enter继续。
6。下一个屏幕将询问您是否希望Ubuntu检测键盘布局。非常欢迎您这样做,但是我通常选择不这样做。对于使用标准美式键盘的用户,您不需要使用此工具。按Enter继续。
7。下一个屏幕是键盘配置提示。突出显示您正在使用的键盘类型,然后按Enter继续。
8。一旦选择了键盘布局,Ubuntu可能会根据先前的选择要求您提供更具体的键盘布局。就我而言,Ubuntu只想知道我使用的是哪种英文(美国)键盘。突出显示适当的选项,然后按Enter(继续)。
9.接下来,Ubuntu将要求您为服务器提供一个主机名。主机名指的是如何在网络上知道服务器的名称。在我的演员表中,为简单起见,我为服务器指定了主机名“ ubuntu”。您可以为服务器指定任意主机名,但是请记住,本指南中使用的所有命令都将基于主机名“ ubuntu”。按Tab键,然后按Enter键继续。
10。然后,服务器将要求您在字段中输入您的姓名。您可以在此字段中输入所需的名称,因为它实际上没有任何意义。我选择在此字段中输入“服务器”。按Tab键,然后按Enter键继续。
11。接下来,安装程序将提示您输入服务器的用户名。用户名是用于访问服务器的登录凭据。在我的示例中,我选择了用户名“ server”。您可以为服务器提供所需的用户名,但是请记住,本指南中使用的所有命令都将基于用户名“ server”。按Tab键,然后按Enter键继续。
12。密码提示将出现在下一步。输入您在上一步中刚创建的用户的密码。按Tab键和Enter键继续。下一个提示将要求您重新输入密码。完成后,按Tab键和Enter键继续。
13。下一个提示符将询问您是否要加密主目录。如果您的计算机被盗,小偷将无法访问您的文件。加密为服务器增加了一层额外的安全保护,但同时也会降低性能。在此示例中,我选择不加密主目录。按Enter继续。
14。接下来是磁盘分区工具。因为在示例中我使用的是虚拟机,所以在安装中显示的选项可能与我的不同。假设您的硬盘驱动器不包含其他操作系统或分区,则应突出显示“引导-使用整个磁盘并设置LVM”或类似的东西。按Enter继续。
15。下一个提示符将要求您选择要分区的硬盘。如果服务器中仅安装了一个硬盘驱动器,它将是唯一显示的硬盘驱动器。如果服务器中安装了多个硬盘驱动器,请确保选择正确的磁盘。突出显示适当的选项,然后按Enter继续。
16。下一个屏幕将要求确认您的分区选择。查看您所做的选择,然后按Tab键,然后按Enter键继续。
17。 (可选)如果您使用虚拟机来安装Ubuntu Server(如本示例中的示例)。下一个提示将要求您输入选择用于Ubuntu的卷的百分比。输入适当的金额,然后按Tab键和Enter键继续。
18。 (可选)如果您使用的是虚拟机,则下一个提示将要求您在格式化驱动器之前确认选择。查看您的选择,然后按Tab和Enter继续。
19。如果您打算在您的Ubuntu服务器上使用代理,请在以下提示中输入代理,然后按Tab和Enter继续。如果没有,请按Enter继续。
20。然后,Ubuntu将提示您选择安装自动更新的方式。选择您想要的任何选项。我强烈建议您选择自动安装安全更新。高亮显示适当的选项,然后按Enter继续。
21。接下来,将显示一个软件选择提示。该提示列出了许多通常与Ubuntu Server结合使用的软件包。在我们的情况下,我们需要安装OpenSSH和LAMP Server。在这两个软件包的每一个上按空格键,然后按Tab和Enter继续。
22。然后,Ubuntu将安装您选择的所有软件包以及其他必要的软件包。在此过程中,安装程序将提示您输入MySQL的密码。输入密码,然后按Tab键和Enter键以继续。另一个提示将要求您重新输入密码。完成后,按Tab键和Enter键继续。请注意,您不必为MySQL输入密码,但是,我强烈建议您选择使用密码。
23。接下来,Ubuntu将询问您是否可以将GRUB安装到主引导记录中。 GRUB是Ubuntu用来加载其操作系统的工具。它也可以用作恢复工具。如果服务器上没有其他操作系统,请突出显示“是”,然后按Enter键继续。如果服务器上还有其他操作系统,请确定要使用哪个引导程序,并在此屏幕上进行适当的选择。
24。最后,Ubuntu将完成安装过程,并提示您重新引导服务器。按Enter继续。
此时,应该成功安装Ubuntu Server 14.04 LTS。接下来,将安装其他软件包以向服务器添加其他功能。
步骤3:配置Apache2
现在,需要配置Apache2。此配置允许自动脚本运行而不会遇到权限问题。首先,打开您的Ubuntu服务器。服务器启动后,终端将提示您输入用户名。输入您先前创建的用户名。在我的示例中,我将输入服务器。接下来,输入您为用户创建的密码。请注意,输入密码后屏幕上没有任何显示。成功登录后,键入:
sudo apt-get install apache2-utils
此软件包将安装可用于Apache 2的各种实用程序。完成后,将使用默认端口apache用于网络服务器的用途需要更改。默认情况下,Apache 2在端口80上侦听Web流量。由于许多ISP阻止在端口80上的传入流量,因此需要更改默认端口。如果未从端口80更改端口,则无法从外部网络访问Web服务器,这违背了云的目的。要更改默认端口号类型:
cd/etc/apache2
然后:
sudo nano ports.conf
此命令将打开文件名为ports.conf。需要将“侦听80”行更改为“侦听8080”。这会将端口apache2侦听从端口80更改为8080。大多数ISP都不会阻止此端口上的传入流量。完成后,按Ctrl + O,然后按Crtl + X保存文件并退出nano。
还有一个文件需要编辑,以确认从端口80更改为8080。类型:
启用了CD站点
然后
sudo nano 000-default.conf
将显示VirtualHost 80的行更改为VirtualHost8080。完成后,按Ctrl + O保存,然后按Ctrl + X退出。
接下来,要确保在将文件从客户端自动复制到服务器时没有权限问题,需要更改默认的Apache2操作目录。要更改默认目录,需要安装并激活userdir模块。为此,请键入:
sudo a2enmod userdir
安装完成后,请键入:
sudo service apache2 restart
这将重新启动apache2服务并更新apache2使用的默认路径。
接下来,键入cd将目录更改为主目录。然后键入:
mkdir public_html
这将创建apache2使用的文件夹。接下来,再次重新启动apache2以确保进行了更改。
类型:
sudo服务apache2 restart
最后,创建文件夹以存储最终将放置在云中的媒体。为此,请键入:
mkdir public_html/documents
mkdir public_html/pictures
mkdir public_html/movies
mkdir public_html/music
这将为文档,图片,电影和音乐创建目录。
现在已经配置了Apache2,但是在测试Web服务器之前,需要先配置路由器以进行端口转发。
步骤4:配置路由器
为了从外部网络访问云,必须将端口8080转发到服务器的IP地址。如果跳过端口转发,则路由器将继续阻止端口8080上的传入流量。
要进行端口转发,需要以下信息:
路由器的默认网关
服务器的本地ip地址。
要查找网络的默认网关,请键入命令route。路由器的默认网关将显示在“网关”字段中。网关将用于访问路由器配置实用程序。
要查找服务器的本地IP地址,请键入命令ifconfig。假设您的服务器通过有线连接与路由器连接,则该服务器的IP地址将列在eth0连接下。查找显示inet addr的字段。该地址后面的数字是服务器的本地IP地址。它应该看起来像192.168.xxx.xxx,其中x可以是0到255之间的任何数字。将这个数字写下来。
打开Web浏览器,然后在地址栏中键入默认网关地址。您的特定品牌路由器的路由器配置实用程序应打开。路由器很可能会要求用户名和密码,然后才能对配置进行任何更改。快速的Google搜索通常可以产生路由器的默认用户名和密码。
登录后,在网页上查找端口转发标签。我的路由器的端口转发页面在“应用程序和游戏”下列出,然后在“单端口转发”下列出。
在我的示例中,路由器要求我输入外部和内部端口号,以及将流量从该端口转发到的IP地址。在外部和内部端口号列中,我输入8080。在“到IP地址”列中,我输入192.168.2.186,这是服务器的本地IP。您的配置应该与此非常相似。
完成后,单击“保存”以保存设置。这应该是大多数路由器上唯一需要配置的东西。如果您的网络连接了外部防火墙,则可能需要允许8080端口上的流量通过。
既然路由器正在将流量转发到服务器,则该进行测试了。要从外部网络访问服务器,建议您使用手机的4G服务。要测试服务器,最后一个IP地址是必需的。在连接到本地网络的客户端上,在Google中键入“我的IP地址是什么”。然后,Google将显示您的公共IP地址。在连接4G的电话上,在Web浏览器的地址栏中键入以下内容:
PublicIPAddres:8080
其中PublicIPAddress是您的公共IP地址。 8080部分告诉Web浏览器访问端口8080而不是默认端口80上的网页。
如果apache2配置正确,则应显示apache2欢迎页面。在这种情况下,您就可以继续进行下一步了。如果看不到apache2页面,请确保使用正确的IP地址并正确执行了上述步骤。如果仍有问题,请在下面发表评论。
要访问先前创建的文档目录,可以键入:
PublicIPAddress :8080/〜用户名/documents
用服务器的用户名替换用户名。在我的示例中,我将输入服务器。地址的其余部分是您要访问的文件夹。例如,如果我想访问目录为〜/public_html/movies/UP!/的文件夹,则输入:
PublicIPAddress :8080/〜server/movies/UP!/
尽管已配置apache2,但它不是很安全。当前,任何人都可以访问Web服务器上的所有文件。为了防止这种情况的发生,下一步将使用用户名和密码验证系统。
步骤5:保护服务器
为防止整个世界访问您云中的媒体,需要实施密码身份验证。首先,通过键入以下内容将目录更改为public_html:
cd〜/public_html
然后
sudo nano .htaccess
不要忘记‘。 htaccess之前。点对用户隐藏文件。该文件将告诉Web服务器访问云需要用户名和密码。输入上述命令后,Nano将打开一个名为.htaccess的空白文件。在窗口中输入:
AuthType Basic
AuthName“需要密码”
AuthUserFile/home/用户名/。htpasswd
需要有效用户
确保将用户名替换为服务器的用户名。在我的示例中,用户名是server。
完成后,请按Ctrl + O保存并按Ctrl + X退出。下一个需要创建的文件是.htpasswd。该文件将包含云的已批准登录凭据的列表。
首先,键入cd将目录更改为主目录。
下一步,键入:
htpasswd -c/home/用户名/。htpasswd User
请确保将用户名替换为服务器的用户名,就像上面一样。另外,将 User 替换为您想要的任何名称。在 User 字段中指定的名称用作云的用户名。在我的示例中,我使用名称admin。输入后,服务器将创建.htpasswd文件,并提示您输入指定用户的密码。输入并确认您的密码以继续。
public_html目录中的所有文件夹现在都通过密码验证来保护。
要将其他用户添加到凭据列表中,请不要输入与上述相同的命令,而是键入:
htpasswd/home/用户名/。htpasswd 用户
如果键入与上述相同的命令,则最初创建的.htpasswd文件将被覆盖。
要在网络上测试密码身份验证-服务器。打开Web浏览器并输入:
PublicIPAddress :8080/〜用户名/
应出现一个框,提示您输入用户名和密码,以便访问页面上的内容。输入先前创建的用户名和密码,然后页面上的内容将变为可用。请注意,public_html文件夹内的所有目录都不需要.htaccess文件。由于父目录具有.htaccess文件,因此其下的所有目录都需要进行身份验证才能访问。
现在,由于云已受保护,因此您现在可以安全地开始向服务器添加媒体了。
步骤6:将公共IP地址映射到域名
此步骤是完全可选的。此步骤的目的是创建一个免费域名,该域名将您的公共IP地址映射到域名。这背后的原因很简单。 IP地址很难记住,有时ISP会更改您的公共IP地址。此步骤将使您的公共IP地址保持静态,并将其映射到域名。就像我之前说过的那样,此步骤是完全可选的。
要开始创建域名,请打开此网站并创建一个帐户。需要使用该帐户来创建域名。创建帐户后,登录网站并单击页面左侧显示 Subdomains 的按钮。接下来,点击 [添加] 按钮。在打开的页面中将创建域名。
将子域的类型保留为A。
在子域框中,输入您要呼叫网站的名称。例如,我称我的网站为apples。
在域框中,选择您希望网站驻留的域。只要您选择一个公共域,您在此处选择的选项就无关紧要。在我的示例中,我选择了mooo.com
在目的地框中,输入您的公共IP地址。要找到此地址,请在Google中键入“我的IP地址是什么”。
最后,单击“保存”。现在,该域应映射到您的公共IP地址。现在,无论何时要访问您的网站,您都可以使用所选的子域名和域名来访问它。例如,要访问电影,您可以输入:
www。 SubDomainName.Domain。 com:8080/〜用户名/电影/
其中子域名,域是您在上面选择的名称。如果我选择苹果作为我的子域名,并选择mooo.com作为我的域名,则需要在它们各自的区域中输入这些名称。
此步骤完成后,就该将媒体从客户端传输到服务器了。
步骤7:传输介质(Linux)
在此步骤中,客户端计算机上驻留的介质将被传输到新创建的云中。它们有多种将媒体传输到云的方法:复制和粘贴,拖放或FTP。尽管每个选项都很好并且运行良好,但它们并不是自动化的。每次在客户端计算机上更新任何媒体时,都必须将其手动传输到服务器。要解决此问题,需要一个自动脚本。我已经将我使用的脚本附加到了此步骤。我的客户端计算机运行Linux,所以这是Linux脚本。如果您的客户端计算机运行的是Windows,则可以使用FileZilla之类的软件将文件手动传输到服务器。
首先,请下载脚本并将其放置在服务器上的/home文件夹中。客户端计算机。打开脚本并对其进行编辑,以满足客户端计算机的需求。在脚本中,有四个rsync命令。每个文件夹对应一个媒体文件夹:一个文件夹用于存放文档,照片,媒体和音乐。以下是脚本中每个元素的说明:
rsync -u -r -v -e ssh --progress --delete --chmod = D775/path/to/your/media/documents/* YOUR_SERVER_NAME @ YOUR_DOMAIN NAME:〜/public_html/documents/--exclude = .htaccess --exclude = .htaccess〜
rsync-rsync是用于将媒体传输到服务器的服务。
-u-如果服务器上的文件较新,此选项将跳过复制文件。如果由于某种原因服务器上的文件比客户端计算机上的文件新,则不会在服务器上覆盖它。
-r-此选项以递归方式复制所有文件。
-v-此选项基本上告诉rsync使您知道它在做什么,而不是不输出任何数据到终端。可以通过在v前面添加其他破折号来增加详细程度。
-e-此命令后跟ssh告诉rsync通过SSH复制文件。如果通过Internet复制文件,此选项可确保安全性。为了成功使用此选项,必须在服务器上配置SSH。您还必须能够在不使用密码的情况下SSH到服务器。通过Google的快速搜索,您可以找到有关如何完成这两项任务的教程。如果仅通过本地网络复制文件,则实际上不需要此命令。
-progress-此选项显示rsync在复制过程中的进度。
- -delete-如果客户机上不再存在文件,则此选项将删除服务器上的文件。这意味着,如果您不小心删除了客户端计算机上的文件,运行了该脚本,并想从服务器上检索该文件,因为您并不想首先删除它,那么该文件就不会存在。
-chmod = D775-此选项为每个文件提供适当的云托管权限。如果取消此选项,则云目录中的文件夹将不会显示在网站上。
/path/to/your/media/documents/*-这是文档文件夹的路径。该命令末尾的/*确保传输文件文件夹中的所有文件。更改脚本以匹配每个媒体目录的路径。
YOUR_SERVER_NAME @ YOUR_DOMAIN NAME:〜/public_html/documents/-此命令是文件将被复制到的服务器目录的路径。用您的服务器名称替换YOUR_SERVER_NAME。在本指南中,它将是服务器。用您在上一步中创建的域名替换YOUR_DOMAIN_NAME。最后,将/documents/替换为要复制到的相应媒体文件夹。
-exclude = .htaccess --exclude = .htaccess〜-由于使用了--delete选项,因此这些文件可以可能会从服务器上删除,因为它们不在客户端计算机上。但是,由于这些文件保护了服务器,因此不应删除它们。此命令可防止它们被删除。
要运行脚本,请键入:
。/rsync_backup
如果出现权限被拒绝的错误类型:
chmod 755 rsync_backup
这时,脚本应该运行并且所有媒体都将被传输到服务器。要自动执行脚本,请尝试创建cron作业。另一个快速的Google搜索应该会生成一个有关如何完成此操作的简单教程。
可以从位于此处的github页面下载脚本。
第8步:下一步?
现在您的云服务器已启动并正在运行,在服务器上要实现许多不同的项目,软件和脚本。您可以在这里按照我的指南尝试创建VPN服务器。您还可以使用XBMC设置从服务器到任何计算机的流传输。在此之前的云指南中描述了该过程。另外,您可以尝试进行Web开发,并创建自己的网站。如果您希望从云端流式传输音乐,则有一个出色的开源音乐流式软件称为Ampache。
责任编辑:wv
-
Ubuntu
+关注
关注
5文章
559浏览量
29516 -
云服务器
+关注
关注
0文章
532浏览量
13340
发布评论请先 登录
相关推荐
评论