vm安装centos 6
http://www.linuxidc.com/Linux/2016-05/131701.htm
1 安装vsftpd组件
安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件。
[root@bogon ~]# yum -y install vsftpd
2 添加一个ftp用户
此用户就是用来登录ftp服务器用的。
[root@bogon ~]# useradd ftpuser
这样一个用户建完,可以用这个登录,记得用普通登录不要用匿名了。登录后默认的路径为 /home/ftpuser.
3 给ftp用户添加密码。
[root@bogon ~]# passwd ftpuser
输入两次密码后修改密码。
重启vsftp
/etc/init.d/vsftpd restart
4 防火墙开启21端口
因为ftp默认的端口为21,而centos默认是没有开启的,所以要修改iptables文件
[root@bogon ~]# vim /etc/sysconfig/iptables
在行上面有22 -j ACCEPT 下面另起一行输入跟那行差不多的,只是把22换成21,然后:wq保存。
还要运行下,重启iptables
[root@bogon ~]# service iptables restart
启动ftp service vsftpd start
设置开机启动 chkconfig vsftpd on
- 查看是否安装了FTP服务
rpm -qa | grep ftp - vsftpd建好ftp服务后,连接提示无法获取目录列表
vi /etc/vsftpd/vsftpd.conf , 在文件末尾加入下面代码
pasv_min_port=5500
pasv_max_port=5600
其实就是加了被动端口,范围从5500-5600,也可以自定义,保存退出后重启vstfpd服务
之后我们添加防火墙例外,vi /etc/sysconfig/iptables
-A INPUT -p tcp -m tcp –dport 5500:5600 -j ACCEPT
重启iptables ,service iptables restart
[ok 参考] http://www.landui.com/help/show-2928.html
FTP连接时出现“227 Entering Passive Mode” 的解决方法
关闭客户端的PASV方式,强制其用PORT方式访问服务器,登录FTP服务器后用passive命令关闭客户端的PASV方式,如下:
ftp> passive
Passive mode off.
ftp> passive (再次运行命令可打开)
Passive mode on.centos 登录ftp 提示
ftp: command not found
原因是否ftp客户端没有安装上, 要重新安装一下就可以了
rpm -Uvh http://mirror.centos.org/centos/6/os/x86_64/Packages/ftp-0.17-54.el6.x86_64.rpm
补充更新:如果执行上面命令后提示以下错误信息:
libc.so.6 is needed by ftp-0.17-35.el5.i386
rpm –Uvh http://mirror.centos.org/centos/6/os/x86_64/Packages/glibc-2.12-1.132.el6.x86_64.rpm
- 文件不能上传 vsftpd出现553 Could not create file 解决方法,
以Linux系统centos版本为例:
1、首先确保FTP目录文件是可写的,ls查看,如果不是修改权限。
chmod 777 /home/ftp (ftp目录)
500 OOPS: cannot change directory 解决方法
报错:
331 Please specify the password.
Password:
500 OOPS: cannot change directory:/home/oracle
Login failed.
原因:这是因为服务器开启了selinux,这限制了FTP的登录。
解决方法:
1.执行setsebool -P ftpd_disable_trans 1
然后重启ftp :service vsftpd restart
2.执行setsebool -P ftpd_disable_trans 1报错Boolean ftpd_disable_trans is not defined的话
([root@windos-test-01 vsftpd]# setsebool -P ftpd_disable_trans 1
Boolean ftpd_disable_trans is not defined)
先执行setsebool -P ftp_home_dir 1
查看getsebool -a |grep ftp_home 结果如下:
ftp_home_dir –> on
然后再照第1种方法执行;
3.如果还是不成功的话,执行以下命令,然后重启FTP
[root@windos-test-01 vsftpd]# setsebool allow_ftpd_full_access 1
[root@windos-test-01 vsftpd]# setsebool allow_ftpd_use_cifs 1
[root@windos-test-01 vsftpd]# setsebool allow_ftpd_use_nfs 1
[root@windos-test-01 vsftpd]# setsebool -P ftp_home_dir 1
[root@windos-test-01 vsftpd]# setsebool httpd_enable_ftp_server 1
[root@windos-test-01 vsftpd]# setsebool tftp_anon_write 1
[root@windos-test-01 vsftpd]# service vsftpd restart