项目环境:
西安凌云高科技有限公司 业务的需求,需要架设一台FTP服务器. 系统稳定和安全等方面的考虑.公司决定采用RHEL.4作为服务器平台,在平台上面安装VSFTP软件包.在安装的过程中考虑系统安全性和流量控制.配置VSFTP服务器对最大连接数、最大传输速率等进行限制,保证系统资源的合法性.
项目标准:
能够实现FTP虚拟目录的上传和下载保证公用虚拟目录的上传下载.针对不同的虚拟目录设置不同的权限.
项目实施:
配置虚拟目录之前,VSFTP软件包我们已经安装完成.关于FTP的简单部署《菜鸟学Linux之四:FTP的安装以及简单的上传和下载》,在配置虚拟用户的时候我们 来了解一下用户的类型有哪几种.在VSFTPD服务器中支持的有匿名用户、本地用户、虚拟用户三种用户帐号:但是三种帐号确实运用于不同的场合,匿名用户是为“anonymous”或“ftp”的用户,匿名的可以供大家都可以使用;本地用户帐号是FTP服务器中的系统用户帐号,使用FTP本地用户帐号登陆FTP服务器,登陆目录为本地用户的宿主目录.虚拟用户帐号是为了保证FTP服务器的安全性,由vsftpd服务器提供的非系统的用户帐号,虚拟用户FTP登陆后将把指定的目录作为FTP根目录,虽然本地用户和虚拟用户有类似相同的功能,但是虚拟用户相对来说是十分的安全 正在逐步的取代本地用户帐号.
1.1.1.1. 建立虚拟用户口令库文件.在创建虚拟用户库口令的时候我们需要注意的是文件中奇数行设置虚拟用户的用户名.偶数行设置用户的口令.如图1-1所示我们是通过文本编辑器(VI)来建立的名为logins.tzt的用户和口令文件,文件中设置了用angeldevil的口令123.com和用户zhangkeyuan的口令123.com..在本次的实验中我们把用户“angeldevil”看作是公共的帐号;而把“zhangkeyuan”看作是私有的帐号;
1.1.1.2. 生成Vsftpd的认证文件.使用db_load命令来生成认证文件,“-f”命令选项设置的值是虚拟用户的口令文件,即logins.txt.命令只的参数设置需要生成的认证文件名sftpd——login.db,该文件放置在“/etc/sftpd/”中.配置完成之后我们来查看文件夹;具体的配置如图1-2所示:
1.1.1.3. 配置完成之后我们来设置不同的权限,在这里我们只是允许管理员的权限是读和写的权限,其他用户的权限没有,这样做的目的是为了更加的安全,具体的配置如图1-3所示:
1.1.1.4. 建立虚拟帐号所需要的PAM的配置文件.在“/etc/pam.d/vsftpd.conf”中来编辑配置文件,配置文件的名字是vsftpd.vu,当然我们还是来使用文本编辑(VI)来编辑 “/etc/pam.d/vsftpd.conf”,当编辑完成之后我们来查看所编辑的配置文件.如图1-4所示:
1.1.1.5. 创建虚拟用户所对应的不同的目录.我们在这里还是创建虚拟账户对应的系统用户,如图1-5所示:
1.1.1.6. 创建完虚拟账户之后我们为公用目录angeldevil设置权限,但是对于私有目录zhangkeyuan我们在这里不设置任何权限,对公用目录angeldevul设置的权限只允许下载不允许修改这样就增加了安全性.“-R”表示强制到子目录当中,具体的配置如图1-6所示:
1.1.1.7. 修改vsftpd.conf的主配置文件.一般在配置之前是要对配置文件要备份的,以防止在配置的时候出错方便恢复.但是在这里我们就不需要对配置文件备份了.如图1-7所示:
1.1.1.8. 设置虚拟用户配置文件; 我们在“/etc/vsftpd”下创建“users_config”,然后在“sftpd”下创建文件angeldevil和zhangkeyuan.具体如图1-8所示:
1.1.1.9. 编辑共用帐户angeldevil,如图1-9所示:
1.1.1.10. 编辑私有帐户zhangkeyuan,如图1-10所示:
1.1.1.11. 当配置完成之后我们来重启服务;如图1-11所示:
1.1.1.12. 配置完成之后我们来进入我 |