1.安装程序包

[root@node1 ~]$ yum install -y vsftpd
[root@node1 ~]$ yum install -y lftp # 安装测试软件

2.启动vsftpd服务

[root@node1 ~]$ setenforce 0                       #关闭selinux
setenforce: SELinux is disabled                     
[root@node1 ~]$ service iptables stop                  #关闭防火墙  
[root@node1 ~]$ service vsftpd start                  # 启动服务
为 vsftpd 启动 vsftpd: [确定]
[root@node1 ~]$ service vsftpd status
vsftpd (pid ) 正在运行...

 [root@node1 ~]$ ss -tnl | grep 21                    #默认监听21号端口 
  LISTEN 0 32 *:21 *:*

3.访问vsftpd服务器,在本机或者其他主机,在其他主机上测试,需要先确认两台主机能进行网络通信ping

在linux上访问测试

[root@localhost ~]#lftp 172.16.55.6
lftp 172.16.55.6:~> ls
drwxr-xr-x May pub
lftp 172.16.55.6:/>

windows上访问测试

C:\Users\Vathe>ftp 172.16.55.6                 #连接
Connected to 172.16.55.6.      
(vsFTPd 2.2.)
Always in UTF8 mode.
User (172.16.55.6:(none)): ftp              #输入用户名
Please specify the password.
Password:                          #密码为空
Login successful.
ftp> ls                           #显示文件 
PORT command successful. Consider using PASV.
Here comes the directory listing.
pub
Directory send OK.
ftp: bytes received in .00Seconds .00Kbytes/sec.
ftp> pwd                           #显示当前目录
"/"
ftp> cd pub
Directory successfully changed.

4.创建本地用户admin

[root@node1 vsftpd]$ useradd admin
[root@node1 vsftpd]$ echo "admin" | passwd --stdin admin
更改用户 admin 的密码 。
passwd: 所有的身份验证令牌已经成功更新。

5.修改配置文件vsftpf.conf

[root@node1 vsftpd]$ cp vsftp.conf{,.bak}          #备份操作
[root@node1 vsftpd]$ vim vsftpd.conf
chroot_local_user=YES #禁锢所有本地用户至家目录
chroot_list_enable=YES #指定需要禁锢的本地用户
chroot_list_file=/etc/vsftpd/chroot_list #禁锢的用户文件 [root@node1 vsftpd]$ pwd
/etc/vsftpd
[root@node1 vsftpd]$ vim chroot_list #添加admin用户
admin
[root@node1 vsftpd]$ !ser #重启vsftpd服务
service vsftpd reload
关闭 vsftpd: [确定]
为 vsftpd 启动 vsftpd: [确定]

6.添加白名单

[root@node1 vsftpd]$ cd /etc/pam.d/
[root@node1 pam.d]$ vim vsftpd #修改pam的配置文件为白名单
auth required pam_listfile.so item=user sense=allow file=/etc/vsftpd/ftpusers onerr=succeed [root@node1 vsftpd]$ cp ftpusers{,.bak} #备份
[root@node1 vsftpd]$ vim ftpusers #修改白名单列表
# Users that are not allowed to login via ftp
admin
ftp

注:也可以使用vsftpd自身的配置文件/etc/vsftpd/user_list进行配置

测试登录用户

[root@localhost ~]#ftp 172.16.55.6                # 连接
Connected to 172.16.55.6 (172.16.55.6).
(vsFTPd 2.2.)
Name (172.16.55.6:root): ftp             # ftp用户登录成功
Please specify the password.
Password: # 不需要密码登录
Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> exit
Goodbye.
[root@localhost ~]#ftp 172.16.55.6
Connected to 172.16.55.6 (172.16.55.6).
(vsFTPd 2.2.)
Name (172.16.55.6:root): vathe # 其他用户(非白名单用户)登录
Please specify the password.
Password:
Login incorrect.                  
Login failed. # 登录失败
ftp>

vstfpd服务常见文件目录

[root@node1 ~]$ rpm -ql vsftpd                          #查看程序包相关文件
/etc/logrotate.d/vsftpd                   
/etc/pam.d/vsftpd
/etc/rc.d/init.d/vsftpd #主程序文件
/etc/vsftpd/ftpusers #pam模块默认的黑名单配置文件
/etc/vsftpd/user_list #黑名单或白名单配置文件
/etc/vsftpd/vsftpd.conf #主配置文件
...
/usr/share/doc/vsftpd-2.2./EXAMPLE/INTERNET_SITE #示例文档
2.2./EXAMPLE/INTERNET_SITE/vsftpd.xinetd
/usr/share/doc/vsftpd-2.2./EXAMPLE/INTERNET_SITE_NOINETD
/usr/share/doc/vsftpd-2.2./EXAMPLE/INTERNET_SITE_NOINETD/README
/usr/share/doc/vsftpd-2.2./EXAMPLE/INTERNET_SITE_NOINETD/README.configuration
/usr/share/doc/vsftpd-2.2./EXAMPLE/INTERNET_SITE_NOINETD/vsftpd.conf
/usr/share/doc/vsftpd-2.2./EXAMPLE/PER_IP_CONFIG/hosts.allow
/usr/share/doc/vsftpd-2.2./EXAMPLE/VIRTUAL_USERS/vsftpd.conf
/usr/share/doc/vsftpd-2.2./EXAMPLE/VIRTUAL_USERS_2
/usr/share/doc/vsftpd-2.2./EXAMPLE/VIRTUAL_USERS_2/README
/usr/share/doc/vsftpd-2.2./FAQ
...
/usr/share/man/man8/vsftpd..gz
/var/ftp #匿名用户共享资源路径
/var/ftp/pub

CentOS6上ftp服务器搭建实战的更多相关文章

  1. linux上FTP服务器搭建

    一.启动vsftpd服务 1. 启动VSFTP服务器 A. cenos下运行:yum install vsftpd B. 登录Linux主机后,运行命令:"service vsftpd st ...

  2. ftp服务器搭建(windows)+实现ftp图片上传对接

    ftp服务器搭建(windows): vsftpd简介: vsftpd是“very secure FTP daemon”的缩写,是一个完全免费的.开放源代码的ftp服务器软件. 下载地址: http: ...

  3. Linux之匿名FTP服务器搭建

    FTP(File Transfer Protocol)是在服务器与客户端进行文件传输的一种传输协议.本次介绍的是vsftpd的软件体验ftp服务. FTP服务器默认情况下依据用户登录情况分为三种不同的 ...

  4. FTP服务器搭建及操作(一)

    FTP服务器搭建及操作(一) FTP搭建 PHP FTP操作 搭建方法参照(windows):http://www.cnblogs.com/lidan/archive/2012/06/04/25351 ...

  5. 《Linux下FTP服务器搭建及FTP使用》

    .LOGAndy:mxtd114 <Linux下FTP服务器搭建> 0.root登录 1.安装ftp # yum -y install ftp 2.安装vsftpd # yum -y in ...

  6. ftp服务器搭建及简单操作

    ftp服务器搭建及简单操作 1. 添加一个新用户,使用名useradd testftp,然后使用passwd testftp对新添加的用户设置密码(这里设置为“1234567”). 2. 安装ftp服 ...

  7. FTP-Linux中ftp服务器搭建

    一.FTP工作原理 (1)FTP使用端口 [root@localhost ~]# cat /etc/services | grep ftp ftp-data 20/tcp #数据链路:端口20 ftp ...

  8. (转)【Java FTP及FTP服务器搭建】

    转至 http://blog.csdn.net/studyvcmfc/article/details/8147052 目录(?)[+] -[Java FTP及FTP服务器搭建] 一:本文采用apach ...

  9. Linux 之 FTP服务器搭建

    FTP服务器搭建 参考教程:[千峰教育] 1.关闭防火墙: service iptables stop 2.关闭Selinux setenforce 0 3.安装所需要依赖及编译工具 yum inst ...

随机推荐

  1. 17.0-uC/OS-III消息管理

    消息传递 有些情况下任务或ISR与另一个任务间进行通信,这种信息交换叫做作业间的通信. 可以有两种方法实现这种通信: 全局变量. 发送消息. 1.果使用全局变量,任务或ISR就须确保它独占该变量.如果 ...

  2. python练习题-day12

    用列表推导式做下列小题 (1) 过滤掉长度小于3的字符串列表,并将剩下的转换成大写字母 lst1=["admhdja","aksaudj","fh&q ...

  3. java框架之Struts2(2)-访问Servlet API及请求数据封装

    准备 为后面测试示例编写代码及配置如下: package com.zze.bean; import java.util.Date; public class User { private String ...

  4. [js]js中函数传参判断

    1,通过|| function fun(x,y){ x=x||0; y=y||1; alert(x+y); } fun(); 2.通过undefined对比 function fun(x,y){ if ...

  5. Tomcat不加项目名称访问设置

    一.Tomcat不加项目名称访问设置 一.方法一:修改配置文件server.xml 1.修改配置文件server.xml <Host appBase="webapps" au ...

  6. day04 一个简单的代码优化案例

    import random punches = ['石头','剪刀','布'] computer_choice = random.choice(punches) user_choice = input ...

  7. SiteCore Experience Analytics-路径分析地图

    路径分析地图 路径分析器是一个应用程序,允许您查看联系人在浏览网站时所采用的各种路径.您可以查看联系人在转换目标并与广告系列互动时所采用的路径,让您深入了解哪些路径为每次转化提供最佳参与价值,以及哪些 ...

  8. sparse-table模板

    预处理: void init(int n) { ;i < n;i++) { dp[i][] = a[i]; } int bitn = (int)(log(n)/log(2.0)); ;j < ...

  9. 字典排序 sorted

    a = {6:2,8:0,1:4,-5:6,99:11,4:22} print( sorted(a.items()) ) #默认安照key排序的print( sorted(a.items(),key= ...

  10. 【winform】DataGridView控件[表格]

    一.表格 0.从数据库获取一个表在DataGridView中显示: 数据库查询的方式大同小异,重点是如何把数据显示到控件中的方法,通过dataset作为数据的中继,把Adapter中的数据存到data ...