Linux 部署vsftp服务及详解
一、FTP服务概述:
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。
FTP(File Transfer Protocol: 文件传输协议)作用: Internet 上用来传送文件的协议
可以在局域网传输,当然也可以在广域网传输ftp文件。
vsftp:(Linux系统相称,也是Linux系统中的安装包名称)
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。
特点:
它是一个安全、高速、稳定的FTP服务器;
模式:
C/S 模式
vsftp端口:
20 (传数据) 21 (传指令) #传数据端口为20、用户连接端口为21.
安装vsftp服务器端(vsftpd)、客户端(lftp)
[root@localhost ~]# rpm -ivh /mnt/Packages/vsftpd-2.2.2-6.el6_0.1.x86_64.rpm
或:
yum -y install vsftpd
二、安装客户端:
[root@localhost ~]# yum install -y vsftp
vsftp主配置文件位置和其他ftp相关配置文件:
/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件
/etc/vsftpd/ftpusers:用于指定哪些用户不能访问FTP 服务器。 黑名单
/etc/vsftpd/user_list:指定允许使用vsftpd 的用户列表文件。 白名单
vim /etc/vsftpd/user_list
# 如果userlist_deny= YES(默认),绝不允许在这个文件中的用户登录ftp,甚至不提示输入密码
#prompt 提示
/etc/vsftpd/vsftpd_conf_migrate.sh:是vsftpd 操作的一些变量和设置脚本
/var/ftp/:默认情况下匿名用户的根目录;
修改配置文件:
[root@localhost vsftpd]# cp vsftpd.conf vsftpd.conf.back #修改配置文件先备份,失误的时候可以在做恢复;
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf #vsftp 配置文件;
1.允许匿名用户访问:
anonymous_enable=YES #是否允许匿名用户访问;(默认YES)
2.允许匿名用户上传文件并可以创建目录:
anon_upload_enable=YES #允许匿名用户上传文件;
anon_mkdir_write_enable=YES #允许匿名用户创建目录;
3.允许匿名用户删除文件和文件命名:
anon_other_write_enable=YES #允许匿名用户命名文件删除文件;
4.设置匿名用户所上传的文件的默认掩码值:
anon_umask=022 #......
5.设置匿名用户的FTP根目录(默认为/var/ftp/)
anon_root=/var/ftp #......
给匿名用户权限最好不要太大,建议755
注:实际生活中,匿名用户只是只读访问,写的权限也没有。
本地用户:
1.允许本地用户登录:
local_enable=YES #允许本地用户登录
2.设置本地用户的FTP根目录(默认为用户的宿主目录)
Local_root=/var/ftp
3.本地用户上传的默认权限掩码值:
Local_umask=022
4.设置本地用户上传写入支持:
write_enable=YES #启动上传写入支持
5.为不同的虚拟用户建立独立的配置文件:
user_config_dir=/etc/vsftp/vusers_dir #设置从/etc/vsftp/vusers_dir目录中查找每个用户的独立配置文件;
添加虚拟用户:
[root@localhost vsftpd]# vim /etc/vsftpd/vsftpd.conf
pam_service_name=vsftpd.vu //修改
userlist_enable=NO //修改
anon_root=/var/ftp/soft //末尾添加
guest_enable=yes //添加
guest_username=zhangsan //添加
user_config_dir=/etc/vsftpd/vusers_dir //添加
allow_writeable_chroot=YES //添加
########################################################################
例: 为虚拟用户建立独立配置文件。
mkdir /etc/vsftpd/vusers_dir/ #创建用户配置文件夹;
cd /etc/vsftpd/vusers_dir/ #进入/etc/vsftpd/vusers_dir/下;
vim john #为用户john建立独立的配置文件;
local_root=/var/ftp
anon_umask=022
write_enable=YES
anon_mkdir_write_enable=YES
chroot_list_enable=YES:激chroot 功能
chroot_list_file=/etc/vsftpd/chroot_list:设置锁定用户在根目录中的列表文件。此文件存放要锁定的用户名
allow_writeable_chroot=YES :允许锁定的用户有写的权限
设置好本地权限:
启动服务
[root@localhost vsftpd]# systemctl start vsftpd
[root@localhost vsftpd]# systemctl enable vsftpd
##注意关闭iptables 和selinux
[root@localhost ~]# netstat -antup | grep ftp
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
重启vsftpd 服务使配置生效:
service vsftpd restart
客户端登录lftp:
[root@localhost ~]# lftp 192.168.0.63 -u team1,123456
Linux 部署vsftp服务及详解的更多相关文章
- Linux:SSH服务配置文件详解
SSH服务配置文件详解 SSH客户端配置文件 /etc/ssh/ssh——config 配置文件概要 Host * #选项“Host”只对能够匹配后面字串的计算机有效.“*”表示所有的计算机. For ...
- Linux安装svn服务图文详解 ;出现No repository found in 'svn***问题
Linux安装svn服务 ** 示例都是用的root权限,可选择用 sudo** 1:检查 安装条件为:Linux(centos)上未安装过svn服务,若安装过或安装失败请自行删除,这里不多介绍.检查 ...
- Linux编译部署vsftp服务
部署vsftp服务 Hostname OS IP Software Vsftpsvr RHEL-5.8 10.0.0.58 yum install -y vsftpd yum install –y ...
- 2-4、nginx特性及基础概念-nginx web服务配置详解
Nginx Nginx:engine X 调用了libevent:高性能的网络库 epoll():基于事件驱动event的网络库文件 Nginx的特性: 模块化设计.较好扩展性(不支持模块动态装卸载, ...
- Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 说在前面的话 首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...
- Ubuntu16.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 说在前面的话 首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu LTS \n \l r ...
- (转)Centos7上部署openstack ocata配置详解
原文:http://www.cnblogs.com/yaohong/p/7601470.html 随笔-124 文章-2 评论-82 Centos7上部署openstack ocata配置详解 ...
- Ubuntu14.04下Mongodb数据库可视化工具安装部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 前期博客 Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐) Ubuntu14.04下Mongodb官网安装部署步骤(图 ...
- Linux下DNS服务器搭建详解
Linux下DNS服务器搭建详解 DNS 即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域名解析 ...
随机推荐
- Leetcode之深度优先搜索(DFS)专题-200. 岛屿数量(Number of Islands)
Leetcode之深度优先搜索(DFS)专题-200. 岛屿数量(Number of Islands) 深度优先搜索的解题详细介绍,点击 给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计 ...
- 基于wanAndroid-项目实战
# QzsWanAndroid - [基于 wanandroid.com 开发的 MVP + Retrofit2 + RxJava2 +okhttp3 开发的 Android APP](https:/ ...
- node.js常用的全局成员和对象
一般可以直接调用的对象,我们称之为全局对象: 一下对象都加了console.log(),以在运行环境中的显示效果为标准 //包含文件名称的全路径: console.log(_filename); ...
- 7.解决在python中用selenium启动FireFox浏览器启动不了的方法
首次在利用python中的selenium启动FireFox浏览器时可能碰到如下问题 当输入如下代码时: from selenium import webdriver brower=webdriver ...
- iOS Autoresizing Autolayout Size classes
Autoresizing:出现最早,仅仅能够针对父控件做约束(注意:要关闭Autolayout&Size classes才能够看到Autoresizing) 代码对应: UIView.h中的a ...
- 洛谷P1273 有线电视网 树上分组背包DP
P1273 有线电视网 )逼着自己写DP 题意:在一棵树上选出最多的叶子节点,使得叶子节点的值 减去 各个叶子节点到根节点的消耗 >= 0: 思路: 树上分组背包DP,设dp[u][k] 表示 ...
- 【Offer】[4] 【二维数组中的查找】
题目描述 思路分析 Java代码 代码链接 题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数 ...
- c++拷贝构造函数引用传参
看一道C++面试题: 给出下述代码,分析编译运行的结果,并提供3个选项: A.编译错误 B.编译成功,运行时程序崩溃 C.编译运行正常,输出10 class A { private: int va ...
- IntelliJ IDEA远程连接tomcat,实现单步调试
web项目部署到tomcat上之后,有时需要打断点单步调试,如果用的是Intellij idea,可以通过如下方法实现: 开启debug端口,启动tomcat 以tomcat7.0.75为例,打开bi ...
- Redis压缩包win10快速启动之记录一
转载请标明出处: http://dujinyang.blog.csdn.net/ 本文出自:[奥特曼超人的博客] Redis压缩包 配置环境变量,直接CMD中启动,默认是打开redis.conf,当然 ...