2015年(3)
分类: LINUX
2015-04-09 20:11:22
ftp搭建:
1:装上vsftpd:apt-get install vsftpd.
2:服务器的开启,停止,重启:
如:service vsftpd start | stop |restart
3:可以创建一个专门用来访问的用户,列如叫“linq”
mkdir –p /home/linq
useradd linq –g ftp –d /home/linq –s /sbin/nologin
设置密码:
passwd linq
配置文件:/etc/vsftpd.conf
常用配置:listen=YES (若设置为YES,开启网络监听)
anonymous_enable (若设置为YES,则允许匿名用户访问,NO则拒绝匿名用户访问)
3:local_enable 若设置为YES,则允许通过本地账号访问,NO,则是拒绝本地账户访问。
一般设置为yes。
4:write_enable
若设置为yes,则允许ftp全局写权限,no,所有ftp用户都无法写入,包括无法新建,修改,删除文件,目录等操作,也就是用户都无法上传文件。
5:anon_upload_enable 若为YES,开启匿名用户的上传权限,前提是write_enable有开启,并且用户具有对当前目录的可写权限,若设置为NO,则关闭匿名用户新建目录的权限。
6:anon_mkdir_write_enable
YES,开启匿名用户新建目录的权限,前提是write_enable有开启,并且用户具有对当前目录的可写权限,NO,则关闭匿名用户新建目录的权限。
7:dirmessage_enable
YES,则开启目录信息推送,也就是用户登录FTP后可以列出当前目录底下的文件,目录,这个应该开启。
8:xferlog_enable yes:开启登录,上传,下载等事件的日志功能。应开启。
9:xferlog_file=/var/log/vsftpd.log
指定默认的日志文件,可指定其他文件。
10:xferlog_std_format
若设置为YES,则启用标准的ftpd日志文件,可以不启用。
11:connect_from_port_20
若设置为YES,则服务器的端口设为20,如果不想用端口20,可以通过ftp_data_port来指定端口号。
12:chown_uploads
yes:匿名用户上传文件后系统将自动修改文件的所有者。诺要开启,则chown_username=whoever也需要指定具体的某个用户,用来作为匿名用户上传文件的所有者。
13:idle_session_timeout=600
不活动用户的超时时间,超过这个时间终端连接。
14:data_connection_timeout=120
数据连接超时时间
15:ftpd_banner=welcome to blah FTP service.
Ftpy用户登入时显示的信息。
16:local_root=/home/ftp
指定一个目录,用做匿名用户登录后的默认目录。
17:anon_root=/home/ftp
指定一个目录,用做匿名用户登录后的默认目录
18、chroot_local_user、 chroot_list_enable、chroot_list_file
这个组合用于指示用户可否切换到默认目录以外的目录。
其中,chroot_list_file默认是/etc/vsftpd.chroot_list,该文件定义一个用户列表。
若chroot_local_user 设置为NO,chroot_list_enable设置为NO,则所有用户都是可以切换到默认目录以外的。
若chroot_local_user 设置为YES,chroot_list_enable设置为NO,则锁定FTP登录用户只能在其默认目录活动,不允许切换到默认目录以外。
若chroot_local_user 设置为YES,chroot_list_enable设置为YES,则chroot_list_file所指定的文件里面的用户列表都可以访问默认目录以外的目录,而列表以外的用户则被限定在各自的默认目录活动。
若chroot_local_user设置为NO,chroot_list_enable设置为YES,则chroot_list_file所指定的文件里面的用户列表都被限定在各自的默认目录活动,而列表以外的用户则可以访问默认目录以外的目录。
建议设置:chroot_local_user与chroot_list_enable都设置为YES。这样就只有chroot_list_file所指定的文件里面的用户列表可以访问默认目录以外的目录,而列表以外的用户则被限定在各自的默认目录活动!
好处:所有人都被限制在特定的目录里面。如果某些特定用户需要访问其他目录的权限,只需将其用户名写入chroot_list_file文件就可以赋予其访问其他目录的权限!
19、userlist_file、userlist_enable、userlist_deny
这个组合用于指示用户可否访问FTP服务。
其中,userlist_file默认是/etc/vsftpd.user_list,该文件定义一个用户列表。
若userlist_enable设置为YES,userlist_deny设置为NO,则只有userlist_file所指定的文件里面的用户列表里面的用户可以访问FTP。
若userlist_enable设置为YES,userlist_deny设置为YES,则userlist_file所指定的文件里面的用户列表里面的用户都被拒绝访问FTP。
若userlist_enable设置为NO,userlist_deny设置为YES,则这个列表没有实际用处,起不到限制的作用!因为所有用户都可访问FTP。
建议设置:userlist_enable与userlist_deny都设置为YES。这样则userlist_file所指定的文件里面的用户列表里面的用户都被拒绝访问FTP。
好处:只需将某用户帐号加入到userlist_file所指定文件里面的用户列表,就可以起到暂时冻结该用户的功能!
20、user_config_dir
指定一个目录用于存放针对每个用户各自的配置文件,比如用户kkk登录后,会以该用户名建立一个对应的配置文件。
比如指定user_config_dir=/etc/vsftpd_user_conf, 则kkk登录后会产生一个/etc/vsftpd_user_conf/kkk的文件,这个文件保存的配置都是针对kkk这个用户的。可以修改这个文件而 不用担心影响到其他用户的配置。
ftp 允许root用户上传:
把 /etc/ftpusers 把root注释就可以。