科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道实战:全面保障FTP服务器的安全

实战:全面保障FTP服务器的安全

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

FTP即文件传输协议,是Internet上使用最广泛、信息传输量最大的应用之一。我们可以通过编辑FTP服务器的配置文件来调整访问权限,在传输文件过程中进行文件加密等措施来达到FTP服务器的安全工作。

来源:IT168 2008年4月1日

关键字: 操作系统 加密 passwd 远程 服务器 ftp

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共2页)

为了做到这一点,需要在目录/home/ftp中创建一个新的目录bin,接着复制一份命令ls放到/home/ftp/bin中。此目录将限制ftp用户的使用,他们使用的命令ls是目录/home/ftp/bin中的命令,而不是管理员用的/bin中的ls命令。通过同样的方法,可以让ftp用户使用其他命令。

  目录/home/ftp/etc中存放passwd和group文件的副本,这个目录的存在也阻止ftp用户访问/etc目录下的原文件。编辑/home/ftp/etc/passwd文件,删除系统的一般用户的项,剩余的项的口令应被设置为3,以保护访问。对于group文件,除去所有的用户组并设置所有的口令为3。

  具体命令如下:

  #cat/home/ftp/etc/kpasswd

  root:3:0:0:::

  bin:3:1:1:::

  operator:3:11:0:::

  ftp:3:14:50:::

  nobody:3:99:99:::

  #cat/home/ftp/etc/group

  root::0:

  bin::1:

  daemon::2:

  sys::3:

  adm::4:

  ftp::50:

  目录/home/ftp/pub中放有想让远程ftp用户下载的文件。当ftp用户注册到系统时,它将处于目录/home/ftp中,并能切换到目录/home/ftp/pub中开始访问其中的文件。在/home/ftp/pub中能加入任何希望的目录和文件,甚至可以指定一些目录为上传目录,允许ftp用户上传文件到系统中。

  一些Linux系统要求,ls命令工作时要访问libc.so.l和rld文件。它们通常存放在/lib目录中。因为不希望ftp用户间接访问系统,所以要创建一个/home/ftp/lib目录,并复制这些文件到此目录中。

  另外,因为rld使用/dev/zero文件,还要创建一个/home/ftp/dev目录并用mknod复制设备文件/dev/zero,然后把它放到此目录中。

  3)权限

  为了限制ftp用户只能访问目录/home/ftp和它的子目录,需要对ftp用户隐藏文件结构的其余部分。要让目录/home/ftp呈现为ftp用户的主目录,实际的主目录和其他的目录结构则对ftp用户隐藏。可以用命令chroot加上参数ftp,使得目录/home/ftp呈现为主目录。

  ftp目录的权限应该设置为允许ftp用户访问。对于所有者、组和另外的用户,有三组权限为读、写和执行。为了允许ftp用户访问,组和目录的其他权限应设置为可读和执行。执行权限允许ftp用户访问目录,读权限则允许列出目录中内容。目录不允许ftp用户具有写权限,没人想让ftp用户能删除或添加一个目录。对于拥有可以下载的文件的目录/home/ftp/pub来说,它必须拥有读和执行的权限。

  作为目录的所有者,需要写权限以便能添加新文件或子目录。当然,只有当做改变时才需要写权限。为了进一步的安全,当不需要做改动时,能设置这些目录对所有的用户包括所有者都只开放读和执行的权限。用命令chmod加上数字555和目录名将设置对所有的用户为读和执行权限。

  对于目录/home/ftp/bin中文件的权限和其他指定的ftp目录的权限有时需要更多的限制。一些文件需要执行,而另一些文件只要被读。目录/home/ftp/bin或/home/ftp/lib中的文件ls和rld需要执行,可以设置权限为555。在目录/home/ftp/etc中的文件象passwd和group可以设置权限为111,即只读的权限。

  4)监测和记录

  用ftpwho命令可以显示通过FTP正在与系统连接的所有用户的进程信息。下面是ftpwho输出的一个例子:

  Service class all

  10448?S0:00

  ftpd:vestax.domain.com:anonymouws/sshah@domain.com:DLE

  10501?S0:00

  ftpd:toybox.domain.com:heidi:PETR mklinux-ALL.sit.bin-2 user(-1 maximum)

  在这里,可以看到有两个用户登录进入系统(本例没有对用户数进行限制)。第一个用户是一个称sshah@domain.com的匿名用户,他目前没有执行任何操作;第二个用户名为heidi,他目前正在获取mklinux-ALL.sit.bin文件。用ftpcount命令可以查看当前每个组的用户个数。显示信息如下:

  Serviceclassall-2user(-1maximum)

  最后,建议详细记载ftp登录,以防不测。

  适度隔离保证安全

  FTP被我们广泛应用,自建立后其主框架相当稳定,二十多年没有什么变化,但在Internet迅猛发展的形势下,其安全问题日益突出,因此对于FTP的使用首先应做到正确地配置FTP,防止系统文件被窃取或者目录下程序进程被启动。

  其次,有条件的地方将FTP服务器与网络上的其他应用隔离,这样即便被攻击也不会影响整个系统。最后注意定期观察FTP服务器的运行情况,检查硬盘的大小,并做出相应处理。

  上述对FTP服务器的安全性能分析在一定程度上缓解了FTP服务的安全问题,而RFC2228.txt中提出的FTP扩展,提供了强大的认证和集成,并引入新的可选命令、应答和文件传输加密,使得控制和数据连接中的安全性大大提高。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章