在Linux系统上FTP客户端软件有,ftp,lftp,lftpget ,wget curl,其中ftp和lftp最为常用,ftp这个客户端工具一边用于测试,因为它不具备补全的功能,在生产环境中用起来不是很方便,还有就是它列出来的文件、目录,只能看文件属性信息里的‘-’,‘d’来区分,所以在字符界面一般我们都很少用ftp这个客户端,相反lftp就弥补了ftp的确定,受到大众的喜爱,它支持补全,我们用它就感觉是操作Linux文件系统一样。
ftp连接FTP服务器的使用方法:
[root@test ~]#ftp -A 192.168.0.99 2121
Connected to 192.168.0.99 (192.168.0.99).
220 (vsFTPd 3.0.2)
Name (192.168.0.99:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxr-xr-x 2 0 0 21 Dec 27 04:25 pub
226 Directory send OK.
ftp> cd pub
250 Directory successfully changed.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r-- 1 0 0 1073741824 Dec 27 04:25 bigfile
226 Directory send OK.
ftp> bye
221 Goodbye.
[root@test ~]#ftp -p 192.168.0.99 2121
Connected to 192.168.0.99 (192.168.0.99).
220 (vsFTPd 3.0.2)
Name (192.168.0.99:root): ftp
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,0,99,20,204).
150 Here comes the directory listing.
drwxr-xr-x 2 0 0 21 Dec 27 04:25 pub
226 Directory send OK.
ftp> cd pub
250 Directory successfully changed.
ftp> ls
227 Entering Passive Mode (192,168,0,99,205,210).
150 Here comes the directory listing.
-rw-r--r-- 1 0 0 1073741824 Dec 27 04:25 bigfile
226 Directory send OK.
ftp> bye
221 Goodbye.
[root@test ~]#
说明:-A表示主动模式,-p(小写) 表示被动模式,centos系统上默认是被动模式,这也说明了一点就是不同的客户端,其连接服务器的模式不一样。
lftp连接ftp服务器的使用方法:
[root@test ~]#lftp -u ftp 192.168.0.99 -p 2121
口令:
lftp ftp@192.168.0.99:~> ls
drwxr-xr-x 2 0 0 21 Dec 27 04:25 pub
lftp ftp@192.168.0.99:/> cd pub/
lftp ftp@192.168.0.99:/pub> ls
-rw-r--r-- 1 0 0 1073741824 Dec 27 04:25 bigfile
lftp ftp@192.168.0.99:/pub> bye
[root@test ~]#lftp ftp@192.168.0.99 -p 2121
口令:
lftp ftp@192.168.0.99:~> ls
drwxr-xr-x 2 0 0 21 Dec 27 04:25 pub
lftp ftp@192.168.0.99:/> cd pub/
lftp ftp@192.168.0.99:/pub> ls
-rw-r--r-- 1 0 0 1073741824 Dec 27 04:25 bigfile
lftp ftp@192.168.0.99:/pub> bye
[root@test ~]#
说明:-p是指定端口 -u 指定用户名,如果不用-u指定,可把用户名写在@前
还有一些别的客户端工具如浏览器,Windows是对资源管理器,filezilla等等,这些都不在这里过多演示
三、FTP服务
1)状态码说明
1xx:表示信息类,比如125:表示数据连接打开
2xx:表示成功类状态,比如200:命令ok 230表示登录成功
3xx:表示补充类,比如331表示用户名OK
4xx:表示客户端错误,比如425表示不能打开数据链接
5xx:表示服务器错误,比如530表示不能登录
2)用户认证
支持匿名用户:ftp,anonymous,对应Linux用户ftp
系统用户:Linux用户,用户/etc/passwd,密码/etc/shadow
虚拟用户:特定服务端装用用户,独立的用户/密码文件
四、vsftpd服务介绍