Ubuntu Linux vsftpd ftp服务/服务器安装,配置方法

时间:2020-01-09 10:45:41  来源:igfitidea点击:

问题描述:如何安装Ubuntu ftp服务或者服务器?

解决方法:Ubuntu Linux带有各种ftp服务器来设置FTP服务,例如:- proftpd多功能,虚拟主机FTP守护程序

  • vsftpd非常安全的FTP守护程序

  • ftpdFTP服务器

  • wu-ftpd功能强大且广泛使用的FTP服务器

  • wzdftpd便携式,模块化,小型高效的ftp服务器

  • pure-ftpd纯FTPd FTP服务器

我建议使用vsftpd。
它是简单且相当安全的FTP服务器。

vsftpd是"非常安全的文件传输协议"守护程序。
该服务器可以通过诸如inetd或者xinetd的超级服务器启动。
另外,vsftpd可以以独立模式启动,在这种情况下,vsftpd本身将在网络上侦听。

  • 默认ftp端口:21
  • 默认配置文件:/etc/vsftpd.conf

如何设置vsftpd守护程序以接受来自另一台计算机的连接?

vsftpd FTP服务(读取为daemon)的配置仅需要三个步骤。

步骤1:安装vsftpd

执行apt-get命令安装vsftpd

$ sudo apt-get install vsftpd

输出:

Password:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  vsftpd
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 121kB of archives.
After unpacking 438kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com edgy/main vsftpd 2.0.4-0ubuntu5 [121kB]
Fetched 121kB in 0s (246kB/s)
Selecting previously deselected package vsftpd.
(Reading database ... 31396 files and directories currently installed.)
Unpacking vsftpd (from .../vsftpd_2.0.4-0ubuntu5_amd64.deb) ...
Setting up vsftpd (2.0.4-0ubuntu5) ...
Adding system user `ftp' with uid 106...
Adding new user `ftp' (106) with group `nogroup'.
Not creating home directory `/home/ftp'.
* Starting FTP server: vsftpd

步骤2:配置/etc/vsftpd.conf

缺省的vsftpd配置文件是/etc/vsftpd.conf。
您需要使用文本编辑器(例如vi)编辑此文件:

$ sudo vi /etc/vsftpd.conf

将以下行(取消注释行)添加到vsftpd配置文件中:

local_enable=YES

上面的config指令将允许本地用户通过ftp登录

如果您想允许用户上传文件,请在文件中添加以下内容:

write_enable=YES

为了安全起见,您可以将本地用户限制为其主目录。
将以下内容添加到文件中:

chroot_local_user=YES

保存并关闭文件。

步骤3:重新启动vsftpd

要重新启动vsftpd,请输入以下命令:

$ sudo /etc/init.d/vsftpd restart

输出:

* Stopping FTP server: vsftpd                                                                                       [ ok ]
* Starting FTP server: vsftpd                                                                                       [ ok ]

如何使用ftp命令行实用程序?

现在,您应该可以使用系统上除root用户之外的任何帐户将FTP传输到该服务器。
在Windows或者其他Linux系统上使用ftp客户端,执行命令:

$ ftp ftp.theitroad.com

输出:

Connected to ftp.theitroad.com.
220 (vsFTPd 2.0.4)
Name (ftp.theitroad.com:Hyman): Hyman
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/"
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r--    1 1000     1000        91798 Aug 16 08:26 apf-current.tar.gz
-rwxr-xr-x    1 1000     1000          156 Nov 10 07:05 iptables.stop
drwxr-xr-x    3 0        0            4096 Dec 23 11:11 postfix
-rw-r--r--    1 0        0        10481942 Nov 29 23:35 webmin_1.310_all.deb
226 Directory send OK.
ftp> quit
221 Goodbye.

使用iptables打开FTP端口(可选)

将以下规则添加到iptables脚本中。
假设默认传入策略为drop。
如果协议是TCP且目标端口是21(ftp):

iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT

有关更多信息,请参见如何使用iptables打开开放的ftp端口21。

vsftpd有大量其他配置选项可用于微调ftp服务器。