先来开通CentOS6的FTP服务吧。telnet服务也一并学习学习吧。在安装好CentOS以后,需要设置Ftp和Telnet服务文件,才能启动Ftp和Telnet服务,可以通过远程控制进行开启。 开通FTP有gssftp和vsftpd二种,查了查,据说vsftpd更稳定和更安全。就用vsftpd吧。 什么是vsftpd vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。 vsftpd 的名字代表”very secure FTP daemon”, 安全是它的开发者 Chris Evans 考虑的首要问题之一。在这个 FTP 服务器设计开发的最开始的时候,高安全性就是一个目标。 首先看看vsftpd装了没有 rpm -q vsftpd 没装的话就先安装吧 yum -y install vsftpd 设置开机启动vsftpd ftp服务 chkconfig vsftpd on 启动vsftpd服务 service vsftpd start 管理vsftpd相关命令: 停止vsftpd: service vsftpd stop 重启vsftpd: service vsftpd restart 配置vsftpd服务器 vi /etc/vsftpd/vsftpd.conf 将下面三行 #chroot_list_enable=YES # (default follows) #chroot_list_file=/etc/vsftpd/chroot_list 改为 chroot_list_enable=YES # (default follows) chroot_list_file=/etc/vsftpd/chroot_list 用adduser增加用户ftpuser,用-d指定目录。显示的用法看adduser. useradd -d /home/wwwroot/ -g ftp ftpuser 用passwd设置用户的密码 passwd ftpuser 重新启动vsftpd service vsftpd restart 开通telnet服务 rpm -q xinetd yum -y install xinetd chkconfig xinetd on service xinetd start 这样就开通了telnet了。 配置防火墙 如果以上设置完了之后,还是不能正常访问,那很有可能是防火墙屏掉的原因了。再配置防火墙 vi /etc/sysconfig/iptables #打开/etc/sysconfig/iptables文件 添加如下代码 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT #FTP21端口的 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT #telnet23端口 重启iptables service iptables restart 配置VirtualBox的端口映射 如果你是用VirtualBox装的系统,就要在Host机跟虚拟机之间弄个端口映射了。 FTP的默认端口是21, telnet的默认端口是23 VirtualBox的端口映射的方法见:http://liucheng.name/1947/ (配置VirtualBox+CentOS的SSH+FTP及CentOS yum镜像) ftp配置的备注说明 如果不希望某用户能够浏览其主目录上级目录中的内容,可以如上设置, 然后在 文件vsftpd.chroot_list中不添加该用户即可(此时, 在该文件中的用户都是可以浏览其主目录之外的目录的). 或者, 设置如下 chroot_local_user=NO chroot_list_enable=YES(这行必须要有, 否则文件vsftpd.chroot_list不会起作用) chroot_list_file=/etc/vsftpd.chroot_list 然后把所有不希望有这种浏览其主目录之上的各目录权限的用户添加到文件vsftpd.chroot_list(此时, 在该文件中的用户都是不可以浏览其主目录之外的目录的) 中即可(一行一个用户名). 三、CentOS vsftpd配置 1 打开 /etc/vsftpd/vsftpd.conf文件。将anonymous_enable=YES,改为anonymous_enable=NO 2 打开 /etc/vsftpd/vsftpd.conf文件。添加user_config_dir=/etc/vsftpd/virtual,并建立virtual目录。在此目录中建立以用户名为文件名的文件,并写入:local_root=[目录],这个目录即是FTP连接时的主目录。 3 限定用户只在自己目录:修改vsftpd.conf文件,取消注释: chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list 在/etc/vsftpd/目录下添加文件chroot_list,加入作为FTP用户的本地用户名。 4 解决用户无法进入目录问题: 打开终端,输入:setsebool -P ftpd_disable_trans 1 然后重启FTP服务:service vsftpd restart 四、权限: 假设是/var/www/html 这个目录的权限应该是770,owner是root,group是ftp chmod 770 /var/www/html chown root:ftp /var/www/html (责任编辑:IT) |