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. 并行开发-Task

    Task 对于多线程,经常使用的是Thread.在了解Task之前,如果要使用多核的功能可能就会自己来开线程,然而这种线程模型在.net 4.0之后被一种称为基于“任务的编程模型”所冲击,这就是Tas ...

  2. 如何将本地大文件通过终端上传到linux服务器

    第一种方式:  SecureCRT下   上传文件只需在shell终端仿真器中输入命令“rz”,即可从弹出的对话框中选择本地磁盘上的文件,利用Zmodem上传到服务器当前路径下.   下载文件只需在s ...

  3. 2、jeecg 笔记之 t:dictSelect 或 t:dgCol 自定义字典

    1.需求 先说一下需求场景吧,我们知道 jeecg 中提供了下拉,其中包含两种使用场景: 一种是直接通过 t:dictSelect 使用,再就是 t:dgCol  用于表头的列表工具条标签: 总之就是 ...

  4. jsr-303 参数校验-学习(转)

    1.是什么? JSR303 是一套 JavaBean 参数校验的标准,它定义了很多常用的校验注解,比如: ----------------------------------------------- ...

  5. 20190404 Oracle忘记登陆密码

    记忆力不好,总是忘记Oracle账号的登陆密码 修改方式 Windows cmd 登陆修改后的密码即可

  6. mybatis plus XML文件如何使用多个where条件

    网上搜到很多例子教你在mybatis plus使用XML文件来查询自定义的sql,但是给的例子都是给的只注解了一个where的例子.我最近在开发的一个项目中,因为涉及到了多表的复杂查询,需要在一个sq ...

  7. i++与++i区别

    ++i:先执行i加1,再执行语句; i++:先执行语句,再i加1; 后置自操作:先把自己所保存的值留下来,然后改变自己,自己给别人的值是原来的值: 前置自操作:先把自己改变,然后把改变后的值给别人. ...

  8. date_default_timezone_set()问题解决方案(PHP5.3以上的)

      date() [<a href='function.date'>function.date</a>]: It is not safe to rely on the syst ...

  9. flask重要点

    django与flask的区别 django: 大而全的框架,包含了很多组件,例如:ORM.form.ModelForm.session... flask: 轻量级的可扩展强的框架.有丰富的第三方组件 ...

  10. Matlab的用法总结

    1. 对序列进行洗牌 randperm() randperm()产生随机的序列 %if filepaths 是一个5*1的结构体,then cshuffle = randperm(length(fil ...