声明:本人linux新手,大神请忽略。只是学习中遇到这个问题,百度了好多网页。自己总结整理下,肯定还有还有好多问题,以后发现再修改。只是想记录下而已,如果刚好可以帮到某个新手也是很好的。。
1、首先要确保Linux 系统是联网的,可以先从window中ping 下看看,确保可以ping的通。如有问题建议自行百度解决,这里不说明Linux的网络配置。
2、查看Linux中是否已安装 ftp server ,命令 #ps -a | grep vsftpd
我这里是已经安装了的,未安装的话只有下面那一行(显示的内容也不一样)。
3、安装 frp server 使用命令 # yum -y install vsftpd
确保你的LInux 可以联网,本命令会自动从网上下载文件并自动安装。
4、配置 ftp server。
1) 建议把匿名登陆关了,命令# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO;(我这里是还没改的)。
修改完成后保存并退出。
2)查看 ftpusers 和user_list,两个文件都在 /etc/vsftpd/ 下
ftpusers:默认拒绝访问 ftp server 的用户
user_list:默认拒绝访问 ftp server 的用户
centos minimal 版本默认的是 ftpusers 和user_list内容是一样的,就是所有系统自带用户都不能访问,想要可以访问就要把用户名从 ftpusers 和user_list中删除。这里不建议使用系统自带用户,建议新建用户访问。PS:本人新手,只用过 centos minimal ,其它Linux 版本应该也是这样。
ps:之前对user_list的说法有误,已纠正。
另外关于ftpusers 和user_list的区别可以参考http://blog.csdn.net/mzlqh/article/details/7593974
3)新建用户,命令 #useradd tom #passwd tom
这时候会在 /home目录下出现一个和用户名一样的文件夹,我这里就是 tom。
修改用户组,命令 # chown -R .ftp /home/tom
后期用户上传的文件就在这个文件夹里,也可以从这里下载文件。
4)关闭防火墙 命令#
service iptables stop ps:未尝试不关行不行,
5、上传和下载文件。
很多中方式,最常使用 winscp 软件直接操作,不解释。
也可以用浏览器,ftp://linux ip地址 再根据提示输入用户名密码即可
介绍下Dos 界面的操作
在window中使用ftp连接linux
在命令窗口中 ftp 192.168.1.111(linux的IP地址)
根据提示输入之前创建好的用户名和密码。
从linux中下载文件到本地
ftp>cd expdp_dir(找到文件的位置)
ftp>ls
ftp>bin (用二进制进行传输避免产生乱码)
ftp>get test.dmp
ftp>bye
上传文件到linux中
ftp>bin
ftp>put d:\test.dmp
ftp>bye
6、常见问题
1)
500 OOPS: cannot change directory:/home/
原因是CentOS系统安装了SELinux,因为默认下是没有开启FTP的支持,所以访问时都被阻止了。
//查看SELinux设置
# getsebool -a|grep ftp
//使用setsebool命令开启
setsebool ftp_home_dir 1
ps:网上有说法也要设置 # setsebool ftpd_disable_trans 1 反正我没设置也解决问题了,若问题还在可以尝试
基本上设置成这样就可以了
[root@localhost ~]# getsebool -a | grep ftp
allow_ftpd_anon_write –> off
allow_ftpd_full_access –> off
allow_ftpd_use_cifs –> off
allow_ftpd_use_nfs –> off
ftp_home_dir –> on
ftpd_connect_db –> off
ftpd_use_passive_mode –> off
httpd_enable_ftp_server –> off
tftp_anon_write –> off
2)
530 Login incorrect
这种情况就是登陆问题基本上就是用户名和密码的问题。
用户名密码不正确,或者创建用户的时候没设置密码等等情况。
3)
530 Permission denied
用户没有连接权限,这就是为什么建议新建用户,而不用系统用户,因为要修改ftpusers文件
7、其它补充
一些其他关于 vsftpd 的命令可以参考:
http://blog.csdn.net/bailyzheng/article/details/14089663 //这个是设置vsftpd 开机自动启动的
ps:csdn对于初学者来说就是福地。
关于用户的操作命令: