Linux FTP搭建及访问教程分析

原创 社长  2019-05-21 17:59:22  阅读 122 次 评论 0 条
重庆专业seo
摘要:

1.简单FTP构建及访问问题本案例要求先快速搭建好一台FTP服务器,并创建相关测试文件:建立下载测试文件 /var/ftp/pub/anon.txt建立下载测试文件 ~lisi/lisi.txt然后验证以不同方式从客户机访问此FTP服务器:从浏览器访问,测试匿名/用户登录以ftp命令访问,分别测试匿名/用户验证访问的下载和上传操作使用wget命令下载测试文件方案使用2台RHEL6虚拟机,其中一台作为vsftpd服务器(192.168.4.5)、另外一台作为测试用的Linux客户机(192.1

1.简单FTP构建及访问

问题

本案例要求先快速搭建好一台FTP服务器,并创建相关测试文件:

建立下载测试文件 /var/ftp/pub/anon.txt

建立下载测试文件 ~lisi/lisi.txt

然后验证以不同方式从客户机访问此FTP服务器:

从浏览器访问,测试匿名/用户登录

以ftp命令访问,分别测试匿名/用户验证访问的下载和上传操作

使用wget命令下载测试文件

方案

使用2台RHEL6虚拟机,其中一台作为vsftpd服务器(192.168.4.5)、另外一台作为测试用的Linux客户机(192.168.4.205),如图-1所示。

Linux FTP搭建及访问教程分析

图-1

在RHEL6系统中,vsftpd软件包默认已提供FTP服务的基本配置,因此只要装好vsftpd包并启动对应的服务,一台FTP服务器就搭建好了。默认的vsftpd服务具备一台标准FTP服务器的能力,服务功能和特点如表-1所示。

表-1 默认vsftpd配置的功能和特点

访问类型 下载/上传权限 FTP起始目录 是否禁锢 其他

匿名 允许/禁止 /var/ftp/ 基于安全考虑,root、bin等系统用户默认被阻止登录

本地用户 允许/允许 ~用户名/

需要访问FTP服务端提供的资源时,可以使用专门的FTP客户端/管理工具(FTP命令程序、Filezilla图形工具),也可以使用Web浏览器、下载工具(比如wget)等支持FTP协议的通用软件。

定位匿名访问FTP资源的地址形式如下:

ftp://服务器地址/,对应服务器上的 /var/ftp/ 目录

ftp://服务器地址/path/to/file,对应服务器上的 /var/ftp/path/to/file 文件

对于要求登录验证才能访问的FTP资源,可以在地址中指定用户名、密码信息:

ftp://user:pass@服务器地址/,对应服务器上的用户家目录 ~user/

ftp://user:pass@服务器地址/path/to/file,对应服务器上的 ~user/path/to/file 文件

步骤

实现此案例需要按照如下步骤进行。

步骤一:构建vsftpd服务器

1)使用yum安装vsftpd软件包

[root@svr5 ~]# yum -y install vsftpd

… …

[root@svr5 ~]# rpm -q vsftpd

vsftpd-2.2.2-11.el6_4.1.x86_64

2)启用vsftpd服务,并设为开机自动运行

[root@svr5 ~]# service vsftpd restart ; chkconfig vsftpd on

关闭 vsftpd: [失败]

为 vsftpd 启动 vsftpd: [确定]

vsftpd服务默认通过TCP 21端口监听客户端请求:

[root@svr5 ~]# netstat -anptu | grep vsftpd

tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 64869/vsftpd

3)为FTP访问建立测试文件

在匿名FTP起始目录/var/ftp/下默认有一个pub/子目录(用来提供开放资源),在此目录下建立一个名为anon.txt的文件:

[root@svr5 ~]# cat /var/ftp/pub/anon.txt

Anonymous Test

新建用户lisi并设好密码(如1234567),此用户即可作为FTP用户使用,在lisi的家目录下建立一个名为lisi.txt的文件,内容随意:

[root@svr5 ~]# useradd lisi

[root@svr5 ~]# echo 1234567 | passwd --stdin lisi

更改用户 lisi 的密码 。

passwd: 所有的身份验证令牌已经成功更新。


[root@svr5 ~]# vim ~lisi/lisi.txt

Local User Test

步骤二:从客户机访问FTP服务器

1)从Web浏览器访问FTP服务

以Firefox浏览器为例,只要在地址栏内输入 ftp://192.168.4.5,回车后即连接目标主机192.168.4.5的FTP服务,默认以匿名的方式验证。若访问成功,将会以网页形式列出FTP服务器上匿名FTP起始目录下的资源,如图-2所示。

图-2

单击相应的超链接即可进入指定的目录,或者打开/下载指定的文件,如图-3所示。

图-3

若要访问用户验证的FTP资源,则需要指定正确的用户信息即可。比如在地址栏内输入网址 ftp://lisi@192.168.4.5/ 或者 ftp://lisi:1234567@192.168.4.5/ 都能够成功访问本例中的FTP服务器,浏览服(前者会弹窗验证密码)务器上用户lisi的家目录,如图-4所示。

图-4

当输入的是带远程文件路径的完整FTP地址时,比如 ftp://lisi:1234567@192.168.4.5/lisi.txt,则可以直接打开目标文件(对于浏览器不支持的文件类型,会弹窗提示下载),如图-5所示。

图-5

2)使用ftp命令访问FTP服务

通常大多数Linux系统都自带ftp工具,如果没有也可以通过Yum手动安装。

[root@pc205 ~]# ftp

-bash: ftp: command not found

[root@pc205 ~]# yum -y install ftp

… …

指定目标服务器的地址作为参数,ftp命令将会发起FTP连接,若成功连接则根据提示依次验证用户名、密码即可。对于匿名FTP访问,使用ftp或anonymous作为用户名,密码任意;对于用户验证的FTP访问,应以确切的用户名和密码验证。

匿名登录FTP服务器,验证下载(允许)、上传(拒绝)操作:

[root@pc205 ~]# ftp 192.168.4.5 //连接FTP服务器

Connected to 192.168.4.5 (192.168.4.5).

220 (vsFTPd 2.2.2)

Name (192.168.4.5:root): ftp //匿名用户 ftp

331 Please specify the password.

Password: //任意密码,或直接回车

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> ls //查看FTP起始目录

227 Entering Passive Mode (192,168,4,5,63,132).

150 Here comes the directory listing.

drwxr-xr-x 2 0 0 4096 Jan 13 07:26 pub

226 Directory send OK.

ftp> cd pub //切换到pub子目录

250 Directory successfully changed.

ftp> ls

227 Entering Passive Mode (192,168,4,5,121,122).

150 Here comes the directory listing.

-rw-r–r-- 1 0 0 15 Jan 13 06:59 anon.txt

226 Directory send OK.

ftp> get anon.txt //测试下载文件

local: anon.txt remote: anon.txt

227 Entering Passive Mode (192,168,4,5,127,108).

150 Opening BINARY mode data connection for anon.txt (15 bytes).

226 Transfer complete. //提示成功

15 bytes received in 3.9e-05 secs (384.62 Kbytes/sec)

ftp> put install.log //测试上传文件

local: install.log remote: install.log

227 Entering Passive Mode (192,168,4,5,86,164).

550 Permission denied. //提示被拒绝

ftp> bye //bye断开FTP连接

221 Goodbye.

[root@pc205 ~]# cat anon.txt //确认下载结果

Anonymous Test

以用户lisi登录FTP服务器,验证下载(允许)、上传(允许)操作:

[root@pc205 ~]# ftp 192.168.4.5 //连接FTP服务器

Connected to 192.168.4.5 (192.168.4.5).

220 (vsFTPd 2.2.2)

Name (192.168.4.5:root): lisi //服务器本地用户 lisi

331 Please specify the password.

Password: //输入正确口令

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> ls //查看起始目录

227 Entering Passive Mode (192,168,4,5,250,165).

150 Here comes the directory listing.

-rw-r–r-- 1 0 0 16 Jan 13 07:01 lisi.txt

226 Directory send OK.

ftp> get lisi.txt //测试下载文件

local: lisi.txt remote: lisi.txt

227 Entering Passive Mode (192,168,4,5,171,31).

150 Opening BINARY mode data connection for lisi.txt (16 bytes).

226 Transfer complete. //提示成功

16 bytes received in 4.8e-05 secs (333.33 Kbytes/sec)

ftp> put install.log //测试上传文件

local: install.log remote: install.log

227 Entering Passive Mode (192,168,4,5,83,26).

150 Ok to send data.

226 Transfer complete. //提示成功

47884 bytes sent in 0.101 secs (473.44 Kbytes/sec)

ftp> ls //确认上传结果

227 Entering Passive Mode (192,168,4,5,29,68).

150 Here comes the directory listing.

-rw-r–r-- 1 507 508 47884 Jan 13 08:01 install.log

-rw-r–r-- 1 0 0 16 Jan 13 07:01 lisi.txt

226 Directory send OK.

ftp> quit //quit也可断开FTP连接

221 Goodbye.

[root@pc205 ~]# cat lisi.txt //确认下载结果

Local User Test

3)使用wget命令工具下载FTP资源

下载服务器上的 /var/ftp/pub/anon.txt 文件:

[root@pc205 ~]# rm -rf anon.txt //删除原有文件,避免干扰

[root@pc205 ~]# wget ftp://192.168.4.5/pub/anon.txt //匿名下载

–2015-01-13 16:10:31-- ftp://192.168.4.5/pub/anon.txt

=> “anon.txt”

正在连接 192.168.4.5:21… 已连接。

正在以 anonymous 登录 … 登录成功!

==> SYST … 完成。 ==> PWD … 完成。

==> TYPE I … 完成。 ==> CWD (1) /pub … 完成。

==> SIZE anon.txt … 15

==> PASV … 完成。 ==> RETR anon.txt … 完成。

长度:15 (非正式数据)


100%[=============================================================>] 15 --.-K/s in 0s


2015-01-13 16:10:31 (1.13 MB/s) - “anon.txt” 已保存 [15]


[root@pc205 ~]# cat anon.txt //确认下载结果

Anonymous Test

下载服务器上的 ~lisi/lisi.txt 文件:

[root@pc205 ~]# rm -rf lisi.txt //删除原有文件,避免干扰

[root@pc205 ~]# wget ftp://lisi:1234567@192.168.4.5/lisi.txt //用户验证下载

–2015-01-13 16:12:01-- ftp://lisi:password@192.168.4.5/lisi.txt

=> “lisi.txt”

正在连接 192.168.4.5:21… 已连接。

正在以 lisi 登录 … 登录成功!

==> SYST … 完成。 ==> PWD … 完成。

==> TYPE I … 完成。 ==> 不需要 CWD。

==> SIZE lisi.txt … 16

==> PASV … 完成。 ==> RETR lisi.txt … 完成。


本文地址:http://dxf6.com/post/10.html
版权声明:本文为原创文章,版权归 社长 所有,欢迎分享本文,转载请保留出处!
重庆专业seo
数据湾

发表评论


表情

还没有留言,还不快点抢沙发?