25-Linux-服务-FTP基础





说明

    FTP, File Transfer Protocol
    一个 古老但应用极为广泛 的互联网协议
    FTP提供了一种可靠的方式在网络上进行文件共享.
    C/S 架构, 基于 TCP, 提供了数据传输的可靠性
    标准端口: 20 (数据端口) ; 21 (指令端口) 


连接

    FTP会话时包含了两个通道,一个叫控制通道,一个叫数据通道。
    控制通道:控制通道是和FTP服务器进行沟通的通道,连接FTP,发送FTP指令都是通过控制通道来完成的。
    数据通道:数据通道是和FTP服务器进行文件传输或者列表的通道。
    FTP协议中,控制连接均有客户端发起,而数据连接有两种工作方式:PORT方式和PASV方式

工作模式

    主动模式

        Active Mode. 由 服务端 发起数据传输的连接
        流程
            1) client 与 server的21端口 建立连接, 用于发送命令
            2) 接收数据
                在控制通道上发送 PORT命令
                PORT命令 包含 client用什么端口接收 server传过来的数据
            3) 传输数据
                server通过20端口 与client建立新的连接, 发送数据

    被动模式

        Passive Mode. 由 客户端 发起数据传输的连接
        流程
            1) client 与 server的21端口 建立连接, 用于发送命令
            2) server打开一个 随机端口(1024~5000), 通知client在此端口上传输数据
            3) client 在 server通知的端口上建立连接

    注

        由于网关防火墙的原因, server(外网)无法对client(内外)主动建立连接
        因此, 一般使用的是 被动模式


vsftpd

    说明
        vsftpd, Very Secure FTP Daemon
        vsftpd 提供了一种 快速、稳定、安全 的FTP服务
    安装
        yum install -y vsftpd
    启动
        service vsftpd restart

[root@wuqinfei ~]# service vsftpd restart
Shutting down vsftpd:                                      [  OK  ]
Starting vsftpd for vsftpd:                                [  OK  ]

    配置/目录
        主配置文件: /etc/vsftpd/vsftpd.conf
        用户名单: /etc/vsftpd/ftpusers
        控制名单: /etc/vsftpd/user_list
        共享目录: /var/ftp

    用户
        说明
            vsftpd 基于 用户 进行管理单位
            每个用户可通过ftp方式访问 自己可访问的目录及文件
        类型
            正常用户(普通用户、系统用户)
            匿名用户(anonymous)
            虚拟用户(ftp-only)
        匿名用户
            vsftpd在安装过程中 创建的 ftp用户
            默认home目录指向 /var/ftp/
            任何 没有权限限制的 文件, 可通过匿名用户共享
            打开匿名用户上传
                vsftpd.conf
                    anonymous_enable=YES
                    anon_upload_enable=YES
                    anon_mkdir_write_enable=YES
                chmod 777 /var/ftp/pub
    外部用户登陆
        1) 临时关闭服务器上的防火墙
            # service iptables stop
        2) MS-DOC登陆
            C:\Windows\System32>ftp 192.168.1.107
            示例

ftp> help
命令可能是缩写的。  命令为:

!               delete          literal         prompt          send
?               debug           ls              put             status
append          dir             mdelete         pwd             trace
ascii           disconnect      mdir            quit            type
bell            get             mget            quote           user
binary          glob            mkdir           recv            verbose
bye             hash            mls             remotehelp
cd              help            mput            rename
close           lcd             open            rmdir
ftp> bye
221 Goodbye.
C:\Windows\System32>ftp 192.168.1.107
连接到 192.168.1.107。
220 (vsFTPd 2.2.2)
用户(192.168.1.107:(none)): anonymous
331 Please specify the password.
密码:
230 Login successful.
ftp> dir
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
drwxr-xr-x    2 0        0            4096 Mar 01  2013 pub
226 Directory send OK.
ftp: 收到 61 字节,用时 0.00秒 61.00千字节/秒。



lftp

    说明: Linux命令行下 连接 FTP的工具
    安装: # yum install lftp
    登陆: lftp -u <user>[,<pass>]
        匿名
        普通用户
    帮助
    下载: ~>get [OPTS] <rfile> [-o <lfile>]
    上传: ~>put [OPTS] <lfile> [-o <rfile>]


DropBox机制

    说明: 具有dropbox功能的目录 只能上传, 但无法浏览
    实现
        mkdir /var/ftp/mydropbox
        chmod 2733 mydropbox

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值