搭建环境:
Centos Linux (PS:操作系统不熟悉,对比几种不同的Linux可以来看下:http://blog.csdn.net/educast/article/details/38315433)作为一个小白我先打开了一个网站借鉴了下:
1.http://www.bubuko.com/infodetail-1993517.html
2.http://blog.csdn.net/kexuan0806/article/details/44597645
3.http://www.linuxidc.com/Linux/2014-11/109233.htm(对多个用户的权限进行设置的写的比较细致)
4.http://blog.csdn.net/think_0227/article/details/50155177(对于主动和被动分析比较生动;用户类型分析详细)
5.https://www.cnblogs.com/thinksasa/archive/2013/02/28/2937066.html(chkconfig查看启动状态方法不可使用,不明确原因)
不得不说这个基本上是整个配置的指导。其实整体来说安装搭建基本很简单的,只要安装开启就好,剩下主要的问题还是在用户权限的设置上。
针对我的过程在整理下:
1.通过yum下载和安装ftp的包文件。yum install -y vsftpd
2.其实你已经可以开启服务了。
service vsftpd start | stop | restart
分别是开启,关闭,重启
PS:这个时候你的服务器系统可能会因为防火墙的问题无法访问。参考:
http://blog.sina.com.cn/s/blog_4d7c6fd50100y994.htmlLinux防火墙的设置,这一部分不是很懂,仅仅是针对的解决问题。阿里云的服务器可以在控制台设置(我是在控制台设置好了的。。)还是借鉴参考下:
加入防火墙vi /etc/sysconfig/iptables-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT重启防火墙service iptables restart
3.开始配置。
示例:
/etc/logrotate.d/vsftpd //配置日志回滚的文件/etc/pam.d/vsftpd //定义vsftpd是如何认证用户的,默认情况vsftpd支持使用匿名用户和本地用户/etc/rc.d/init.d/vsftpd //服务启动脚本/etc/vsftpd/etc/vsftpd/ftpusers //指定哪些用户不能访问FTP服务器;/etc/vsftpd/user_list //指定的用户是否可以访问ftp服务器由vsftpd.conf文件中的userlist_deny的取值来决定。/etc/vsftpd/vsftpd.conf //服务的主配置文件/etc/vsftpd/vsftpd_conf_migrate.sh/usr/sbin/vsftpd //服务器端程序/var/ftp //ftp的默认家目录
打开配置文件:
vim /etc/vsftpd/vsftpd.conf
(1)确认基础配置
#不允许匿名访问anonymous_enable=NO #(当然你也可以设成YES,同时允许匿名用户登陆)#允许本地用户登录local_enable=YES #(必须置YES,因为虚拟用户是映射到virtual这个本地用户来访问的)#开放本地用户写的权限write_enable=YES#新建目录/文件的权限local_umask=022#匿名用户不允许上传文件anon_upload_enable=NO #匿名用户不允许上传文件,默认为YES,是注释起来的#匿名用户不允许创建目录anon_mkdir_write_enable=NO#用户进入一个目录后,是否给出静态提示。dirmessage_enable=YES#链接端口connect_from_port_20=YES# 日志设置开启xferlog_enable=YES#日志文件xferlog_file=/var/log/xferlog#日志格式xferlog_std_format=YES#开启ipv4监听listen=YES#开启ipv6监听listen_ipv6=YES # IPv4套接字监听。此指令不能同时使用。但是具体需要监听那个从哪里判断,需要继续深究#使用pam模块控制,vsftpd文件在/etc/pam.d目录下pam_service_name=vsftpd#此选项被激活后,vsftpd将读取userlist_file参数所指定的文件中的用户列表。当列表中的用户登录FTP服务器时,该用户在提示输入密码之前就被禁止了。即该用户名输入后,vsftpd查到该用户名在列表中,vsftpd就直接禁止掉该用户,不会再进行询问密码等后续步聚userlist_enable=YES#是否允许tcp_wrappers管理tcp_wrappers=YES
完成这些就可以用root用户进行操作了,但是如果需要多个用户需要设置权限时:
chroot_local_user=YESchroot_list_enable=YES#文件中的用户不限制目录chroot_list_file=/etc/vsftpd/chroot_list
修改vsftpd的配置文件让其支持ssl功能,即在/etc/vsftpd/vsftpd.conf最后添上如下内容
ssl_enable=YESssl_tlsv1=YESssl_sslv2=YESssl_sslv3=YESallow_anon_ssl=NOforce_local_data_ssl=YESforce_local_logins_ssl=YESrsa_cert_file=/etc/vsftpd/ssl/vsftpd.crtrsa_private_key_file=/etc/vsftpd/ssl/vsftpd.key
这样配置之后可以直接利用sftp站点链接
但是目前配置用户有问题,有待研究。。。。各位路过大神请多指导