怎么在Linux下建立安全的FTP服务器?

老牛  2010-03-06 10:05  阅读 252 views 次 评论 0 条
摘要:

Linux系统相对于Windows是比较安全的,系统漏洞较少,针对该系统的病毒也较少,外部不易攻击。所以用Linux系统做各种网络服务是非常理想的。下面仅就linux系统下FTP及DHCP服务做一下详细讲述。

学习Linux系统时,你可能会遇到网络服务的问题,这里将介绍linux FTP服务器安全及DHCP服务的实现的解决方法,在这里拿出来和大家分享一下。

Linux系统相对于Windows是比较安全的,系统漏洞较少,针对该系统的病毒也较少,外部不易攻击。所以用Linux系统做各种网络服务是非常理想的。下面仅就linux系统下FTP及DHCP服务做一下详细讲述。

系统:Redflag Linux 4.1

FTP服务的实现

首先下载FTP服务软件包vsFTPd-1.1.3-8.i386.rpm,安装该软件包。命令如下:

[root@localhost lxjun]# rpm -ivh vsFTPd-1.1.3-8.i386.rpm。安装完成后,在/etc/vsFTPd目录下自动生成vsFTPd.conf文件。启动ntsysv,会在服务列表中出现vsFTPd项。选中该项,重启服务器。

笔者设置的vsFTPd.conf配置文件内容如下:

anonymous_enable=YES

local_enable=YES

write_enable=YES

local_umask=022

anon_upload_enable=no

anon_mkdir_write_enable=no

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_file=/var/log/vsFTPd.log

ascii_upload_enable=YES

ascii_download_enable=YES

pam_service_name=vsFTPd

userlist_enable=YES

listen=YES

tcp_wrappers=YES

配置完毕后即可实现基本的FTP服务了。现就几个问题做以下说明。

问题1:无法下载/var/FTP/pub下的文件,FTP客户端显示”文件无法被服务器打开!”。

解决方法:查看目录下其它可以下载的文件属性,为644,而该文件属性为600,将该文件属性改为644即可。执行以下命令

[root@localhost pub]# chmod 644 vsFTPd.conf

或[root@localhost pub]# chmod go+r vsFTPd.conf

即所有用户对该文件都享有读权限。重新下载正常。

问题2:如何实现匿名用户的上传?

大部分的linux FTP服务器安全是不允许匿名用户上传的,为了服务器的安全性,这当然可以理解。但从技术上来说,匿名是可以实现上传功能的。现说明如下:

在vsFTPd.conf文件中增加如下命令行:

anon_upload_enable=yes

anon_mkdir_write_enable=yes

anon_world_readable_only=no

anon_other_write_enable=yes

即对匿名用户开放最大权限。

1.创建匿名用户的上传目录

[root@localhost FTP]# mkdir incoming

2.修改上传目录的权限

[root@localhost FTP]# chmod o+w incoming

3. REBOOT服务器

注:匿名用户的上传最好单独设置一个目录,不要把文件上传至/var/FTP/pub目录中,这样会给文件管理带来很大的方便。做法就是不要给/var/FTP/pub目录赋予”o+w”权限。

问题3:能否用其他端口代替FTP的默认端口提供服务呢?

FTP服务器默认的端口号为21,为了减少外部攻击,可以为该服务提供一个不常用的端口号,以10021端口为例。方法如下:

在/etc/vsFTPd/vsFTPd.conf中增加语句:

listen_port=10021

这样就可以通过服务器的port 10021提供FTP服务了。

关闭port 21

使用命令查看FTP使用的端口号,如下:

[root@localhost vsFTPd]# netstat -anp |grep 21

tcp 000.0.0.0:100210.0.0.0:*LISTEN 562/vsFTPd

tcp 000.0.0.0:210.0.0.0:*LISTEN 549/xinetd

可以看出port 10021和port 21都处于监听状态,关闭port 21。

[root@localhost vsFTPd]# kill -9 549(PID)

这样FTP客户端只能以port 10021端口登录了。一些非法用户就无法通过猜测端口进行强制登录了。增强了系统的安全性。

以上给大家讲解的是linux FTP服务器安全解决办法。

历史上的今天:

本文地址:http://xiaohost.com/71.html
版权声明:本文为原创文章,版权归 老牛 所有,欢迎分享本文,转载请保留出处!

发表评论


表情