Centos 6.5使用vsftpd配置FTP服务器教程
Centos 6.5使用vsftpd配置FTP服务器教程
什么是vsftpd
vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。vsftpd 的名字代表”very secure FTP daemon”, 安全是它的开发者 Chris Evans 考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。
vsftpd作为FTP服务器,在Linux系统中是非常常用的。下面我们介绍如何在centos系统上安装vsftp。
1
2
3
当前登录用户获取root权限。执行su命令,输入当前用户密码。
执行: su
检测系统是否安装过vsftpd,
执行: rpm -qa | grep vsftpd
若已安装,会显示已安装的vsftpd版本号,
若没有安装,无显示。
若已安装过vsftpd,先卸载。卸载前,先停止服务 ,然后再卸载。
停止服务:service vsftpd stop
卸载:yum remove vsftpd
安装。用yum命令在线安装,命令如下:
yum -y install vsftpd
安装后默认是未启动,需执行start命令启动,然后就可以访问了,此时匿名账户即可访问,考虑安全,需进一步设置。
启动服务:service vsftpd start
此时在安装vsftpd的机器,用浏览器访问ftp://127.0.0.1 测试成功,且匿名可以访问,直接进入pub目录(因为/var/ftp/pub是匿名用户的默认访问目录),但是其他机器还不能访问 ,需要继续配置。
禁止匿名登陆,执行以下命令,配置vsftpb服务:
执行: vi /etc/vsftpd/vsftpd.conf
此时会进入编辑器窗口,这里需要简单了解vi编辑器的使用,可以参考:http://www.linuxidc.com/Linux/2013-03/80588.htm
简单的使用是按i进入插入模式,进行编辑,按esc退出编辑模式,然后输入:wq 保存修改并退出。
.
在vsftpd.conf文件中做如下修改:
按下i键,
设定不允许匿名用户访问(这行靠近文本内容上面,之前是disabled,改为NO即可):
anonymous_enable=NO
添加ftp用户(这两行比较靠下面,用#号注释掉了,删除#符号即可)
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
之后按esc,输入:wq 保存退出
上面配置的意义:userlist_enable=YES
此项配置/etc/vsftpd.user_list中指定的用户也不能访问服务器,若添加userlist_deny=No,则仅仅/etc/vsftpd.user_list文件中的用户可以访问,其他用户都不可以访问服务器。如过userlist_enable=NO,userlist_deny=YES,则指定使文件/etc/vsftpd.user_list中指定的用户不可以访问服务器,其他本地用户可以访问服务器
添加上面指定的 /etc/vsftpd/chroot_list 文件。
执行:vim /etc/vsftpd/chroot_list
进入编辑器界面,直接输入 :wq保存退出即可创建chroot_list文件。
此时使用 service vsftpd restart 重启服务,再次访问 ftp://127.0.0.1/,可以看到需要输入账号密码了,说明上面的配置生效了。(这步先不执行也行,执行只是为了及时看到修改效果。最后全部修改完,再执行一次也行,这样可以直接看到最后效果)
添加ftp用户,执行以下命令 (不换行,下面是一条命令):
useradd -d /var/www/html -g ftp -s /sbin/nologin test
说明:其中,-d命令是指定用户主目录,-g是指定用户分组,-s /sbin/nologin 是禁止用户登陆系统,最后test是本次新建用户的用户名。
设置test用户密码,根据提示,输入两次。
执行: passwd test
密码尽量设置字母加数字的组合,不要太过简单
修改ftp用户目录权限,依次执行以下两条命令:
执行: chown test:ftp /var/www/html
目的:设置test用户到文件夹
执行: chmod 777 /var/www/html –R
目的:设置权限 777代表修改它的权限为完全开放
chown用法
用来更改某个目录或文件的用户名和用户组的
chmod用法
用来修改某个目录或文件的访问权限。
参考
http://blog.csdn.net/doupei2006/article/details/8015986
此时重启服务 service vsftpd restart 在本机用test用户登陆测试成功,但是外部机器还不能访问,需要继续配置(这步先不执行也行,执行只是为了及时看到修改效果。最后全部修改完,再执行一次也行,这样可以直接看到最后效果)。
开放21端口 因为ftp默认的端口为21,而centos默认是没有开启的,所以要修改iptables文件
执行:vi /etc/sysconfig/iptables
进入编辑器界面,在行上面有22 -j ACCEPT 的那行下面另起一行输入
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
然后esc退出编辑模式,输入:wq保存退出。
重启iptables (这步先不执行也行,执行只是为了及时看到修改效果。最后全部修改完,再执行一次也行,这样可以直接看到最后效果)
执行:service iptables restart
此时测试,正常情况下,本机和其他机器应该都可以访问,但是无法返回文件列表。(就是只能登陆,无返回数据,因为有些浏览器会记住密码,再次刷新无登陆页面,只有无法访问页面,可以清除浏览器缓存或者换个之前没登陆过的浏览器访问)
修改selinux
SELinux(Security-Enhanced Linux) 是美国国家安全局(NAS)对于强制访问控制的实现,是 Linux上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到。
执行:getsebool -a | grep ftp
执行上面命令,在返回的结果看到两行都是off,代表没有开启外网的访问。
依次执行下面两条命令,这两条执行需要一定时间,耐心等待
setsebool -P allow_ftpd_full_access on
setsebool -P ftp_home_dir on
再次执行: getsebool -a | grep ftp,如图所示,修改成功:
开启passive模式(被动模式默认是开启的,但是要指定一个端口范围)
执行:vi /etc/vsftpd/vsftpd.conf
进入编辑模式,在最后面添加以下两行:
pasv_min_port=30000
pasv_max_port=30999
然后esc退出编辑模式,输入:wq 保存退出。
上面是指定被动模式端口范围:表示端口范围为30000~30999,这个可以随意改
由于指定了这段端口范围,iptables也要相应的开启这个范围。
执行: vi /etc/sysconfig/iptables
进入编辑模式,在21那一行下添加一行,和上面差不多,只是把21 改为30000:30999
-A INPUT -p tcp -m state --state NEW -m tcp --dport 30000:30999 -j ACCEPT
然后esc退出编辑模式,输入:wq 保存退出。
配置完成,重启iptables和vsftp服务
执行:service iptables restart
执行:service vsftpd restart
为便于演示效果,可以在用户主目录 /var/www/html 添加一个文件,
执行:vi /var/www/html/test.txt
打开编辑器窗口,按i,输入内容,然后按esc退出编辑模式,输入:wq 保存退出。
用另一台机器访问本机配置的服务,访问 ftp://服务器ip ,例如 ftp://192.168.122.133/
使用windows系统下的ftp客户端端软件 FileZilla 测试,上传下载都正常,配置成功。
配置开机默认启动vsftp服务
执行:chkconfig vsftpd on
以上就是简单配置过程,vsftpd.conf 文件还有更详细的配置,比如欢迎语、上传下载速度等,可以自行百度了解。
本文如有疏漏或错误,欢迎指出。
Centos 6.5使用vsftpd配置FTP服务器教程的更多相关文章
- 如何在CentOS 7上使用vsftpd设置ftp服务器
一.前言介绍 FTP(文件传输协议)是一种标准的客户机-服务器网络协议,允许用户在远程网络之间传输文件. 有几个开源的FTP服务器可用于Linux.最受欢迎和广泛使用的是pureftpd.proftp ...
- Ubuntu 用vsftpd 配置FTP服务器
网上的文章好难懂啊..只想要简单粗暴,弄好能用就行啊,复杂的以后研究不行吗...折腾好久,其实弄出来能用不就这么点内容吗... 本文在Ubuntu Server 14.04 amd64系统测试. Ma ...
- [转]Ubuntu 用vsftpd 配置FTP服务器
FROM : http://www.cnblogs.com/CSGrandeur/p/3754126.html 网上的文章好难懂啊..只想要简单粗暴,弄好能用就行啊,复杂的以后研究不行吗...折腾好久 ...
- Ubuntu 14.04 配置vsftpd实现FTP服务器 - 通过FTP连接AWS
测试主机:亚马逊AWS EC2 系统:Ubuntu 14.04 想用AWS来做服务器玩,结果发现其不能像简单使用阿里云服务器那样用ftp连接,反正也不熟悉ftp服务器搭建,那就乘这个机会学习一下如何利 ...
- CentOS 6.5下快速搭建ftp服务器[转]
CentOS 6.5下快速搭建ftp服务器 1.用root 进入系统 2.使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了vsftp,使用这个命令会在屏幕上显示vs ...
- CentOS 6.5下快速搭建ftp服务器
来源:Linux社区 作者:Linux CentOS 6.5下快速搭建ftp服务器 1.用root 进入系统 2.使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了v ...
- Ubuntu 配置FTP服务器
第三方的文件传输软件用着很不爽,想着自己搭建一个FTP来干活. 首先检查是否已经安装了FTP,输入命令: vsftpd -v 可以查看版本,如果没有安装,无法执行. 安装FTP p.p1 { mar ...
- 安装与配置FTP服务器
概: 文件传输协议 (File Transfer Protocol,FTP),用于在网络上进行文件传输的协议.如果用户需要将文件从本机发送到另一台计算机,可以使用FTP上传操作:反之,用户可以使用 ...
- windows2003通过iis配置ftp服务器
以前习惯于用filezilla作为windows的ftp服务器,但是现在新版本的filezilla已经不支持windows2003了,所以趁机试一下iis配置ftp服务器. 前面都是很常规的配置 参考 ...
随机推荐
- python32模拟鼠标和键盘操作
前言Windows pywin32允许你像vc一样的形式来使用python开发win32应用.代码风格可以类似win32 sdk,也可以类似MFC,由你选择.如果你仍不放弃vc一样的代码过程在pyth ...
- Hashtable与ConcurrentHashMap区别(转)
转载地址: https://blog.csdn.net/wisgood/article/details/19338693
- udt的java实现
udt协议是什么? 我就不回答了,可以网上搜索,一直都是c++的,java的实现已经很久没有修改了 经过测试,java版本有些一问题,现在已经将其修复,已经上传到csdn 另外自己根据实际的应用,再次 ...
- log4j实现日志的输出
1.log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件,甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护进程等;我们 ...
- python对mysql进行简单操作
python 连接MySQL数据库,进行简单操作 一.连接MySQL数据库,关闭连接 import pymysql db = pymysql.connect(host="xxx.xxx.x. ...
- python如何安装cv2
使用pip3 安装cv2包的时候报错 PS C:\Users\lenovo> pip3 install cv2 Collecting cv2 Could not find a version t ...
- Android 开发 View的API 转载
转载地址:https://blog.csdn.net/lemonrabbit1987/article/details/47704679 View类代表用户界面组件的基本构建块.一个View占据屏幕上的 ...
- SQLserver登陆报错
https://blog.csdn.net/captain618/article/details/52331372 今天也不知道sql server抽了什么风,无论是windows登录还是sa登录,登 ...
- Git 切换本地分支 切换远程分支
切换本地分支 git checkout work1 切换到新的分支工作(不存在则会创建) 将本地已有的分支(已经存在) 和 远程分支连接 git branch --set-upstream-to=or ...
- word文档转pdf,支持.doc和.docx,另附抽取pdf指定页数的方法
公司有个需求,需要将word转成pdf并且抽取首页用以展示,word文档有需要兼容.doc和.docx两种文档格式.其中.docx通过poi直接就可以将word转成pdf,.doc则无法这样实现,上网 ...