Wu-FTP:古老,配置复杂

Proftp:功能强大

vsftp: 安全,高速,稳定【系统默认的FTP软件】

VSFTP服务器配置

启动:/etc/rc.d/init.d/vsftpd start

【默认启动后即支持用户宿主目录访问及匿名访问】

配置文件:/etc/vsftp/vsftp.conf





一、匿名访问

1、 匿名FTP用户名:ftp、anonymous

此时进入伪用户宿主目录/var/ftp





2、编辑/etc/vsftp/vsftp.conf文件内容

anonymous_enable=YES // 允许匿名访问





xferlog_enable=YES// 激活上传和下载记录的日志

xferlog_std_format=YES

xferlog_file=/var/log/xferlog





ftpd_banner=Welcome....// 显示提示信息,默认此时显示vsftp的版本信息



【写在文件最后即可】

anon_max_tate=100000// 限制匿名用户的最大传输速率为100K/s【不精确值】





3、连接FTP服务器,常用命令

ftp FTP地址

ftp>

ls –
查看目录文件

cp -
切换目录(FTP)

bin -二进制传输

lcd -切换下载目录(本地)

get -下载单个文件

mget – 下载多个文件

put -上传文件

mput -上传多个文件

prompt -
关闭交互模式

bye -退出

open FTP地址
- 连接FTP服务器


user -输入FTP服务器的用户名和密码


3、【使用FTP客户端的命令可以实现自动化的上传和下载功能】

1)书写脚本auto.ftp:

open 192.168.16.155

user ftp xiaofang@163.com

bin 

prompt

lcd /ftp.bak

mget *

bye

2)执行脚本

ftp -n < auto.ftp或
ftp -n > /dev/null



二、用户访问

1、 普通用户默认即支持上传和下载

* 若启用SELinux允许用户上传文件到宿主目录,则执行命令

setsebool -P ftp_home_dir 1/on

setsebool -P allow_ftpd_full_access 1/on

* 或编辑/etc/selinux/config关闭SELinux





2、编辑/etc/vsftp/vsftp.conf文件内容

local_enable=YES// 允许用户登录,必须开启

write_enable=YES

local_umask=022





* local_max_rate=200000//限制用户传输速率为200000KB/s





三、用户访问限制[最好启用]

1、限制指定的用户不能访问,而其他用户都可访问

userlist_enable=YES

userlist_deny=YES

userlist_file=/etc/vsftpd.user_list

2、限制指定的用户可以访问,而其他用户不能访问

userlist_enable=YES

userlist_deny=NO

userlist_file=/etc/vsftpd.user_list





【书写/etc/vsftpd.user_list文件时注意:每个用户占用一行】





3、设置chroot

chroot作用:在FTP服务器上,用户将自己的宿主目录当成根目录来访问,这样pwd显示的结果为/

编辑/etc/ftpd/vsftpd.conf可以

1)设置所有用户执行chroot

chroot_local_user=YES

2)设置指定用户不执行chroot,即该用户可以访问自己宿主目录之外的目录

chroot_local_user=YES

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list





【书写/etc/vsftpd/chroot_list时注意,每个用户占一行】





四、其他设置选项

idle_session_timeout=600 // 用户会话空闲10分钟之后被挂断

max_clients=50 // 服务器总的并发连接数为50

max_per_id=3 // 每个客户机的最大连接数为3

listen_port=10011 // 指定非标准端口为10011【1024以上】,默认端口为21

// 可以屏蔽一般性扫描

访问时使用:ftp 192.168.139.1 10011





【附:】

nmap 端口扫描工具,默认只是扫描知名端口和周知端口

nmap 主机地址

如: nmap 192.168.139.1

指定扫描范围:nmap -p1-65535 192.168.139.1

Linux 学习笔记_12_文件共享服务_2_FTP应用--vsftpd的更多相关文章

  1. Linux 学习笔记_12_文件共享服务_4_SSH

    SSH文件共享服务 一.ssh远程登录[一般的Linux系统都会默认安装并启用] 1.Linux上远程命令行登录:ssh 用户名@远程主机IP地址 常用选项: -2:表示SSH2,强制使用第二代SSH ...

  2. Linux 学习笔记_12_文件共享服务_3_NFS网络文件服务

    NFS网络文件服务 NFS---- Network File System 用于UNIX/Linux[UNIX类操作系统]系统间通过网络进行文件共享,用户可以把网络中NFS服务器提供的共享目录挂载到本 ...

  3. Linux 学习笔记

    Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...

  4. Linux学习笔记(一)2015.4.13

    研究生由单片机转Linux学习 首先安装VMware虚拟机,用的是VMware 10.0 在VMware 10.0上安装视频上推荐的Red Hat Linux 5 安装后正式进入Linux学习 笔记1 ...

  5. linux —— 学习笔记(汇总)

    笔记目录:一.系统知识 和 基本概念                    二.常用操作                   三.系统管理(内存.设备.服务等管理)                   ...

  6. Linux学习笔记-林耐斯Notes-Linux就该这么学

    Linux学习笔记... 参考的优秀Linux网站: http://www.w3cschool.cn/linux/ http://www.linuxeye.com/ http://linux.vbir ...

  7. Linux~学习笔记目录索引

    回到占占推荐博客索引 本篇文章是对自己学习Linux及在它的环境下部署工具的一个总结,以方便自己查阅,也给他人一个帮助,本文章同时会不断的更新,欢迎大家订阅! 本目录包括的内容会包括linux基础命令 ...

  8. Linux 学习笔记之超详细基础linux命令(the end)

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 14---------------- ...

  9. 91 Testing Linux学习笔记

    91 Testing Linux学习笔记... 学习地址:91Testing 的Linux教程=====================学习网址:http://www.91testing.net/ar ...

随机推荐

  1. Oracle中的4大空值处理函数用法举例

    nvl(exp1,exp2):                           如果exp1为空,则返回exp2:否则返回exp1nvl2(exp1,exp2,exp3):             ...

  2. java绘图原理------在窗口界面(或面板上)画出一张或多张图片问题解决方法

    /** *@author blovedr * 功能: java绘图原理------在窗口界面(或面板上)画出一张或多张图片问题解决方法 * 日期: 2018年4月28日     16:20 * 注释: ...

  3. Page Object设计模式实践

    Page Object模式是使用Selenium的广大同行最为公认的一种设计模式.在设计测试时,把元素和方法按照页面抽象出来,分离成一定的对象,然后再进行组织. Page Object模式,创建一个对 ...

  4. python笔记一(语言简介、解释器、输入输出)

    一.python语言简介 一顿狂吹python目前有多火.多NB,哈哈哈,不过用起来心情确实很舒畅. 解释性语言:缺点,运行速度慢. 二.python解释器 与C.C++.java不同,以上都需要先将 ...

  5. javascript:void(0) 含义

    javascript:void(0) 含义 我们经常会使用到 javascript:void(0) 这样的代码,那么在 JavaScript 中 javascript:void(0) 代表的是什么意思 ...

  6. O(1)空间内实现矩阵转置

    思路:  * 每个元素转置前后会形成一个环(一个数字有多个环)  * 利用环来移动元素达到转置  * 关键:  * 1.得到元素下标的前驱后继,  * 2.判断环是否已走过(意味属于一个环的元素一次转 ...

  7. md编辑器测试

    markdown 这是一个代码 print

  8. BlockingQueue(阻塞队列)详解

    一. 前言 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全"传输"数据的问题.通过这些高效并且线程安全的队列类,为我们快速搭建高质量 ...

  9. Spark-SQL之DataFrame操作大全

    Spark SQL中的DataFrame类似于一张关系型数据表.在关系型数据库中对单表或进行的查询操作,在DataFrame中都可以通过调用其API接口来实现.可以参考,Scala提供的DataFra ...

  10. java获取ip的方式,注意多级代理的方式获取

    public String getIP() { String clientIP = ServletActionContext.getRequest().getHeader("x-forwar ...