收藏 分销(赏)

linux课堂笔记5--vsftpd服务器的配置.docx

上传人:xrp****65 文档编号:8891850 上传时间:2025-03-06 格式:DOCX 页数:6 大小:18.32KB 下载积分:10 金币
下载 相关 举报
linux课堂笔记5--vsftpd服务器的配置.docx_第1页
第1页 / 共6页
linux课堂笔记5--vsftpd服务器的配置.docx_第2页
第2页 / 共6页


点击查看更多>>
资源描述
FTP服务器配置(实验环境:两台计算机,一台安装RHEL Server 5,另一台安装Windows XP,用集线器连接) 一般而言,用户必须经过身份验证才能登录Vsftpd服务器,然后才能访问和传输FTP服务器上的文件。Vsftpd服务器的用户分为两类:本地用户和匿名用户。 本地用户是在Vsftpd服务器上拥有账号的用户。本地用户输入自己的用户名和口令后可登录Vsftpd服务器,并且直接进入该用户的主目录。 匿名用户是在Vsftpd服务器上没有账号的用户。如果Vsftpd服务器提供匿名访问功能,那么就可以输入匿名用户名(ftp或anonymous),然后输入用户的E-mail地址作为口令进行登录。甚至不输入口令也可以登录。当匿名用户登录系统后,进入匿名FTP服务目录/var/ftp。 步骤一、检查所需的RPM包是否已经安装在系统中,方法是: rpm –qa |grep vsftpd 检查是否已安装vsftpd软件包 步骤二、安装所需的RPM包 若在步骤一中发现所需的RPM包没有安装,则需使用下面的命令来安装软件包,否则请转入第三步。 mount /media/cdrom/---------挂载光驱 rpm -ivh /media/cdrom/RedHat/RPMS/vsftpd-* ---------其中的*号可以按TAB键自动补齐 步骤三、配置匿名vsftpd服务器 vsftpd服务器最重要的是主配置文件vsftpd.conf。vsftpd守护进程运行时首先从vsftpd.conf文件获取配置文件的信息,然后配合ftpusers和userlist文件决定可访问的用户。下表列出了与vsftpd服务器相关的目录和文件。 文件/目录名 说明 /etc/vsftpd/vsftpd.conf Vsftpd服务器的主配置文件 /etc/vsftpd/ftpusers 禁止访问vsftpd服务器的用户列表(只能做黑名单) /etc/vsftpd/user_list 根据vsftpd.conf许可或禁者访问vsftpd服务器的用户列表文件(可做白名单和黑名单) /var/ftp 匿名用户的默认文件目录 下表列出了vsftpd.conf文件中比较常用的部分配置参数。 参数名 说明 anonymouse_enable 指定是否允许匿名登录,默认为YES local_enable 指定是否允许本地用户登录,默认为YES write_enable 指定是否开放写权限,默认为YES local_umask 指定文件创建的初始权限 dirmessage_enable 指定是否能浏览目录内信息 anon_upload_enable 指定是否让匿名用户上传文件 anon_mkdir_write_enable 指定是否让匿名用户创建文件夹 xferlog_enable 指定是否启用日志功能 xferlog_std_format 指定采用何种日志格式 xferlog_file 指定日志文件的存放路径 connect_from_port_20 指定是否启用20端口进行数据连接 idle_session_timeout 指定用户会话空闲多少时间(秒)后自动断开 data_connection_timeout 指定数据连接空闲多少时间(秒)后自动断开 ftpd_banner 指定登录时的欢迎信息 banner_file 欢迎信息较长时可以使用某个文件内容作为欢迎信息,此参数指定该文件的路径 ascii_upload_enable 指定是否允许使用ASCII格式上传文件 asii_download_enable 指定是否允许使用ASCII格式下载文件 listen 指定 vsftpd服务器的运行方式,默认为YES以独立方式运行 pam_service_name 指定验证方式(默认为vsftpd) tcp_wrappers 指定是否启用防火墙 chroot_list_enable 指定是否启用锁定在主目录中的用户的列表 chroot_list_file 锁定在主目录中的用户列表文件的路径 chroot_local_user 锁定本地用户在自己的根目录中 userlist_enable 指定是否启用user_list文件 userlist_file 指定黑名单或者白名单的文件路径 userlist_deny 指定名单是黑名单还是白名单(YES或NO) vsftpd服务器的默认设置是允许本地用户和匿名用户登录,本地用户默认进入其个人主目录(/home/账户名),并可以切换到其他有权访问的目录,还可以上传和下载文件。匿名用户只能下载/var/ftp/目录下的文件。默认情况下/var/ftp/目录下没有任何文件。 我们现在将vsftpd服务器配置为专用的匿名FTP服务器,仅允许匿名用户登录。匿名用户可在/var/ftp/pub目录中新建目录、上传和下载文件。输入以下命令: cd /etc/vsftpd cp vsftpd.conf vsftpd.conf.bak ------------对原始文件进行备份 ls vi vsftpd.conf -------------------确认如下参数的值 anonymous_enable=yes local_enable=no write_enable=yes anon_upload_enable=yes anon_mkdir_write_enable=yes connect_from_port_20=yes listen=yes tcp_wrappers=yes 保存退出。输入以下命令: chmod o+w /var/ftp/pub ---修改/var/ftp/pub目录的权限允许其他用户写入文件 ll /var/ftp 确认自己的IP地址: ifconfig eth0 setup service network restart service vsftpd start ---启动vsftpd服务 步骤四、测试匿名vsftpd服务器 (1)在windows计算机上,运行菜单项中输入:CMD (2)进入字符界面下,输入:ftp 192.168.21.1 (3)连接到vsftpd服务器后,输入服务用户名,如:“tom”(本用户是本地用户)。屏幕会提示“530 This FTPserver is anonymous only. login failed”。 (4)待屏幕出现ftp提示符“ftp>”时,先输入“close”命令断开这次连接,然后输入“open 192.168.21.1”命令,再次连接到vsftpd服务器。输入匿名用户名“anonymous”,并在“Password:”后输入口令(邮件地址)或不输入口令直接回车,即可登录到服务器。 (5)在“ftp>”提示符后输入命令: cd pub -------切换到匿名用户专用目录/var/ftp/pub mkdir mydir -------新建一个mydir的目录 put abc.txt ------上传abc.txt文件 get abc.txt ------下载abc.txt文件 bye -----------关闭FTP命令行工具 步骤五、配置用户专用的vsftpd服务器 将vsftpd服务器配置成仅Linux用户可以使用的FTP服务器,用户只能操作其主目录,不能切换到其他目录。输入如下命令: vi vsftpd.conf -------------------确认如下参数的值 anonymouse_enable=no local_enable=yes write_enable=yes connect_from_port_20=yes listen=yes tcp_wrappers=yes pam_service_name=vsftpd userlist_enable=yes chroot_local_user=yes userlist_file=/etc/vsftpd/user_list userlist_deny=yes -------------不允许vsftpd/user_list列表中的用户登录FTP服务器 保存退出。 注意: 限制某些本地用户登录服务器有多种方法: (1) 直接编辑vsftpd/ftpusers文件,将禁止登录的用户名写入该文件中; (2) 直接编辑vsftpd/user_list文件,将禁止登录的用户名写入该文件中,此时在vsftpd.conf文件中应设置“userlist_enable=yes”和“userlist_deny=yes”语句,则vsftpd/user_list文件中指定的用户不能访问FTP服务器。 (3) 直接编辑vsftpd/user_list文件,将允许登录的用户名写入该文件中,此时在vsftpd.conf文件中应设置“userlist_enable=yes”和“userlist_deny=no”语句,则只允许vsftpd/user_list文件中指定的用户访问FTP服务器。如果某用户同时出现在vsftpd/ftpusers和vsftpd/user_list文件中,那么该用户将不允许登录。这是因为vsftpd总是先执行vsftpd/user_list,再执行vsftpd/ftpusers文件。 编辑vsftpd/user_list文件,确认不允许登录的用户名单。 vi /etc/vsftpd/user_list 请注意添加2用户帐户!!! useradd aaa passwd aaa 修改密码 重启vsftpd服务:service vsftpd restart 步骤六、测试用户专用vsftpd服务器 (1)在windows计算机上,运行菜单项中输入:CMD (2)进入字符界面下,输入:ftp 192.168.21.1 (3)连接到vsftpd服务器后,输入服务用户名,如:“anonymous”。屏幕会提示“530 Login incorrect. login failed”。 (4)待屏幕出现ftp提示符“ftp>”时,先输入“close”命令断开这次连接,然后输入“open 192.168.21.1”命令,再次连接到vsftpd服务器。输入用户名“tom”,并在“Password:”后输入口令后按回车,即可登录到服务器。 (5)在“ftp>”提示符后输入命令: pwd ----------查看用户主目录 cd /etc -------屏幕会提示用户无权操作 mkdir mydir -------新建一个mydir的目录 put abc.txt ------上传abc.txt文件 get abc.txt ------下载abc.txt文件 bye -----------关闭FTP命令行工具 步骤七、配置虚拟账号vsftpd服务器 VSFTPD服务器提供了对虚拟用户的支持,它采用PAM认证机制实现了虚拟用户的功能。所谓虚拟用户,是指用户本身不是系统本地用户(即该用户账号信息不存在于/etc/passwd文件中),也不是匿名用户(因为匿名用户登录时都采用统一的用户名anonymous或ftp ),每个虚拟用户都可以有自己特定的用户名称,且虚拟用户名称都存放于独立的账号数据库中。在验证时,VSFTPD需要一个系统用户的身份来读取数据库文件或数据库服务器以完成验证过程,这就是VSFTPD的guest用户。正如匿名用户也需要一个系统用户ftp一样,也可以把guest用户看成是虚拟用户在系统中的代表。 (1) 首先我们创建虚拟用户数据库文件 Vi /etc/virtuserdb.txt virtuser1 user001 virtuser2 user002 virtuser3 user003 保存退出。该文件的奇数行为虚拟用户名,偶数行为相应的口令。 然后执行如下命令生成虚拟用户数据库文件,并改变虚拟用户数据库文件的权限。 db_load -T -t hash -f /etc/virtuserdb.txt /etc/vsftpd/vsftpd.db chmod 600 /etc/vsftpd/vsftpd.db (2) 创建PAM认证文件,创建虚拟用户使用的PAM论证文件。 Vi /etc/pam.d/vsftpd.virtual auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd 该PAM认证配置文件中有两条规则:第一条规则的功能是设置利用pam_userdb.so模块来进行身份认证,主要是接受用户名和口令,进而对该用户的口令进行认证,并负责设置用户的一些秘密信息。其中采用的数据库是/etc/vsftpd/vsftpd.db文件(此处省略了文件名后面的“.db”);第二条规则的功能是检查账户是否被允许登录系统,账号是否已经过期,账号的登录是否有时间限制等,设置在进行账号授权时采用的数据库也是/etc/vsftpd/vsftpd.db文件 (3) 创建虚拟用户所对应的真实账号及其所登录的目录,并设置相应的权限。 useradd -d /var/virtuser virtuser chmod 744 /var/virtuser (4) 编辑/etc/vsftpd/vsftpd.conf文件,增加或修改的内容如下: Vi /etc/vsftpd/vsftpd.conf guest_enable=YES ………….激活虚拟用户登录功能 guest_username=virtuser ………指定虚拟用户所对应的真实用户 pam_service_name=vsftpd.virtual ….修改原文件中的pam_service_name值,设置PAM认证时所采用的文件名称。 保存退出。 步骤八、测试虚拟账户vsftpd服务器 (1)在windows计算机上,运行菜单项中输入:CMD (2)进入字符界面下,输入:ftp 192.168.21.1 (3)连接到vsftpd服务器后,输入服务用户名,如:“virtuser”。并在“Password:”后输入口令后按回车,即可登录到服务器。 (5)在“ftp>”提示符后输入命令: pwd ----------查看用户主目录 put abc.txt ------上传abc.txt文件 get abc.txt ------下载abc.txt文件 bye -----------关闭FTP命令行工具 注意: 有两点需要说明,一是vsftpd指定虚拟用户登录后,本地用户就不能登录了;二是虚拟用户在某种程度中更接近于匿名用户,包括上传、下载、修改文件名、删除文件等配置所使用的指令与匿名用户的指令是相同的。例如,如果要允许虚拟用户上传文件,则需要采用如下指令: anon_upload_enable=YES
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服