首页 运维 网络学院 查看内容

Linux网络安全工具(上)

2007-9-27 11:00 761 0

摘要:        尽管各种版本的Linux distribution附带了很多开放源的自由软件,但是仍然有大量的有用的工具没有被默认。包括在它们...
关键词: nbsp Sniffit 端口 口令 登录 运行 bin etc root 一个

       尽管各种版本的Linux distribution附带了很多开放源的自由软件,但是仍然有大量的有用的工具没有被默认。包括在它们的安装光盘内,特别是有一些可以增强Linux网络安全的工具包,它们大多也是开放源的自由软件。 这里简单地介绍一下几个增强Linux网络安全的工具。 1、sudo        sudo是系统管理员用来允许某些用户以root身份运行部分/全部系统命令的程序。一个明显的用途是增强了站点的安全性,如果你需要每天以root身份做一些日常工作,经常执行一些固定的几个只有root身份才能执行的命令,那么用sudo对你是非常适合的。 sudo的主页在:http://www.courtesan.com/courtesan/products/sudo/ 以Redhat为例,下面介绍一下安装及设置过程: 首先,你能从sudo主页上下载forRedhatLinux的rpmpackage. 它在ftp://ftp.freshmeat.net/pub/rpms/sudo/当前最新的稳定版本1.5.9p4。        执行#rpm-ivhsudo*进行安装,然后用/usr/sbin/visudo编辑/etc/sudoers文件。 如果系统提示你找不到/usr/bin/vi但实际上你在目录/bin下有vi程序,你需要 ln-sf/bin/vi/usr/bin/vi为vi在/usr/bin下创建符号链接。(注:我在Redhat6.1上遇到,Redhat5.x上没有此问题) 另外,如果出现某些其它错误,你可能还需要#chmod700/var/run/sudo 下面是我的/etc/sudoers文件例子: 代码: [root@sh-proxy/etc]#moresudoers Host_AliasSERVER=sh-proxy #Useraliasspecification User_AliasADMIN=jephe,tome #Cmndaliasspecification Cmnd_AliasSHUTDOWN=/etc/halt,/etc/shutdown,/etc/reboot ADMINSERVER=SHUTDOWN jepheSERVER=/usr/bin/tail-f/var/log/maillog jepheSERVER=/usr/bin/tail-f/var/log/messages #Userprivilegespecification rootALL=(ALL)ALL         既然我经常需要远程登录到服务器观察emaillog文件/var/log/maillog的变化,因此我加了这一行到/etc/sudoers,这样我不需要经常登录作为root来完成我的日常工作,改善了安全性。 2、Sniffit         sniffit是一个有名的网络端口探测器,你可以配置它在后台运行以检测哪些Tcp/ip端口上用户的输入/输出信息。 最常用的功能是攻击者可以用它来检测你的23(telnet)和110(pop3)端口上的数据传送以轻松得到你的登录口令和mail帐号密码,sniffit基本上是被破坏者所利用的工具,但是既然想知道如何增强你的站点的安全性,首先你应该知晓闯入者们所使用的各种工具。        sniffit的主页在http://reptile.rug.ac.be/~coder/sniffit/sniffit.html你能从那里下载最新的版本,安装是非常容易的,就在根目录运行#tarxvfzsniff*解开所有文件到对应目录。 你能运行sniffit-i以交互式图形界面查看所有在指定网络接口上的输入/输出信息。 如:为了得到所有用户通过某接口a.b.c.d接收邮件时所输入的pop3帐号和密码,你能运行 #sniffit-p110-ta.b.c.d& #sniffit-p110-sa.b.c.d&   记录文件放在目录/usr/doc/sniffit*下面: logfile根据访问者的IP地址,随机高端端口号和用来检测的网络接口IP地址和检测端口来命名。它利用了tcp/ip协议天生的虚弱性,因为普通的telnet和pop3所传的用户名和密码信息都是明文,不带任何方式的加密。因此对telnet/ftp.你可以用ssh/scp来替代.sniffit检测到的ssh/scp信息基本上是一堆乱码,因此你不需要担心ssh所传送的用户名和口令信息会被第三方所窃取。 3、ttysnoop(s)        ttysnoop是一个重定向对一个终端号的所有输入/输出到另一个终端的程序。目前我所知道的它的所在网站为http://uscan.cjb.net,但是始终连不上去,从其它途径我得到了ttysnoop-0.12c-5,地址是http://rpmfind.net/linux/RPM/contrib/libc6/i386/ttysnoop-0.12c-5.i386.html这个版本好象还不能支持shadowpassword,安装后你需要手动创建目录/var/spool/ttysnoop测试这个程序是有趣的,下面是相关指令: 首先改/etc/inetd.conf中的in.telnetd默认调用login登录程序为/sbin/ttysnoops,象下面这样: 代码: [root@jephe/etc]#moreinetd.conf|grepin.telnetd telnetstreamtcpnowaitroot/usr/sbin/tcpdin.telnetd-L/sbin/ttysnoops          更改后一定要运行killall-HUPinetd使之生效,确保不要使用阴影口令,用#pwunconv禁止阴影口令。 再编辑文件/etc/snooptab默认配置就可以了。 代码: [root@jephe/etc]#moresnooptab ttyS1/dev/tty7login/bin/login ttyS2/dev/tty8login/bin/login *socketlogin/bin/login          最后,如果在某个终端上有人登录进来(你可以用w命令查看它在哪个终端),如登录终端设备为ttyp0,则你可以登录进服务器打入#/bin/ttysnoopttyp0(提示输入root口令,再次,上面提到的这个版本不支持阴影口令)以监视用户的登录窗口。 4、nmap        nmap是用来对一个比较大的网络进行端口扫描的工具,它能检测该服务器有哪些tcp/ip端口目前正处于打开状态。你可以运行它来确保已经禁止掉不该打开的不安全的端口号。 nmap的主页在http://www.insecure.org/nmap/index.html 下面给出一个简单的例子: 代码: [root@sh-proxy/etc]#/usr/local/bin/nmappublic.sta.net.cn StartingnmapV.2.12byFyodor([email protected],www.insecure.org/nmap/) Interestingportsonpublic.sta.net.cn(202.96.199.97): PortStateProtocolService 21opentcpftp 23opentcptelnet 25opentcpsmtp 109opentcppop-2 110opentcppop-3 143opentcpimap2 513opentcplogin 514opentcpshell 7000opentcpafs3-fileserver Nmapruncompleted--1IPaddress(1hostup)scannedin15seconds  
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部