Linux 学习笔记_12_文件共享服务_2_FTP应用--vsftpd
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的更多相关文章
- Linux 学习笔记_12_文件共享服务_4_SSH
SSH文件共享服务 一.ssh远程登录[一般的Linux系统都会默认安装并启用] 1.Linux上远程命令行登录:ssh 用户名@远程主机IP地址 常用选项: -2:表示SSH2,强制使用第二代SSH ...
- Linux 学习笔记_12_文件共享服务_3_NFS网络文件服务
NFS网络文件服务 NFS---- Network File System 用于UNIX/Linux[UNIX类操作系统]系统间通过网络进行文件共享,用户可以把网络中NFS服务器提供的共享目录挂载到本 ...
- Linux 学习笔记
Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd53 ...
- Linux学习笔记(一)2015.4.13
研究生由单片机转Linux学习 首先安装VMware虚拟机,用的是VMware 10.0 在VMware 10.0上安装视频上推荐的Red Hat Linux 5 安装后正式进入Linux学习 笔记1 ...
- linux —— 学习笔记(汇总)
笔记目录:一.系统知识 和 基本概念 二.常用操作 三.系统管理(内存.设备.服务等管理) ...
- Linux学习笔记-林耐斯Notes-Linux就该这么学
Linux学习笔记... 参考的优秀Linux网站: http://www.w3cschool.cn/linux/ http://www.linuxeye.com/ http://linux.vbir ...
- Linux~学习笔记目录索引
回到占占推荐博客索引 本篇文章是对自己学习Linux及在它的环境下部署工具的一个总结,以方便自己查阅,也给他人一个帮助,本文章同时会不断的更新,欢迎大家订阅! 本目录包括的内容会包括linux基础命令 ...
- Linux 学习笔记之超详细基础linux命令(the end)
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 14---------------- ...
- 91 Testing Linux学习笔记
91 Testing Linux学习笔记... 学习地址:91Testing 的Linux教程=====================学习网址:http://www.91testing.net/ar ...
随机推荐
- Oracle中的4大空值处理函数用法举例
nvl(exp1,exp2): 如果exp1为空,则返回exp2:否则返回exp1nvl2(exp1,exp2,exp3): ...
- java绘图原理------在窗口界面(或面板上)画出一张或多张图片问题解决方法
/** *@author blovedr * 功能: java绘图原理------在窗口界面(或面板上)画出一张或多张图片问题解决方法 * 日期: 2018年4月28日 16:20 * 注释: ...
- Page Object设计模式实践
Page Object模式是使用Selenium的广大同行最为公认的一种设计模式.在设计测试时,把元素和方法按照页面抽象出来,分离成一定的对象,然后再进行组织. Page Object模式,创建一个对 ...
- python笔记一(语言简介、解释器、输入输出)
一.python语言简介 一顿狂吹python目前有多火.多NB,哈哈哈,不过用起来心情确实很舒畅. 解释性语言:缺点,运行速度慢. 二.python解释器 与C.C++.java不同,以上都需要先将 ...
- javascript:void(0) 含义
javascript:void(0) 含义 我们经常会使用到 javascript:void(0) 这样的代码,那么在 JavaScript 中 javascript:void(0) 代表的是什么意思 ...
- O(1)空间内实现矩阵转置
思路: * 每个元素转置前后会形成一个环(一个数字有多个环) * 利用环来移动元素达到转置 * 关键: * 1.得到元素下标的前驱后继, * 2.判断环是否已走过(意味属于一个环的元素一次转 ...
- md编辑器测试
markdown 这是一个代码 print
- BlockingQueue(阻塞队列)详解
一. 前言 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全"传输"数据的问题.通过这些高效并且线程安全的队列类,为我们快速搭建高质量 ...
- Spark-SQL之DataFrame操作大全
Spark SQL中的DataFrame类似于一张关系型数据表.在关系型数据库中对单表或进行的查询操作,在DataFrame中都可以通过调用其API接口来实现.可以参考,Scala提供的DataFra ...
- java获取ip的方式,注意多级代理的方式获取
public String getIP() { String clientIP = ServletActionContext.getRequest().getHeader("x-forwar ...