下载PDF文件
下载PDF文件
本文将向你展示如何在Ubuntu Linux电脑上建立并连接FTP服务器。FTP服务器用于存储电脑中的文件,并允许他人浏览。为了从电脑上建立FTP服务器,你需要有一台FTP服务器主机,并且可以连接到它。还建议你将Ubuntu软件更新到最新的可用版本。
步骤
-
确保Ubuntu是最新的。 Ubuntu 17.10及以上版本的文件路径与之前的版本有很大的不同,所以如果还没有升级到最新版本的Ubuntu,你需要升级到最新版本: [1] X 研究来源
- 打开 终端
- 输入 sudo apt-get upgrade ,并按 Enter 。
- 输入密码,并按 Enter 。
- 出现提示时输入 y ,然后按 Enter 。
- 等待升级安装完毕,然后如果出现提示,重新启动电脑。
-
打开“终端”。 点击 应用程序 菜单 ⋮⋮⋮ ,向下滚动,点击黑白相间的 终端 图标。
- 你也可以直接按 Alt + Ctrl + T 打开“终端”。
-
输入VSFTPD安装命令。 在“终端”中输入 sudo apt-get install vsftpd ,然后按 Enter 。
-
输入密码。 输入用来登录电脑的密码,然后按 Enter 。
-
等待VSFTPD完成安装。 根据当前的FTP设置和互联网连接,需要花费5分钟到20分钟不等,所以请耐心等待。
-
安装FileZilla。 这是将要用于访问和上传到服务器的程序。安装步骤如下:
- 输入 sudo apt-get install filezilla
- 如果出现提示,再次输入密码。
- 等待安装完成。
广告
-
打开VSFTPD配置文件。 输入 sudo nano /etc/vsftpd.conf ,并按 Enter 。你将要编辑这个文件以允许(或禁用)某些VSFTPD功能。
-
允许本地用户登录到FTP服务器。 使用箭头键向下滚动到
# Uncomment this to allow local users to log in.
标题,然后从它下面的一行local_enable=YES
中删除“#”。 [2] X 研究来源- 你可以通过使用箭头键选择它前面的字母(在本例中为“l”),并按 Backspace 键来删除“#”。
- 如果
local_enable=YES
这行是白色的,则跳过这一步。
-
允许FTP写入命令。 向下滚动到
# Uncomment this to enable any form of FTP write command.
标题,然后从它下面的一行write_enable=YES
中删除“#”。- 如果
write_enable=YES
这行是白色的,则跳过这一步。
- 如果
-
禁用ASCII识别编码。 一直向下滚动到
# ASCII mangling is a horrible feature of the protocol.
标题,然后删除下面两行中的“#”:-
ascii_upload_enable=YES
-
ascii_download_enable=YES
-
-
更改“chroot”设置。 向下滚动到
# chroot)
标题,然后添加以下行:-
user_sub_token=$USER
-
chroot_local_user=YES
-
chroot_list_enable=YES
- 如果这些行已经存在,只需删除每行前的“#”。
-
-
更改默认“chroot”设置。 向下滚动到
(default follows)
标题,然后添加以下行:-
chroot_list_file=/etc/vsftpd.chroot_list
-
local_root=/home/$USER/Public_html
-
allow_writeable_chroot=YES
- 如果这些行已经存在,只需删除每行前的“#”。
-
-
启用“ls 递归”选项。 向下滚动到
# You may activate the "-R" option...
标题,然后从它下面的一行ls_recurse_enable=YES
中删除“#”。 -
保存并退出文本编辑器。 这样操作:
- 按 Ctrl + X
- 输入 y
- 按 Enter
广告
-
打开“chroot”文本文件。 输入 sudo nano /etc/vsftpd.chroot_list ,并按 Enter 。
- 如果不想指定可以访问FTP服务器的用户,可以直接跳到本部分的最后一步。
-
输入密码。 输入你用来登录Ubuntu的密码,并按 Enter 。这样会打开“chroot”文本文件。
- 如果没有询问密码,跳过这个步骤。
-
将用户名添加到列表中。 输入你自己的用户名,按 Enter ,对与你希望从服务器中访问其主目录的用户名重复这个操作。
-
保存列表。 按 Ctrl + X ,输入 y ,并按 Enter 。列表将会被保存。
-
重启VSFTPD。 输入 sudo systemctl restart vsftpd ,并按 Enter 。这样将会停止并重启VSFTPD,确保更改已经被保存。现在可以访问FTP服务器了。 [3] X 研究来源广告
-
确定服务器的地址。 如果你通过托管服务(例如Bluehost)购买FTP服务器,你需要知道服务的IP地址或常规地址才能连接到它。 [4] X 研究来源
- 如果你用自己的电脑作为主机服务器。你将要使用你电脑的IP地址,可以通过在“终端”中输入 ifconfig
,然后查看“inet addr”号来确定IP地址。
- 如果没有安装“ifconfig”,可以在终端中输入 sudo apt-get install net-tools 进行安装。
- 如果你用自己的电脑作为主机服务器。你将要使用你电脑的IP地址,可以通过在“终端”中输入 ifconfig
,然后查看“inet addr”号来确定IP地址。
-
转发路由器端口 。 知道服务器的IP地址后,就需要将路由器的端口21插槽转发到这个地址;确保端口使用TCP(不是UDP或两者混合使用)。
- 端口转发根据路由器会有所不同,所以一定要查看带链接的文章,或者路由器的说明书来获得操作说明。
-
打开Filezilla。 在“终端”中输入 filezilla ,并按 Enter 。FileZilla过一会就会打开。
- 如果你想通过“终端”连接,可以尝试输入 ftp [address] 。只要你的服务器在运行,并且可以访问互联网,这样就会尝试连接到FTP服务器;但是,你有可能无法传输文件。
-
点击 文件 。 它在FileZilla窗口的左上角。点击会弹出一个下拉菜单。
-
点击 站点管理器… 。 可以在下拉菜单中找到这个选项。“站点管理器”窗口将会打开。
-
点击 新站点 。 它是窗口左下角的一个白色按钮。点击将打开“站点管理器”的“新站点”部分。
-
添加转发端口号。 在“端口:”文本字段中输入 21 。
-
点击 连接 。 它是页面底部的一个红色按钮。点击后FileZilla会使你的电脑连接到FTP服务器。
-
将文件移到服务器上。 你可以点击并将文件夹从左侧窗口拖动到右侧窗口,将它们上传到FTP服务器页面。广告
小提示
- 如果你正在托管自己的服务器,转发端口20可能会解决部分网络问题。
- 在Ubuntu 17和更高版本中连接FTP服务器与在之前版本中连接FTP服务器略有不同,所以如果你还没有将Ubuntu版本更新到17.10(或更高),最好更新一下。
广告
警告
- FTP服务器并不总是安全的,特别是当你自己作为FTP主机时。因此,不要将敏感信息或个人信息上传到FTP服务器上。
广告
参考
- ↑ https://www.linux.com/learn/linux-101-updating-your-system
- ↑ https://websiteforstudents.com/setup-vsftpd-ubuntu-17-04-17-10/
- ↑ https://help.ubuntu.com/lts/serverguide/ftp-server.html
- ↑ http://www.overclock.net/forum/142-coding-programming/639765-finding-ip-address-ftp-server.html
- ↑ https://my.bluehost.com/hosting/help/264
广告