Centos 6.5下安装vsftp------本地用户
准备工作:
检查防火墙和selinux,并关闭;
service iptables stop c6的版本用这个;如果要用,就开启20,21端口;
chkconfig iptables off ;
sestatus先查看selinux的状态,
如果不是disable,可用vi/etc/selinux/config
将SELINUX=XXX -->XXX 代表级别
改为SELINUX=disabled
Selinux关闭要重启下,reboot;
Setenforce 0 临时设置为中等级别
Getenforce 获取selinux当前的设置;
一: FTP安装
1:安装 :
rpm�Cqa |grep ftp 先查看有没有装;
yum�Cy install ftp vsftpd*
yum�Cy install pam //安全验证;
2、配置FTP参数
1、)修改/etc/vsftpd/vsftpd.conf相关参数。
ch确保该配置文件中,存在以下信息。注意要将配置项前面的#去掉,配置才生效。
anonymous_enable=NO //是否接受匿名用户访问
local_enable=YES //是否接受本地用户
local_umask=022//本地账户的权限掩码
write_enable=YES //是否可以上传,写操作, 全局
anon_upload_enable=YES //匿名用户是否可以上传
anon_mkdir_write_enable=YES //匿名用户是否可以建目录
ascii_upload_enable=YES //管控是否可用ASCII模式上传
ascii_download_enable=YES //管控是否可用ASCII模式下载
dirmessage_enable=YES//进入目录是否显示消息
xferlog_enable=YES//是否开启xferlog日志功能
connect_from_port_20=YES//使用主动模式连接,启用20端口
ftpd_banner=Welcome to blah FTP service.//欢迎语
listen=YES//是否监听端口,;
chroot_list_enable=YES//是否启用本地账户列表
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list //列表文件路径
//自己在/vsftpd下面新建一个chroot_list,加入要用的账户;
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES //是否启用tcp_wrappers
pasv_enable=YES #//是否启用被动模式连接,默认为被动;
#pasv_promiscuous=YES #//混合模式;
#listen_port=2134 #//监听入站FTP请求的端口号,指定端口;
pasv_max_port=5999
pasv_min_port=5900
dual_log_enable=YES //表明启用了双份日志。在用xferlog文件记录服务器上传下载情况的同时,vsftpd_log_file所指定的文件,即/var/log/vsftpd.log,也将用来记录服务器的传输情况。
#chroot_local_user=YES //是否禁锢本地账户根目录,默认为No
#local_root=/ftp目录 //本地账户访问FtP根路径;一般不用
#最后去#号和文字,当全部做完时#chroot_local_user=YES
//本地目录锁定在自家目录中此(参数只需要在文件服务器上配置)
注释掉 vim/etc/vsftpd/ftpusers(黑名单)中的root; #root
注释掉 vim/etc/vsftpd/user_list(白名单)中的root ; #root
注:userlist_deny=yes则为黑名单,=N0,则为白名单;-àuser_list
3、)启动与关闭FTP服务
启动命令#service vsftpd start
关闭命令#service vsftpd stop
重启命令#service vsftpd restart
将 /etc/pam.d/vsftpd 文件中的 auth required pam_shells.so注释掉,因为此文件对登录用户进行了限制 : vim /etc/pam.d/vsftpd
# authrequired pam_shells.so
5、)设置FTP服务 自动启动
方法一:
[root@cti-m ~]#chkconfig vsftpd on ; chkconfig �Caddtelnet
[root@cti-m ~]#service vsftpd restart
[root@cti-m ~]#chkconfig �Clist vsftpd
方法二:
把service vsftpd start 加入/etc/rc.local即可。
6、)创建、配置FTP目录权限 (如果没有目录的情况下)
#mkdir /ftpserver (如果是上传的文件服务器,就不要再建了)
#chmod -R 777 /ftpserver
7、)创建ftp帐号,访问FTP
[root@hzhost]#groupadd fileftp
[root@hzhost]#useradd-G fileftp(用户组) -d /fileserver(目录)-s /bin/bash admin
[root@hzhost]#passwd admin
/bin/bash,是可以访问shell的用户,/bin/nologin是不能访问的账户;
下面这些只能在在文件服务器上配置(如是同一个地方,就一起建,有报提示,没事)
useradd -g fileftp-d /fileserver/1 -s /bin/bash admin1
passwd admin1
将username加到user_list文件;vim/etc/vsftpd/user_list;
查看cat/etc/passwd ; 修改用:usermod �Cd /根目录绝对路径 admin
Cat /etc/group; 修改用:usermod �CG 附加组 admin
如果目录只给一个用户用的话,可以这样设置:
chown admin:fileftp ftpserver-R
然后开启本地账户的禁锢;重启服务
chroot_local_user=YES (如果禁锢了,反而不行,就再关掉)
local_root=/home/cmsuploader 指定目录;一般不指定;
测试:
现在用帐号admin访问FTP,就相当于访问服务器上的/fileserver目录,可进行上传下载文件。(运行cmd) 或打开我的电脑,用地址栏测试下:
admin对应 /ftpserver 目录
admin1对应 /ftpserver/1 目录
然后用浏览器测试:
如果是主动模式请修改配置:
附: cmd下的ftp 测试:
命令有:ftp,open close dirls,put get,mkdir rmdir,delete ..bye 等;
PUT -----get 举例: 默认系统用户的家目录;
9. lcd D:\ftpin
/*定位本地默认文件夹。这里的lcd命令类似于平时命令行下的cd*/
然后就可以上传下载东西的;