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. python学习之路前端-JavaScript

    JavaScript简介 JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本 ...

  2. CRM客户关系管理系统(四)

    kingadmin设计开发 4.4.根据list_display配置生成数据列表 (1)kingadmin/views.py (2)kingadmin/templates/kingadmin/tabl ...

  3. CSS布局套路

    这篇笔记的目的是记录分别应用float和flex布局的方法.主要是对遇到的问题进行总结. 1.float布局 总结: 1.1 使用float布局要清除浮动,清除的方法是,在父元素添加如下样式 .cle ...

  4. Node.js 教程

    简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. Node.js是一个事件驱动I/O服务端Ja ...

  5. JavaScript Date(日期)对象

    返回当日的日期和时间 如何使用 Date() 方法获得当日的日期. getFullYear() 使用 getFullYear() 获取年份. getTime() getTime() 返回从 1970 ...

  6. render函数data参数中的model选项

    官方文档没有说, 但是编译v-model时, 是有model这个选项的, 例如: _c('el-input', { attrs: { "placeholder": "手机 ...

  7. 高通开发笔记---Yangtze worknote

    点击打开链接 1. repo init -u git://review.sonyericsson.net/platform/manifest -b volatile-jb-mr1-yangtze 2. ...

  8. 子库存-OU-库存组织-关系

    SELECT hou.organization_id ou_org_id, --org_id hou.name ou_name, --ou名称 ood.organization_id org_org_ ...

  9. ROS_Kinetic_x 目前已更新的常用機器人資料 rosbridge agvs pioneer_teleop nao TurtleBot

    Running Rosbridge Description: This tutorial shows you how to launch a rosbridge server and talk to ...

  10. androidApp的完全退出

    思路:搜集整个工程所有的activity,通过循环把工程中所有的activity都关闭. 搜集工程中的activity,可以由单例模式实现, [java] view plaincopy import  ...