快速搭建简易的ftp服务器(vsftpd)

日期:20170924


Linux和Windows之间复制粘贴文件

为了能在windows文件夹中直接复制和粘贴linux文件,简单且安全的是在linux中搭建ftp服务器。

注:
1、这篇文章只搭建匿名访问。

2、搭建环境CentOS 7


选择vsftpd

在linux搭建ftp服务器,多数是用vsftpd,Very Secure FTP Daemon。可能是因为它很小,稳定和安全,而且现在这项目貌似还有人在维护。


安装

很多发行版的安装库都有vsftpd,很容易安装。

在CentOS 7只需,

# yum install vsftpd

其他人可访问(匿名访问)

搭建FTP,目标是Windows和Linux直接复制粘贴,不需要用户名和密码。

所以我们确定几点,
1、不需要用户名和密码即可访问。(即,设置匿名访问)

2、为了安全,不可以访问上层文件夹。(即,创建监狱)

3、可以上传和下载文件。(文件具有rw权限,子文件夹具有rwx权限)


配置/etc/vsftpd.conf

/etc/vsftpd.conf是vsftpd主要的配置文件,多数配置都在这里设置。


不同发行版的vsftpd.conf有可能不在/etc/,例如,CentOS就在,

/etc/vsftpd/vsftpd.conf

如果这两个路径都不是,就看看自己发行版的Doc。


vsftpd.conf里面有很多常用说明,所以刚学搭建vsftpd的人很容易上手。(当然有一些设置是没有的,那么你就要man一下,或者去看vsftpd的官方文档

在配置之前,先备份一份原文档比较好,(这文件是需要root权限的

# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bkp

现在我们配置一下匿名访问,

[root@ali01 python]# cat /etc/vsftpd/vsftpd.conf | grep -v '^#'
anonymous_enable=YES
anon_root=/home/penx/python  ##增加
anon_umask=000  ##增加
anon_other_write_enable=YES  ##增加
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES  ##把注释去掉
anon_mkdir_write_enable=YES  ##把注释去掉
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES  ##把NO改为YES
listen_ipv6=NO  ##把YES改为NO

pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
[root@ali01 python]#

这文件只是改了很少一部分,
1、增加anon_root=/home/penx/python。

anon_root=$dir

$dir是你想要共享的文件夹。

这里要注意,其他人不能有该文件夹可写权限,即,文件夹other的权限没有w。

这一项是设置“监狱”,让其他人只能访问这个文件夹。

2、增加“anon_umask=000”和“anon_other_write_enable=YES”。
一个是设置上传时,文件的默认权限,一个是允许匿名访问可以有w的权限。(不是文件夹或文件的其他人权限上有w就可以在ftp中进行写操作)

3、把 anon_upload_enable=YESanon_mkdir_write_enable=YES 的注释去掉。
一个是让其他人可上传,一个是让其他人可以在自己创建的文件夹里复制粘贴。

4、把listen改为YES,即listen=YES。把listen_ipv6改为NO。
这是设置监听时用IPv4地址


重启vsftpd服务

每次修改vsftpd配置,想立即生效,我们就要重启vsftpd,

# systemctl restart vsftpd


当然,如果你还没开服务,你就要,

# systemctl start vsftpd


如果你想开机自动开启,则,

# systemclt enable vsftpd


测试访问

如果重启没有出问题,应该可以在浏览器中访问你的ftp文件夹,

ftp://xxx.xxx.xxx.xxx


通过windows我的电脑访问

在多种网络文件传输协议中,我选择ftp传输,是因为windows可以直接在我的电脑上访问ftp,当然也能挂载,无需安装其他软件。

上面的教程,在网上也有很多。但是,内网搭建vsftpd,然后在外网用windows我的电脑访问就会出现问题。(估计windows我的电脑中的ftp客户端并没有更新,还是很多年前的)

如果出现这个问题,
一,你可以把vsftpd搭在外网。()

二,修改我的电脑传输模式,不过这个设置很隐秘,一般都要上网找教程。而且如果每台windwos都要这样设置,那就有点过了。所以我找到了第3种。

三,在vsftpd.conf中增加一句,

pasv_address=$address

$address是你的ip地址。

然后重启vsftpd就可以在我的电脑直接访问了。


剖析(猜测)
windows我的电脑中的ftp客户端所用的协议没有更新,所以外网访问内网的ftp服务器时,没有获取正确的ftp服务器地址。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值