Ubuntu操作系统学习笔记之FTP基础

来源:互联网 发布:小米网络机顶盒看卫视 编辑:程序博客网 时间:2024/04/30 07:46

说明

    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服务
    安装
       apt-get install vsftpd
    启动
        service vsftpd restart

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

    用户
        说明
            vsftpd 基于 用户 进行管理单位
            每个用户可通过ftp方式访问 自己可访问的目录及文件
        类型
            正常用户(普通用户、系统用户)
            匿名用户(anonymous)
            虚拟用户(ftp-only)
        匿名用户
            vsftpd在安装过程中 创建的 ftp用户
            默认home目录指向 /var/ftp/
            任何 没有权限限制的 文件, 可通过匿名用户共享
            打开匿名用户上传

外部用户登陆
        1) 临时关闭服务器上的防火墙
            # service iptables stop
        2) MS-DOC登陆
            C:\Windows\System32>ftp 192.168.1.107
            示例

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
原创粉丝点击