VSFTP服务器配置
1.实验步骤
实验里使用“ROOT”用户,其他用户可能会出现权限问题。
登录时使用“root”用户名来登录,这样就是使用ROOT用户权限了,密码是安装时设定的。
一、 安装软件包((本步骤可省略,RHEL5默认已经安装)
-
在桌面右键就可以打开终端,实验中命令都在终端里输入。
[root@localhost ~]#rpm –qa | grep vsftp
//检查是否已经安装vsftpd软件包。
注意空格:rpm(空格)–qa(空格)| (空格)grep(空格)vsftp
vsftpd-2.0.5-16.el5
//显示已经安装
出现上面这句说明安装成功,不出现说明没安装过。
[root@localhost ~]# service vsftpd start
//启动vsftpd 服务
([root@localhost ~]# service vsftpd restart
//重启vsftpd 服务)
如果服务开着,start就会失败,要运行restart才会应用更改。 -
若没有安装,则进行以下步骤:
[root@localhost ~]# mkdir /mnt/cdrom
//建立用于挂载光驱的目录
注意空格:mkdir(空格)/mnt/cdrom
[root@localhost ~]# mount –t iso9660 /dev/cdrom /mnt/cdrom
//挂载光驱
注意空格:mount (空格)–t (空格)iso9660 (空格)/dev/cdrom (空格)/mnt/cdrom
[root@localhost ~]# find /mnt/cdrom –named *vsftpd*
//查找vsftpd有关的软件包
注意空格:find (空格)/mnt/cdrom (空格)–named (空格)*vsftpd*
实验指导书上写的是“–named”正确是“–name”
[root@localhost ~]# rpm –ivh /mnt/cdrom/Server/vsftpd-2.0.5-16.el5.i386.rpm
// 安装vsftpd软件包
注意空格:rpm (空格)–ivh (空格)/mnt/cdrom/Server/vsftpd-2.0.5-16.el5.i386.rpm
-
技巧:Tab键可以自动识别文件名,觉得命令很长时可以按“TAB”键试试。
[root@localhost ~]# service vsftpd start
//启动vsftpd 服务
([root@localhost ~]# service vsftpd restart
//重启vsftpd 服务)
如果服务开着,start就会失败,要运行restart才会应用更改。
二、创建ftp用户(本例用ftpadmin和user01)
(一)创建并激活用户
[root@localhost ~]#useradd ftpadmin
执行完后“没有提示”为成功,有提示则出现需要注意的问题
[root@localhost ~]#passwd ftpadmin
执行这句后会提示:New UNIX password:(输入该用户的密码,密码看不见。如果按错要重新运行命令。)
如果出现:BAD PASSWORD: it is too simplistic/systematic(提示密码过于简单,可以不管。)
会再次提示输入密码:Retype new UNIX password:(同样看不见。)
如果出现:passwd: all authentication tokens updated successfully.则成功修改。
如图:
[root@localhost ~]#useradd user01
[root@localhost ~]#passwd user01
提示:这里添加的两个用户是系统用户,不分FTP用户或者MAIL用户,都是一样的。
(二)设置主目录
1、 设置ftpad***目录: /var/ftp
[root@localhost ~]#chown ftpadmin /var/ftp
//更改目录/var/ftp的所有者为ftpadmin
注意空格:chown (空格) ftpadmin (空格) /var/ftp
[root@localhost ~]#chown ftpadmin /var/ftp/pub
//更改目录/var/ftp/pub所有者为ftpadmin。
注意空格:chown (空格) ftpadmin(空格) /var/ftp/pub
提示:没有提示则成功,这里是修改文件夹属性,调整文件夹所有者。和Windows文件夹右键属性,“安全”选项卡一样。
2、 创建目录/var/ftp/user01
, 并设置user01 目录所有者为user01
[root@localhost ~]#mkdir /var/ftp/user01
注意空格:mkdir (空格)/var/ftp/user01
这句执行成功后,下一句才可以正常执行,不然会出现没此文件夹。
[root@localhost ~]#chown user01 /var/ftp/user01
注意空格:chown (空格) user01 (空格)/var/ftp/user01
注:实体账户的默认目录为:/home/username
匿名账户的默认目录为:/var/ftp
root 账号不能作为ftp 登录账号
三、配置ftp 服务器
(一)主配文件/etc/vsftpd/vsftpd.conf
提示:寻找文件时,最好使用计算机右键不要直接双击打开,选择“浏览文件夹”这样文件夹不会越开越多。如图:
技巧:直接按文件名可以快速搜索首字母。
#与主机相关的设置值
connect_from_port_20=YES write_enable=YES dirmessage_enable=YES listen=YES
打开文件后可以按“Ctrl+F”搜索字段。
提示:语句前面的“#”是注释本行,去掉则执行本行。
#匿名用户登录的设置值
anonymous_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=YES
上面两句没在文件中出现,可以直接添加,注意英文的正确性,不然启动时会提示错误。
anon_upload_enable=YES
#与实体用户相关的设置值
local_enable=YES
local_umask=022
userlist_enable=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsFTPd.chroot_list
最后一句chroot_list_file=/etc/vsFTPd.chroot_list
实验说明书和正常文件有出入,“FTP”是大写,Linux中文件名区分大小写,还有vsFTPd后面是“.”不是“/”要和后面的“vsFTPd.chroot_list”文件统一
#系统安全方面的设置值
xferlog_std_format=YES
pam_service_name=vsftpd
tcp_wrappers=YES
(二)编辑文件/etc/passwd
把user01
的主目录改为/var/ftp
把ftpadmin
的主目录改为/var/ftp
如图:
注意冒号要保留,应该按照图上,不能少任何一个符号。
(三)编辑文件/etc/ vsFTPd.chroot_list
该文件默认是不存在的,需要手动自行建立。可以在桌面上点右键创建文档->新文件,并把该文件改名为vsFTPd.chroot_list,然后拷贝到/etc目录。
在其中加入两行内容,第一行:use01;第二行:ftpadmin。
实验指导书上“use01”应为“user01”。
注:
通过主配文件里的两行chroot_list_enable=YES
和chroot_list_file=/etc/vsFTPd.chroot_list
,以及二.(二)、三.(二)和三.(三)等的设置,达到了“普通用户user01,能浏览下载目录/var/ftp/下的文件,并能向/var/ftp/user01/ 目录上传文件;同时限制user01不能离开/var/ftp目录”以及“FTP管理员用户vftpadmin,拥有整个/var/ftp/目录的下载上传权限;同时限制vftpadmain不能离开/var/ftp目录”的要求。
四、重启服务
[root@localhost ~]#service vsftpd restart
测试关键:
如果在安装红帽的时候,没有关掉或者禁用防火墙和SELinux时,上传文件和创建文件夹时会提示错误。
解决方法:关掉防火墙和SELinux
在终端里输入system-config-securitylevel