免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: yby123
打印 上一主题 下一主题

Solaris下虚拟VSFTP+蜜罐的架设 (申请加精) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-30 21:22 |显示全部楼层 |倒序浏览
Solaris下虚拟FTP+蜜罐的架设

                                                      中国科学院西安分院嵌入式小组
                                                                                                                    e-mail:netciw@yahoo.com.cn


关于蜜罐的问题,我这里没有讲详细,大概在5月中旬会有一个很详细蜜罐原理,搭建过程的文章与大家见面。这里只是想引入一个概念。

附件有文档下载


版权声明:本文档是由中国科学院西安分院嵌入式小组叶博洋编著整理,如果我们在文档中设计到您的版权问题,请通知作者.
         本文档版权所属中国科学院西安分院嵌入式小组,欢迎广大爱好solaris的朋友们转载,请保留版权信息。
如发现有用于盈利性活动,删节,删除版权声明以及原著者单位姓名等违反版权法之有关规定,我单位及作者保留法律诉讼权利!


重点说明:我这里测试的环境为solaris sparc版,在一些软件下载的时候请选择你对应系统版本安装包。

solaris10默认FTP为wu-ftp。这里我不推荐大家使用wu-ftp。第一:安全性;wu-ftp并不是一个非常安全的ftp软件。且版本过低,而且没有一个开发团队对它进行继续深入开发。wu-ftp不是inetd进程启动的,而是standlone独立进程,这样会给系统带来负担。Vsftp的官方全名“VERY SECUR”它的安全性也就不言而喻了。第二,速度;vsftp使用的是ASCII模式下载,有些资料提及wu-ftp与vsftp速度比较时,都明确阐述vsftp速度要快于wu-ftp。第三:稳定性;普通单机可支持4000用户以上并发同时连接。
前置提示:
本文引入了虚拟文件系统概念,使用虚拟用户完成搭建FTP全过程。有朋友问为什么要引入虚拟文件系统概念,这是为了让大家在以后学习solaris flash的时候能有一个更清晰的思路,所以当你配置虚拟FTP的时候可以不使用虚拟文件系统。它不会对你的FTP配置带来任何问题。如果你已经开启wu-ftp,那么请你先关闭ftp服务。
小提示:
svcs |grep online 查看当前运行服务
svcs |grep offline 查看当前停止服务
svcs |grep inetd 查看inetd服务状态
svcadm disable svc:network/ftp 关闭wu-ftp,既关闭现有的ftp服务。

第一部分::

这里引用我们需要引入几个在solaris下的几个思想!
一 :solaris和unix/linux一样都可以把它理解为一个绿色的操作软件。这样方便我们以后更好的去理解solaris下的solaris(solaris闪)
二 :虚拟系统 亦即当一个使用者使用的是"虚拟系统"时,他所看到的系统档案及程式,并不是系统管理者所使用的档案。
问题:我们为什么要制作一个虚拟系统,从安全角度来考虑,只要一台计算机连接上网络,它就已经不安全,无论你是否是一个高级的管理员,你也无法保证你所配置的服务器是安全的。也可以说你只能说这一秒solaris是安全的,但谁又知道下一秒是不是安全的!所以我们这里就需要用到一个虚拟的FTP把安全危机降到我们认为最安全的地步!也正是因为这个原因我们才需要使用到虚拟系统,双管齐下对来保证我们的服务器。那又是那两种手段?第一,虚拟的FTP,这是目前在各大操作系统上都经常使用的FTP搭建方法。这样即便是黑客通过暴力破解,网络嗅探等方式获取FTP帐户密码也无法得到操作系统的真实用户。第二,这里也是solaris被安全界公认比较可靠的操作系统的原因,它能够在虚拟FTP之后为我们带来一个叫虚拟系统的新概念。让我们有第二道更可靠的城墙,让我们的管理员在被黑客获取FTP帐户密码的情况下,依然可以从容的与黑客抗衡!使用虚拟系统可以保护系统的资料与系统运作正常,让恶意的使用者只能做到有限的破坏。其实所谓的"虚拟系统",主要是利用chroot(Change Root)来达成,即改变根目录的位置,而使得FTP对应到一新的系统设定中。

第二部分

构造虚拟系统:
cd /      (进入根目录)
tar –cvf  /system.tar /var /usr /etc /dev /devices
(将 var usr etc dev decices 打包为 system.tar)
mkdir  /export/home/ftpusers
tar -xvf system.tar /export/home/ftpusers
(把我们打包的文件解压到export/home/ftpusers)
注意:这里我需要强调一点,我们可能会出现一点以外错误!由于我这里使用的中科院的较早的sparc专业服务器,且拆除了2块硬盘,所以我的空间不是很大
导致磁盘空不足,无法解压。当然有的朋友为什么不把根目录的目录CP过去,这里你问的很好,的确是可以这样的。但我操作了几次,发现在后面的工作中可能会导致一些莫名其妙的错误。所以我还是建议大家按照我的方法去完成。由于打包和解压时间都很长,我们也可以利用这段时间听听歌,看看新闻! :)
这里我想强调以下,由于我可能一直很关注安全,正如我在上文中所说的一台服务器连接到互联网之后就已经没有绝对的安全。我看过有些文档也是使用虚拟文件系统,但他们不是按照我的方案去完成,只是把直接在FTP目录建立一些和系统文件目录同名的目录,但我个人认为这样做就失去了虚拟文件系统的真正意义,一名有经验的黑客在很容易就能识别出这些是一个虚拟文件系统,是一个耗费他精力的蜜罐。那么我想虚拟文件系统的真正目的也就没有实际意义了。在这里我由衷的建议大家不要怕麻烦,花费多一点的时间做的有意义一点!本身安全就是一点一滴的积累。何况您还能在这段时间里看看新闻,听听歌曲。何乐而不为?

第三部分

vsftp简介:
vsftp全称翻译为“非常安全的FTP”,vsftp稳定,安全,功能强大屹立在unix系列操作系统多年,在redhat8系列以后,正是由于vsftp的出色表现博得了整个unix/linux世界的青睐,很多版本的unix/linux都把它作为默认的ftp服务工具。时下流行的一句广告词完全可以诠释vsftp:“我相信群众!”
获取vsftp:
ftp://vsftpd.beasts.org/users/cevans/  下寻找你需要的vsftp,我这里使用的最新版本vsftpd-2.0.5.tar.gz,下载地址:ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.0.5.tar.gz
但你必须ftp到vsftpd.beasts.org 。然后将它下载回来;get vsftpd-2.0.5.tar.gz

第四部分

安装vsftp:
gunzip vsftpd-2.0.5.tar.gz  /*生成tar包*/
tar xvf vsftpd-2.0.5.tar    /*解压*/
cd /etc     
在网络中也有朋友使用如下命令我这里提供给大家作为参看
gzcat vsftpd-2.0.5.tar.gz | tar xvf -  解压tar.gz包!

这里我们需要注意的是,现在生产的目录权限
drwxr-xr-x   8 500     500        2048 2006   7月  4 vsftpd-2.0.5
chown root vsftpd-2.0.5 (改变目录所属用户)
chgrp root vsftpd-2.0.5  (改变目录所属组)
ls –l
drwxr-xr-x   8  root     root        2048 2006   7月  4 vsftpd-2.0.5

小提示:我在实验vsftp的时候,就无法make。提示没有这个命令。这可能和你的安装的时候软件包安装有关系。这里提供一些补救办法。
1        下载并安装make
get ftp://ftp.sunfreeware.com/pub/fr ... sol9-sparc-local.gz
        gunzip make-3.80-sol9-sparc-loca1.gz
        pkgadd -d make-3.80-sol9一sparc-local
2  下载libiconv并安装
ftp://mirror.Sprintlink.net/sunf ... -so19-sparcloca1.gz
gunzip libiconv-1.8-so19-sparc-loca1.gz
pkgadd -d libiconv-1.8-sol9-sparc-local
3  下载gcc并安装
ftp://mirror.Sprintlink.net/sunf ... sparc/9/gcc-small-3.3.2-sol9-sparc-loca1.gz
gunzip gcc-small-3.3.2-sol9-sparc-loca1.gz
pkgadd -d gcc-small-3.3.2-sol9-sparc-loca1

cd vstipd-2.0.5
make
mkdir /usr/share/empty
cp vsftpd /usr/local/bin/vsftpd
cp vsftpd.conf.5 /usr/local/man/man5
cp vsftpd.8 /usr/local/man/man8
cp vsftpd.conf/etc


第五部分:

配置虚拟Ftp
groupadd ftp                                                              /*建立ftp组*/
mkdir  /ftp                                                               /*建ftp目录*/     
useradd —d /ftp -g ftp -s /bin/false ftp                                 /*实际使用的USER*/
chown ftp:ftp /ftp
echo “ftp”>> /etc/vsftpd.chroot_lis  
mkdir /etc/vsftp                                                            /*建立ftp用户配置文件目录*/

1:        配置vsftpd.conf

vi /etc/vsftpd.conf
anonymous_enable=NO                                   /*不允许匿名用户登录*/
anon_root=ftp                                                                         /*匿名用户在登录后将跳转的目录*/
anon_password=NO                                                                      /*匿名用户登录不需要密码,可以直接登录*/
local_enable=NO                                       /*不允许本地用户登录*/
write_enable=NO                                       /*不允许FTP命令更改文件系统*/
local_umask=022                                       /* 设定本地用户上载文件的umask值*/
anon_upload_enable=NO                                                               /*不允许匿名用户上载*/
anon_mkdir_write_enable=NO                            /*不允许匿名用户创建目录*/
dirmessage_enable=YES                                                               /*当用户首次进入一个新目录时,FTP服务器将会显示欢迎信息*/
xferlog_enable=YES                                                                    /*生成日志文件*/
connect_from_port_20=YES                                                            /*控制在服务器端,使用端口20进行数据连接*/
xferlog_file=/varflog/vsftpd.log                                           /*xferlog_enable选项后需要加载日志文件定启用*/
xferlog_std_format=YES                                                                   /*启用标准日志文件格式*/
idle_session_timeout=600                                                           /*设置空闲的用户会话中断时间为600秒*/
data_connection_timeout=120                                               /*连接中断时间为120秒*/
ftpd_banner=Welcome to www.cnsapc.com                 /*欢迎信息*/
chroot_list_enable=YES                                /*/etc/vsftpd_chroot_list文件中列出的用户不能切换到根目录以外*/
Chroot_1ist_file=/etc/vsftpd.chroot_list                       /*指定启用chroot_1ist_enable选项后需要加载文件*/
User_config_dir=/etc/vsftpd                           /*不同的用户使用不同的配置.配置文件所在的目录*/
ls_recurse_enable=YES                                                                   /*允许用户使用列目录*/
hide_ids=YES                                                                                   /*所有目录中的用户和组信息列取时都将显示为ftp*/
userlist_enable=YES                                                                          /*当为YES时,userlist—deny的设置才有效*/
userlist_deny=NO                                                                           /*只有在文件中明确指定的用户才能登录系统*/
userlist_file=/etc/vsftpd.user_list                                   /*指定启用userlist_enable选项后需要加载文件*/
guest_enable=YES                                                                           /*所有非匿名用户都将以guest身份登录*/
Guest_username=ftp                                    /*将guest用户映射到一个真实用户ftp*/
Anon_max_rate=20000                                                                   /*设置匿名用户为最大传*/
Local_max_rate=500000                                                                   /*设置本地用户的最大传*/
max_clients=500                                                                           /*设定最大客户端联接数*/
max_per_ip=2                                                                                   /*设定源于同一网络地址的最大联接数,防止暴力破解FTP密码*/
pasv_min_port=56000                                                                   /*PASV方式数据联接指派的最小端口*/
pasv_max_port=56100                                                                   /*PASV方式数据联接指派的最大端口*/
listen=YES                                                                                           /*vsfipd将以独立模式运行,不能由inetd来启动*/
1isten_address=l27.0.0.1                                                          /*定义使用哪个IP地址提供服务*/
2: 建立目录与帐户并映设成ftp用户
mkdir /ftp/ftpusers
chown ftp:ftp /ftp/ftpusers
useradd –d /dev/null -g ftp –s /bin/false ftpusers   /*无shell*/
passwd ftpusers
      
第六部分:
建立vsftp启动脚本
vi /etc/rc3.d/S83vsftpd

!/sbin/sh
case "$1" in
start)
        /usr/local/bin/vsftpd &
;;
stop)
        pkill vsftpd
;;
*)
        echo "Usage: $0 { start | stop }"
        exit 1
;;
esac
exit 0


                                                                                                                                                                                                                               
                                                                                                                                                                                        中国科学院西安分院嵌入式小组-----叶博洋
                                                                                                                                                                                                                        2007.4.29

[ 本帖最后由 yby123 于 2007-5-4 17:59 编辑 ]

虚拟vsftp+蜜罐.rar

14.25 KB, 下载次数: 306

论坛徽章:
0
2 [报告]
发表于 2007-04-30 21:28 |显示全部楼层
哈哈。没什么,我是这样想的,首先很少有人能接触到专业的sun sparc、
既然我能接触到,那么为什么不整理出来文档,让大家一起来学习。本来网络就是免费的。


谢谢支持

文档如果有不详细,或者错误的地方请指正

论坛徽章:
0
3 [报告]
发表于 2007-05-03 00:12 |显示全部楼层
那么楼上的朋友 不知道还有什么不周全的地方,写出来大家分享以下,你是不是所关于IP或者用户限制?

论坛徽章:
0
4 [报告]
发表于 2007-05-04 08:14 |显示全部楼层
这里我想说明以下几点,
第一 署名与单位是单位要求的,不是我想抬高自己,我认为没那必要,大家都是一起来学习。没有什么高低贵贱。
第二 我们的服务器的确比较老,2005年的了,当时购买的价格是19万多一点,由于属于科研机构所以优惠许多
第三 其实我们还有更多关于这方面的东西,为什么我要加上蜜罐这个概念,因为在后续的文章中,我们将逐渐谈到这方面的内容,这个也和闪有着直接的关系。
第四 我希望回帖的某位朋友尊重下自己,尊重下大家。如果你想讨论技术我很乐意,但如果抱有践他人,扬自威的态度我想我没必要和你纠缠下去。

论坛徽章:
0
5 [报告]
发表于 2007-05-04 18:04 |显示全部楼层
原帖由 susbin 于 2007-5-4 09:37 发表
1。希望看到楼主自己 著 的东西。如果是把别人的拿来做一遍,请还是不要用这个字。

2。如果可能,也希望楼主回答一下我在7楼提的两个问题。

3。楼主的大作里并未提到 “未完待续”,所以俺们理解为这是一篇 ...



十分感谢的指教,我也能看出来你的确是很仔细的看了这个文章。这里我的确有一点点的地方没有写清楚。
但我认为没有关系的,不能什么都给大家准备好。当然要自己东东脑子。

看来阁下可能也玩过黑。社会工程学+搜索引擎用的不错。

welcome www.yby123.cn  or  ciwnet.blog.sohu.com

论坛徽章:
0
6 [报告]
发表于 2007-05-05 20:44 |显示全部楼层
原帖由 susbin 于 2007-5-4 18:54 发表


楼主过奖了。

在下没玩过黑,防黑是单位要求的,所以知道一点。

“下了人家的软件包就直接安装?” ---- 请问楼主对这个怎么看?



黑客防线不是好,太菜了。没什么内容。
如果你想了解黑客是怎么入侵的,可以去这个站点,www.crst.com.cn or www.wolfexp.net

MY ID YBY123

论坛徽章:
0
7 [报告]
发表于 2007-05-07 06:36 |显示全部楼层
原帖由 susbin 于 2007-5-6 10:47 发表
看到楼主是个认真的人,因此提点意见供你参考。

1。用单位的名字在网上发表文章,最好先跟领导打个招呼,免得以后有麻烦。

2。单位的服务器,是单位的财产。不可以用来做与业务无关的事。

3。大家问“密 ...


我再次感谢你对我的扶正,可能由于我比较的年轻很多事情没有考虑周全,且也很少在网络中与朋友们交流。对这里的规矩不了解

这里我要非常认真的说,我们是做嵌入式防火墙、入侵检测方面东西,对于Solaris的研究是为了对内核方面有比较深入的了解,比如它的并发性, Solaris也提供了一个免费的入侵检测系统。SUM算法等等!那么为什么要写这样的文章,首先我也才接触Solaris,我们必须写出文档来!让以后单位其他研究Solaris的人少走点路。那么为什么要发到这里。这里集聚了很多对 Solaris有研究的朋友,老师。我们也希望能得到大家的指点。同时也希望有更多的新人能进入 Solaris世界!这就是我们为什么要写这些文档,为什么要发到这里的原因。可能你对我的版权说明有意见,但请见谅!首先这是我的上级领导明确表示的。对于单位的资源问题,是我们内部的事情。对与不对我想不必要在这里争论!的确我在写这些文章的时候翻阅了很多书籍!但我想技术这东西很难说去抄袭什么!后来我的确在网上搜索这方面的资料。不客气的说,关于VSFTP的资料不是很多,也不是很详细!所以我不认为我并不是抄袭,但我的确是去参考其他的资料,鉴于此我发现我们已经完全脱离了技术本身,再和您这样争论下去没有任何意义!所以无论阁下是怎么想我都不会再回复了!还有我需要说明一点,技术没有身份的界限!我不认为我用单位的名字就是一种强压的态势。但却让我感觉你总是在用一些冷言热讽来讥笑我,比如你在我另一文章里的回复:“ 科学家也来做脑力民工!”我想说的是我不是科学家,也没那资格。但我认为首先你把自己看轻了,是对多个领域从业人员的一种口头暴力!我不明白为什么你需要有一种高高在上的姿态,殊不知这样对你自己就是灵魂上的亵渎。所以还请阁下把心用在技术上,没必要在是否是原创的问题上纠缠,如果按照阁下的思维方式,那么SUN的说明是原创,那么再按照你的逻辑,这里关于 Solaris的文章都是抄袭了,因为sun官方说明已经把所有设计服务,系统的东西都已经写成中文文档了!

最后我希望阁下能在看我发自内心的回复,有一点感触,我是新人,需要你这样的前辈肯定。请想想你当年是新人的时候大家是怎么帮助你的!

最后写个支持我的朋友,很感谢你们,希望文档对你们有帮助!我会尽快把关于蜜罐的文档写出来!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP