Linux系统中如何提高VSFTP服务器安全性

Linux系统中如何提高VSFTP服务器安全性,第1张

但是,安全问题也一直伴随在FTP左右。如何防止攻击者通过非法手段窃取FTP服务器中的重要信息如何防止攻击者利用FTP服务器来传播木马与病毒等等。这些都是系统管理员所需要关注的问题。这次我就已Linux *** 作系统平台上使用的最广泛的VSFTP为例,谈谈如何来提高FTP服务器的安全性。一、禁止系统级别用户来登录FTP服务器为了提高FTP服务器的安全,系统管理员最好能够为员工设置单独的FTP帐号,而不要把系统级别的用户给普通用户来使用,这会带来很大的安全隐患。在VSFTP服务器中,可以通过配置文件vsftpd.ftpusers来管理登陆帐户。不过这个帐户是一个黑名单,列入这个帐户的人员将无法利用其帐户来登录FTP服务器。部署好VSFTP服务器后,我们可以利用vi命令来查看这个配置文件,发现其已经有了许多默认的帐户。其中,系统的超级用户root也在其中。可见出于安全的考虑,VSFTP服务器默认情况下就是禁止root帐户登陆FTP服务器的。如果系统管理员想让root等系统帐户登陆到FTP服务器,则知需要在这个配置文件中将root等相关的用户名删除即可。不过允许系统帐户登录FTP服务器,会对其安全造成负面的影响,为此我不建议系统管理员这么做。对于这个文件中相关的系统帐户管理员最好一个都不要改,保留这些帐号的设置。如果出于其他的原因,需要把另外一些帐户也禁用掉,则可以把帐户名字加入到这个文件中即可。如在服务器上可能同时部署了FTP服务器与数据库服务器。那么为了安全起见,把数据库管理员的帐户列入到这个黑名单,是一个不错的做法。匿名用户是指那些在FTP服务器中没有定义相关的帐户,而FTP系统管理员为了便于管理,仍然需要他们进行登陆。但是他们毕竟没有取得服务器的授权,为了提高服务器的安全性,必须要对他们的权限进行限制。在VSFTP服务器上也有很多参数可以用来控制匿名用户的权限。系统管理员需要根据FTP服务器的安全级别,来做好相关的配置工作。需要说明的是,匿名用户的权限控制的越严格,FTP服务器的安全性越高,但是同时用户访问的便利性也会降低。故最终系统管理员还是需要在服务器安全性与便利性上取得一个均衡。一是参数anon_world_readable_only。这个参数主要用来控制匿名用户是否可以从FTP服务器上下载可阅读的文件。如果FTP服务器部署在企业内部,主要供企业内部员工使用的话,则最好把这个参数设置为YES。然后把一些企业常用表格等等可以公开的文件放置在上面,让员工在匿名的情况下也可以下载这些文件。这即不会影响到FTP服务器的安全,而且也有利于其他员工 *** 作的便利性上。二是参数anon_upload_enable。这个参数表示匿名用户能否在匿名访问的情况下向FTP服务器上传文件。通常情况下,应该把这个参数设置为No。即在匿名访问时不允许用户上传文件。否则的话,随便哪个人都可以上传文件的话,那对方若上传一个病毒文件,那企业不是要遭殃了。故应该禁止匿名用户上传文件。但是这也有例外。如有些企业通过FTP协议来备份文件。此时如果企业网络的安全性有所保障的话,可以把这个参数设置为YES,即允许 *** 作系统调用FTP命令往FTP服务器上备份文件。在这种情况下,为了简化备份程序的部署,往往采用匿名访问。故需要在FTP服务器上允许匿名用户上传文件。三是参数anon_other_write_enable与参数anon_mkdir_write_enable。这两个参数主要涉及到匿名用户的一些比较高级的权限。如第一个参数表示匿名用户具有上传和建立子目录之外的权限,如可以更改FTP服务器上文件的名字等等。而第二个参数则表示匿名用户可以在特定的情况下建立子目录。这些功能都会影响到FTP服务器的安全与文件的安全。为此除非有特别需要的原因,否则的话都应该把这些权限禁用掉。即把这些参数的值设置为NO。我认为,除非FTP服务器是系统管理员拿来玩玩的,可以开启这些参数。否则的话,还是把这些参数设置为NO为好,以提高FTP服务器的安全。三、做好目录的控制通常情况下,系统管理员需要为每个不同的用户设置不同的根目录。而为安全起见,不让不同用户之间进行相互的干扰,则系统管理员需要设置不让用户可以访问其他用户的根目录。如有些企业为每个部门设置了一个FTP帐户,以利于他们交流文件。那么销售部门Sales有一个根目录sales仓库部门有一个根目录Ware。作为销售员工来说,他们可以访问自己根目录下的任何子目录,但是无法访问仓库用户的根目录Ware。如此的话,销售部门员工也就无法访问仓库用户的文件了。可见,通过限制用户访问根目录以外的目录,可以防止不同用户之间相互干扰,以提高FTP服务器上文件的安全。为了实现这个目的,可以把参数chroot_local_user设置为NO。如此设置后,所有在本地登陆的用户都不可以进入根目录之外的其他目录。不过在进行这个控制的时候,最好能够设置一个大家都可以访问的目录,以存放一些公共的文件。我们既要保障服务器的安全,也不能够因此影响到文件的正常共享交流。四、进行传输速率的限制有时候为了保障FTP服务器的稳定运行,需要对其文件上传下载的速率进行限制。如在同一台服务器上,分别部署了FTP服务器、邮件服务器等等。为了这些应用服务能够和平共处,就需要对其的最大传输速率进行控制。因为同一台服务器的带宽是有最大限制的。若某个应用服务占用比较大的带宽时,就会对其他应用服务产生不利的影响,甚至为导致其他应用服务无法正常相应用户的需求。再如有时候FTP用途的不同,也需要设置最大速率的限制。如FTP同时作为文件备份与文件上传下载等用途,那么为了提高文件备份的效率,缩短备份时间就需要对文件上传下载的速率进行最大值的限制。为了实现传输速率的限制,系统管理员可以设置local_max_rate参数。默认情况下,这个参数是不启用的,即没有最大速率的限制。不过基于以上这些原因,我还是建议各位系统管理员在把FTP服务器投入生产运营之前能够先对这个参数进行设置。防止因为上传下载耗用了过多的带宽而对其他应用服务产生负面的影响。系统管理员需要在各个应用服务之间取得一个均衡,合理的分配带宽。至少要保证各个应用服务能够正常响应客户的请求。另外在有可能的情况下,需要执行错峰运行。如在一台主机上同时部署有邮件服务器与FTP服务器。而FTP服务器主要用来进行文件备份。那么为了防止文件备份对邮件收发产生不利影响(因为文件备份需要比较大的带宽会在很大程度上降低邮件收发的速度),最好能够把文件备份与邮件收发的高峰时期分开来。如一般情况下早上上班时是邮件收发的高峰时期,那就不要利用FTP服务来进行文件备份。而中午休息的时候一般收发邮件就比较少了。此时就可以利用FTP来进行文件备份。所以把FTP服务器与其他应用服务错峰运行,那么就可以把这个速率设置的大一点,以提高FTP服务的运行效率。当然,这对系统管理员提出了比较高的要求。因为系统管理员需要分析各种应用,然后再结合服务器的部署,来进行综合的规划。除非有更高的措施与更好的条件,否则的话对FTP服务器进行最大速率传输是必须的。

步骤 1:安装 FTP 服务器

1、 安装 vsftpd 服务器很直接,只要在终端运行下面的命令。

# yum install vsftpd

2、 安装完成后,服务先是被禁用的,因此我们需要手动启动,并设置在下次启动时自动启用:

# systemctl start vsftpd

# systemctl enable vsftpd

3、 接下来,为了允许从外部系统访问 FTP 服务,我们需要打开 FTP 守护进程监听的 21 端口:

# firewall-cmd --zone=public --permanent --add-port=21/tcp

# firewall-cmd --zone=public --permanent --add-service=ftp

还可以使用selinux进行。。

FTP是一种文件传输协议。有时我们把他形象的叫做文件交流集中地。FTP文件服务器的主要用途就是提供文件存储的空间,让用户可以上传或者下载所需要的文件。在企业中,往往会给客户提供一个特定的FTP空间,以方便跟可以进行一些大型文件的交流,如大到几百兆的设计图纸等等。同时,FTP还可以作为企业文件的备份服务器,如把数据库等关键应用在FTP服务器上实现异地备份等等。可见,FTP服务器在企业中的应用是非常广泛的。真是因为其功能如此的强大,所以,很多黑客、病毒也开始关注他了。他们企图通过FTP服务器为跳板,作为他们传播木马、病毒的源头。同时,由于FTP服务器上存储着企业不少有价值的内容。在经济利益的诱惑下,FTP服务器也就成为了别人攻击的对象。在考虑FTP服务器安全性工作的时候,第一步要考虑的就是谁可以访问FTP服务器。在Vsftpd服务器软件中,默认提供了三类用户。不同的用户对应着不同的权限与 *** 作方式。一类是Real帐户。这类用户是指在FTP服务上拥有帐号。当这类用户登录FTP服务器的时候,其默认的主目录就是其帐号命名的目录。但是,其还可以变更到其他目录中去。如系统的主目录等等。第二类帐户实Guest用户。在FTP服务器中,我们往往会给不同的部门或者某个特定的用户设置一个帐户。但是,这个账户有个特点,就是其只能够访问自己的主目录。服务器通过这种方式来保障FTP服务上其他文件的安全性。这类帐户,在Vsftpd软件中就叫做Guest用户。拥有这类用户的帐户,只能够访问其主目录下的目录,而不得访问主目录以外的文件。在组建FTP服务器的时候,我们就需要根据用户的类型,对用户进行归类。默认情况下,Vsftpd服务器会把建立的所有帐户都归属为Real用户。但是,这往往不符合企业安全的需要。因为这类用户不仅可以访问自己的主目录,而且,还可以访问其他用户的目录。这就给其他用户所在的空间 带来一定的安全隐患。所以,企业要根据实际情况,修改用户虽在的类别。修改方法:第一步:修改/etc/Vsftpd/vsftpd.conf文件。默认情况下,只启用了Real与Anonymous两类用户。若我们需要启用Guest类用户的时候,就需要把这个选项启用。修改/etc/Vsftpd/vsftpd.conf文件,把其中的chroot_list_enable=YES这项前面的注释符号去掉。去掉之后,系统就会自动启用Real类型的帐户。第二步:修改/etc/vsftpd.conf文件。若要把某个FTP服务器的帐户归属为Guest帐户,则就需要在这个文件中添加用户。通常情况下,FTP服务器上没有这个文件,需要用户手工的创建。利用VI命令创建这个文件之后,就可以把已经建立的FTP帐户加入到这个文件中。如此的话,某个帐户就属于Real类型的用户了。他们登录到FTP服务器后,只能够访问自己的主目录,而不能够更改主目录。第三步:重新启动FTP服务器。按照上述步骤配置完成后,需要重新启动FTP服务器,其配置才能够生效。我们可以重新启动服务器,也可以直接利用Restart命令来重新启动FTP服务。在对用户尽心分类的时候,笔者有几个善意的提醒。一是尽量采用Guest类型的用户,而减少Real类行的用户。一般我们在建立FTP帐户的时候,用户只需要访问自己的主目录下的文件即可。当给某个用户的权限过大时,会对其他用户文件的安全产生威胁。在以下几种情况下,我们要禁止这些账户访问FTP服务器,以提高服务器的安全。一是某些系统帐户。如ROOT帐户。这个账户默认情况下是Linxu系统的管理员帐户,其对系统具有最高的 *** 作与管理权限。若允许用户以这个账户为账户名进行登陆的话,则用户不但可以访问Linux系统的所有资源,而且,还好可以进行系统配置。这对于FTP服务器来说,显然危害很大。所以,往往不允许用户以这个Root等系统帐户身份登陆到FTP服务器上来。第二类是一些临时账户。有时候我们出于临时需要,为开一些临时账户。如需要跟某个客户进行图纸上的交流,而图纸本身又比较大时,FTP服务器就是一个很好的图纸中转工具。在这种情况下,就需要为客户设立一个临时账户。这些账户用完之后,一般就加入到了黑名单。等到下次需要再次用到的时候,再启用他。在vstftpd服务器中,要把某些用户加入到黑名单,也非常的简单。在Vsftpd软件中,有一个/etc/vsftpd.user_lise配置文件。这个文件就是用来指定哪些账户不能够登陆到这个服务器。我们利用vi命令查看这个文件,通常情况下,一些系统账户已经加入到了这个黑名单中。FTP服务器管理员要及时的把一些临时的或者不再使用的帐户加入到这个黑名单中。从而才可以保证未经授权的账户访问FTP服务器。在配置后,往往不需要重新启动FTP服务,配置就会生效。不过,一般情况下,不会影响当前会话。也就是说,管理员在管理FTP服务器的时候,发现有一个非法账户登陆到了FTP服务器。此时,管理员马上把这个账户拉入黑名单。但是,因为这个账户已经连接到FTP服务器上,所以,其当前的会话不会受到影响。当其退出当前会话,下次再进行连接的时候,就不允许其登陆FTP服务器了。所以,若要及时的把该账户禁用掉的话,就需要在设置好黑名单后,手工的关掉当前的会话。对于一些以后不再需要使用的帐户时,管理员不需要把他加入黑名单,而是直接删除用户为好。同时,在删除用户的时候,要记得把用户对应的主目录也一并删除。不然主目录越来越多,会增加管理员管理的工作量。在黑名单中,只保留那些将来可能利用的账户或者不是用作FTP服务器登陆的账户。这不但可以减少服务器管理的工作量,而且,还可以提高FTP服务器的安全性。在系统默认配置下,匿名类型的用户只可以下载文件,而不能够上传文件。虽然这不是我们推荐的配置,但是,有时候出于一些特殊的需要,确实要开启这个功能。如笔者以前在企业中,利用这个功能实现了对用户终端文件进行备份的功能。为了设置的方便,就在FTP服务器上开启了匿名访问,并且允许匿名访问账户网某个特定的文件夹中上传某个文件。笔者再次重申一遍,一般情况下,是不建议用户开启匿名账户的文件上传功能。因为很难保证匿名账户上传的文件中,不含有一些破坏性的程序,如病毒或者木马等等。有时候,虽然开启了这个功能,但是往往会在IP上进行限制。如只允许企业内部IP可以进行匿名访问并上传文件,其他账户则不行。如此的话,可以防止外部用户未经授权匿名访问企业的FTP服务器。若用户具有合法的账户,就可以在外网中登陆到FTP服务器上。总之,在FTP服务器安全管理上,主要关注三个方面的问题。一是未经授权的用户不能往FTP空间上上传文件;二是用户不得访问未经授权的目录,以及对这些目录的文件进行更改,包括删除与上传;三是FTP服务器本身的稳定性。以上三个问题中的前两部分内容,都可以通过上面的三个方法有效的解决。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9021567.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-24
下一篇 2023-04-24

发表评论

登录后才能评论

评论列表(0条)

保存