(适用于redhat)
前几天在公司的服务器上开了ftp,因为是个纯菜鸟,过程中遇到了一些难题,搞得自己郁闷了好久。所以在这里把过程写下来避免初学者进入误区。废话少说,进入正题
yum install vsftpd \\安装ftp
service vsftpd start \\启动ftp服务
chkconfig --level 235 vsftpd on \\设为开机启动
systemctl enable mysqld.service \\fedora中设为开机启动
接下来编辑配置文件
vi /etc/vsftpd.conf
在最后一行添加 local_root=/home/ftp \\文件默认上传到该路径
配置文件这里不做其他修改,使用默认即可,端口也用默认值
service vsftpd restart \\重启ftp使修改生效
chmod 777 /home/ftp \\给所有用户添加读写权限
以上的命令都要用root执行。到这里服务器端的配置就完成了,下面来说一下客户端(windows)怎么和我们刚搭好的ftp服务器间进行上传下载文件
打开cmd
输入 ftp ,前缀变成ftp> 即可
open 192.168.2...(ftp服务器的ip地址)
然后输入用户名密码登陆(这里默认不允许用root登陆,应使用其他账户)
提示230 loggin successful说明登陆成功
这时可以执行命令lcd 路径(如D:\ftp) 指定文件下载到本地目录 以后get时可以缺省
下载文件:get 服务器资源路径(如/home/test.txt) 本地目录(如D:\ftpdown\test.txt)
上传文件:put 本地资源路径 \\这里默认上传到之前配置的 local_root=/home/ftp
这样就基本上就包括了ftp的所有内容。
但是还有一个需要特别注意的地方,这是一个很简单但是困扰了我很久的问题,如下:
如果传输的是非二进制文件,比如文本文件,那么按照上面的方法完全没有问题
但是如果传输的是可执行文件,比如可执行的jar文件exe文件等一定要在传递之前
输入命令binary(使用二进制传输模式)否则会使文件在传输过程中发生损坏!切记!
这里有个报错425 failed to establish connection的解决办法的帖子
http://blog.sina.com.cn/s/blog_4da051a60101c8ny.html
内容如下
先到CMD或者linux终端用命令行模式ftp命令测试一下,
如果能登录,不能使用ls或者dir命令。
那就说明,主要问题在端口被防火墙控住。
提示语句:
200 PORT command successful. Consider using PASV.
425 Failed to establish connection.
这时候,可以在ftp下使用命令:quote PASV
试试用以被动模式连接。
一般DOS命令行下都是默认以PORT主动模式连接。
即,端口21监听,处理控制信息,再以端口20连接客户端进行数据传送。
而,经常的,通过外网的NAT的,基本端口20的数据连接都会被禁止掉。
所以,如果想对外网开放ftp,最好使用PASV模式。
PASV被动模式是指,以端口21监听,有连接请求时,随机开放一个比较大的端口号来处理数据传输。
vsftp中,通过编辑 /etc/vsftp.conf 实现启用PASV连接。
sudo vi /etc/vsftp.conf
在配置文件中添加下面语句:
pasv_enable=YES
pasv_min_port=6000
pasv_max_port=7000
也即,启动PASV连接模式,开放6000-7000端口号作为数据传送端口。
此外,如果是对外网开放,必须在路由器的转发规则中,开放21端口。
为了保险,可以将6000-7000端口也写入到iptables中白名单中。
命令:
sudo iptables -A INPUT -p tcp --dport 6000:7000 -j ACCEPT
在ubuntu中一般可以不用,因为ubuntu虽然有iptables,但默认是没有规则的,
也即,不会设置端口限制,但其他版本就最好加上哈。
此外,如果带有selinux的,最好也关闭。
ubuntu是默认没安装selinux。
像redhat、centOS之类的,
修改/etc/selinux/config文件中的SELINUX="" 为disabled ,然后重启。
这样设定后,一般就可以搞定了。
如果还不行,可以通过一下思路:
1、防火墙(本机、客户机)
2、FTP目录的权限
3、客户机是否是IPv6网络
4、客户机的网关限制了外网ftp
linux ftp服务器的搭建及文件的上传\下载
猜你喜欢
转载自744722813.iteye.com/blog/2063915
今日推荐
周排行