Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

Xinetd完全指南

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

45 $

3.3 Services项

services特定项的目的是提供可用服务的列表。对services特定项来说,这是个有用的排除故障工具,但为了上述同样的安全因素,可能不会去用它。尽管如此,还是要看一看它如何工作。

例5是 services项的一个示例。端口号的选择也是任意的。也应注意访问限制于topcat,这是服务器自身的主机名。

例5 /etc/xinetd.conf中services项示例

Service services
{
type = INTERNAL UNLISTED
Socket_type = stream
protocol = tcp
port = 8099
wait = no
Only_ from = topcat
}

对于servers服务来说,任何用户可执行telnet topcat 8099,并获得来自services服务的输出。例6给出了连接8099端口的实例信息信息。注意xinetd仅提供这条信息就退出,而不提供任何交互连接。

例6 查询services内部服务的输出

$ telnet topcat 8099
Trying 172.17.33.111……
Connected to topcat.
Escape character is ‘^]’
Servers tcp 9997
Services tcp 8099
ftp tcp 21
telnet tcp 23
Shell tcp 514
Login tcp 513
Talk udp 517
Ntalk udp 518
Pop-2 tcp 109
Pop-3 tcp 110
Imap tcp 143
Linuxconf tcp 98
Connection closed by foreign host.
$

3.4 Xadmin项

这个特定服务项提供以交互方式获得services特定服务所提供信息的方法。例7是/etc/xinetd.conf项的一个示例(端口号的选择也是任意的),类似于services和servers服务,这项服务也没有口令或其他保护,所以要谨慎设置服务的only_from项,以增强安全性。

例7 xadmin项

Service xadmin
{
type = INTERNAL UNLISTED
socket_type = stream
protocol = tcp
port = 9967
wait = no
Only_from = topcat
}

对前两个特定服务类型来说,你只需telnet到所列端口上,即telnet topcat 9967。和前两项服务不同,xadmin提供了一个交互环境。一旦连接到xadmin服务器上,就可执行5个命令。它们是help,show, run,bye和exit。Help命令显示其他命令以及一个简短的用法消息。Bye和exit命令都关闭这个连接。Show run和show avail命令分别提供servers和services提供的信息。

警告:像前3段中指出的一样,这些特定服务servers, services和xadmin产生的信息可用于攻击系统。可能不需要一直运行这些服务,或许只当你调试时才需要。在任何时候,如果的确运行了这些服务,要确信用access_from和/或no_access配置了访问控制。也可以为这些服务使用bind属性以进一步限制访问。

4.配置实例

这节中将看到一些不同的例子,与之相关的行为以及它们产生的登记消息。

4.1 访问控制

从一个简单的访问控制例子开始。在例10中,服务器topcat的login服务项允许IP地址以172开始但不以172.19开始的任何系统访问。这个例子包括了defaults部分。假定这一项用于login服务,且从客户机上用rlogin命令激活,让我们检查成功和不成功企图,以及它们产生的登记。

假定主机underdog和IP地址是172.18.5.9。那么当Mary执行rlogin登记topcat时,会给予她访问权。这相成功的登录如例11所示。尽管例11说明了Mary的动作产生的log内容。如例12所示,该例中的最后一项反映了当Mary拆除登录时的退出情况。可用PID跟踪某次会话的退出,只要你指明这个PID将在/etc/xinetd.conf中登记。登记项如下:每个xinetd登记项记录日期和时间戳,之后服务器主机名,然后是xinetd,之后在括号中是xinetd的PID。例12中的第一条记录以start关键字开始,表明这个会话的开始,之后识别的激活进程(login),然后激活进程的PID,最后是客户机地址。

例10 在/etc/xinetd.conf中rlogin service项的示例

Defaults
{
Log_type=SYSLOG loca14 info
Log_on_success=PID HOST EXIT DURATION
Log_on_failure=HOST
instances=8
}
Service login
{
Socket_type=stream
protocol=tcp
wait=no
user=root
flags=REUSE
Only_from=172.0.0.0
No_access=172.19.0.0
Olg_on_success+=USERID
Olg_on_failure+=USERID
server=/usr/sbin/in.ftpd
Server_args=-1 –a
}

例11 成功的rlogin企图

[mary@underdog]$ rlogin topcat
password:
last login:Wed Apr 14 17:45:02 from roadrunner
[mary@topcat]$

例12 和例11相关的登记项

Apr 15 11:01:46 topcat xinetd[1402]:START:login pid=1439
From=172.18.5.9
Apr 15 11:01:46 topcat xinetd[1439]:USERID:login OTHER:mary
…

…
apr 15 11:39:31 topcat xinetd[1402]:EXIT:login status:1 pid=1439 dura-tion=2265(sec)

第2项以USERID关键字开始,表明成功地发出了RFC1413调用。之后是服务名(login),远程系统对RFC1413调用(此时为OTHER)的响应,最后远程用户名(mary)。

这些log项的含义是很清楚的,但表4提供了这些关键字(如START,USERID和EXIT)和其含义的解释。

现在假定Joe想在主机sly.no.good.org(IP地址为19.152.1.5)上使用rlogin。例13显示了这一结果。看上去Joe连接被拒绝,或者可能他想强入。让我们看一看例14中的这三次企图所产生的登记项。注意登记项不包括远程用户名,尽管我们在例10中用log_on_failure属性特别请求那个信息。这是因为远程主机sly.no.good.org没有运行identd或类似进程。因为主机sly.no.good.org不在例10中的only_from表中,尽管在login服务项中增加了flags=IDONLY一项,它不会记录sly.no.good.org没有运行identd的事实。仅当主机得到许可时,这样一项登记记录才会出现。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:非标准端口服务的识别   下一篇:入侵检测之日志检测

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号