实验需求:
Red Hat Enterprise Linux 5.4
试验目的:
搭建使用虚拟账号登陆ftp服务器
实验步骤:
[root@mail ~]# cd /mnt/cdrom/Server/【进入server仓库】
[root@mail Server]# yum install vsftpd-2.0.5-16.el5.i386.rpm -y –nogpgcheck【安装ftp服务所需软件包】
[root@mail Server]# vim /etc/vsftpd/vmuser.txt【创建虚拟账号文件】
[root@mail Server]# yum install db4-utils-4.3.29-10.el5.i386.rpm -y –nogpgcheck【安装db工具,使用db_load产生相应数据库文件】
[root@mail Server]# db_load -T -t hash -f /etc/vsftpd/vmuser.txt /etc/vsftpd/vmuser.db【将创建的虚拟账号名与密码生成相应的数据库文件】
[root@mail etc]# vim /etc/vsftpd/vsftpd.conf【用户登录ftp时,默认到/etc/passwd下进行账户验证。本文件中116行说明可以使用pam验证,验证文件的名称为vsftpd,而该文件需要使用模块/lib/security/pam_userdb.so】
【查看模块的方法:man /usr/share/doc/pam-0.99.6.2/txts/README.pam_userdb,可以看到pam_userdb模块是用来验证存放在数据库中的用户名和密码】
[root@mail ~]# vim /etc/pam.d/vsftpd
[root@mail ~]# useradd user1【创建新用户user1】
[root@mail ~]# passwd user1【为user1创建密码】
[root@mail ~]# vim /etc/vsftpd/vsftpd.conf【将虚拟账号映射称为本地账号,添加120,122行】
[root@mail home]# chmod 744 user1/【修改usr1文件夹权限,赋予读权限使进入user1的用户能够读取其中的文件】
[root@mail ~]# service vsftpd restart【重新启动ftp服务】
[root@mail ~]# chkconfig vsftpd on【将ftp服务设置为开机自启动】
【接入主机测试虚拟账号登陆ftp服务器】
【虚拟账号登陆映射到user1成功】
【设置对用户的限制】
【匿名账号可以访问公司的公共文
【不允许匿名用户上传文档】
【匿名账号不能上传文档】
【创建新分区进行磁盘配额,增加分区大小为5000M】
[root@mail vsftpd]# fdisk /dev/sda
[root@mail ~]# partprobe /dev/sda【重新读取分区表】
[root@mail ~]# cat /proc/partitions【查看分区信息,验证是否添加成功】
[root@mail ~]# mkfs -t ext3 /dev/sda4【格式化新建分区,格式为ext3】
[root@mail ~]# mkdir /mnt/partion【创建磁盘分区的挂载点】
[root@mail ~]# vim /etc/fstab【将/dev/sda4分区永久挂载到系统当中】
[root@mail ~]# mount –a【使磁盘配额生效】
[root@mail ~]# mount【查看挂载信息,挂载成功】
[root@mail ~]# quotacheck –augvc 【执行quotacheck -augvc检测环境并生成用户的配额文件】
[root@mail ~]# edquota -u user1【编辑user1的配额文件】
[root@mail ~]# quotaon /dev/sda4【使磁盘配额生效】
[root@mail ~]# vim /etc/rc.d/rc.local【在开机脚本文件中添加开机执行的命令】
[root@mail ~]# mkdir /mnt/partion/home【创建ftp的用户的家目录】
[root@mail ~]# cd /home/
[root@mail home]# mv * /mnt/partion/home/【此时user1的家目录为/root目录下,磁盘配额是在/dev/sda4上做的,需要将家目录移到/dev/sda4上】
[root@mail home]# cd /mnt/partion/
[root@mail partion]# chmod -R o+rw home【使用递归对当前目录下所有档案与子目录进行相同的权限变更】
[root@mail partion]# vim /etc/passwd【将密码文件的储存位置存放为/mnt/partion/home目录下】
[root@mail partion]# cd /mnt/partion/home/user1/【进入磁盘配额user1家目录】
[root@mail user1]# touch f1.user1【创建新文件,测试ftp访问的根目录是否在该目录中】
【测试ftp的根目录是否在/mnt/partion/home/中】