本帖最后由 新支点 于 2013-06-08 16:20 编辑
CGSL系统为标准服务器版本,为满足大多数用户的需求,系统提供了大量的通用服务和基本功能,本文主要介绍FTP服务的配置和使用。
vsftpd的全称为”Very Secure FTP Daemon”。 使用vsftpd可以构建一个以安全为重的FTP服务器。
1 vsftpd的配置文件/etc/vsftpd/vsftpd.conf
1.1 /etc/vsftpd/vsftpd.conf参数说明
anonymous_enable=YES # 允许匿名登录 local_enable=YES # 允许本地登录 write_enable=YES # 允许用户上传数据 local_umask=022 # 设置默认的掩码为022 dirmessage_enable=YES # 当用户进入某个目录时,会显示该目录需要注意的内容 xferlog_enable=YES # 默认上传或者下载的日志被记录在/var/log/vsftpd.log中 connect_from_port_20=YES # 用20端口作为数据传输端口 xferlog_std_format=YES # 使用标准格式等级上传或者下载记录 listen=YES # 当设为yes时,vsftpd以standalon状态运行,默认开启 pam_service_name=vsftpd # 列出与vsftpd相关的PAM文件 userlist_enable=YES # 当该选项设为yes时,启用配置文件/etc/vsftpd/user_list # 1:若此时没有userlist_deny=NO,则/etc/vsftpd/user_list中用户不能访问ftp # 2:若存在userlist_deny=NO,则仅接受/etc/vsftpd/user_list中存在用户登录ftp的请求(前提是这些用户不存在于/etc/vsftpd/ftpusers中) # 当为NO时,不启用/etc/vsftpd/user_list配置文件 tcp_wrappers=YES # 启用TCP Wrapper支持 sendport_off_enable=NO # 不使用sendport模式
1.2 /etc/vsftpd/vsftpd.conf另外的一些常用设置
? guest_enable=YES ? guest_username=ftp # guest用户名,即所有非匿名用户将具有guest用户身份。 ? local_root=/var/ftp ? anon_root=/var/ftp # 设定本机用户和匿名用户的主目录 ? pasv_enable=YES #port_enable=YES # port为主动模式,pasv为被动模式,两个不能同时使用,必须注释掉一个 ? pasv_min_port=9000 ? pasv_max_prot=9200 # 使用被动模式时端口的范围,例为9000-9200,只有在被动模式下有用 ? use_localtime=YES # 使用使用本地时间,如不使用,则使用格林威治时间,建议用YES ? accept_timeout=60 # 被动模式下服务器等待客户端的延时时间 单位为秒 ? max_clients=0 # 在standalone模式下最大客户连接数 ? max_pre_ip=0 # 每个客户端的最大连接数 ? local_max_rate=0 # 本地用户最大传输速率,单位为字节/秒;0为不限 ? anon_max_rate=0 # 匿名用户最大传输速率,单位为字节/秒;0为不限 ? chroot_local_user=YES ? chroot_list_enable=YES ? chroot_list_file=/etc/vsftpd/chroot_list # 锁定用户主目录的设置 如果chroot_list_enable=YES时,用户主目录锁定,在ftp时切换到主目录是就切换到主目录下,不会访问主目录的上层目录 # /etc/vsftpd/chroot_list的格式为:用户名 锁定的目录
其他参数可使用命令man vsftpd.conf进行查阅。
2 vsftpd配置实例
下面以一个实例介绍vsftpd服务器的配置。 vsftpd配置要求如下: 1. 不允许匿名登录; 2. 能使用root或test01用户登录; 3. test01用户需锁定用户主目录为/home/test01
1. 首先查询vsftpd软件的版本 # rpm -q vsftpd vsftpd-2.2.2-7.el6.i686
如果没有可以从CGS Linux安装盘上查找,找到后用下面的命令安装(为32位系统为例): # rpm -ivh vsftpd-2.2.7-el6.i686.rpm
2. 编辑/etc/vsftpd/vsftpd.conf文件: 1) 将anonymous_enable=YES修改为anonymous_enable=NO 2) 在文件末添加: chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list
3. 为了能使root用户登录,编辑/etc/vsftpd/ftpuser和/etc/vsftpd/user_list文件: 将root行用”#”注释掉 4. 编辑或新建/etc/vsftpd/chroot_list文件,加入: test01 /home/test01
5. 重启vsftpd服务: # service vsftpd restart
6. 由于SELinux会防止某些服务访问用户的家目录,当使用ftp登录时出现错误提示: 500 OOPS: cannot change directory:/root 需暂时关闭SELinux: # setenforce 0
|