网络管理员指南 -18.NNTP描述 -1介绍

因为使用的是不同的网络传输,NNTP 从C-news 提供大量不同的方法到新闻。NNCP 支持``Network News Transfer Protocol’’,他不是个独立的软件包,而是个Inte

因为使用的是不同的网络传输,NNTP 从C-news 提供大量不同的方法到新闻。NNCP 支持

``Network News Transfer Protocol’’,他不是个独立的软件包,而是个Internet 标准。他基于一个

系统引导连接-通常是通过TCP-和一个网络上所有位置的一个客户。及一个在磁盘上保留netnews 的一个 服务器。流向连接允许客户和服务器内部讨论文章传送而没有延迟,确保复制文件数量少。加上Internet 的高传输率,使一个新闻传输比以前的UUCP 网络 快得多。而几年前,一个文章到达Usenet 角落需要两周

以上的时间。而目前只要两天。在Internet 本身,可能只是几分钟。

许多命令允许用户恢复,发送和邮递文章。发送和邮递之间的差别是后者有不完整的标题信息。文章恢复 可能被新闻传送客户或则后新闻发送者使用。这使NNTP 成为一个非常好的工具用来提供新闻在本地网络上访

问许多客户而不必使用在NFS 上必须的歪曲。

NNTP 还提供一个文章和一个新闻传送的积极的方法。通俗称为推和拉。推基本上和

C-news ihave/sendme protocol相同。客户使用``IHAVE ’’命令提供一个文章到服务器,服务器

返回一个代码指出他是否已拥有了文章,或他是否需要。如果这样,客户发送文章,在一个分开的行上 由一个独立的点结尾。

推新闻有一个独立的缺点是他放置来一个非常重的负担在服务器系统上,因为他需要在每个单个文章查找历史

数据。

相反的技术是拉新闻,在这里客户从一个在特定日期之后到达的组中需求所有文章的列表(可得到)。这个 询问有NEWNEWS 命令执行。从信息IDS 的返回列表中,客户选择他还没有的文章,为他们每一个使用ARTICLE 命令。

拉新闻的问题是他需要服务器的严格控制,通过他组合分区允许一个客户询问。例如必须确定从本地 newsgroups 到未授权客户没有保密文件被发送。

更有一些newsreaders 的方便命令允许他们分别恢复文章标题和主体,所有本地网络上的用户(大概是本地的)

使用NNTP 基础的客户程式来阅读和发送。这是个替代通过上面章节提到的NTS 发送新闻路径的方法。

NNTP 的一个全方面的问题是他允许知情者使用假发件人指定插入文章到新闻流。这称为news faking(假新闻)。

一个到NNTP 的延伸允许需求一个用户问特定的命令授权。

能使用许多NNTP 包。最常用的是NNTP daemon,还称为reference implementation(优先安装)。最初, 他由Stan Barber and Phil Lapsley撰写用来周详介绍RFC-977。他最近的版本是is nntpd-1.5.11,将会在下

面提到。你能获得来源并自己编辑他,或从Fred van-Kempen的net-std binary包使用nntpd 。没有提供 方便的二进制nntpd ,因为可能会编入许多不同的站点指定值。

Nntpd 包为推拉新闻分别包含一个服务器和两个客户,及一个inews 替换,他们处在一个Bnews 环境,不

,

过有

些拧,和C-news 一起他们也非常好。然而,如果你计划使用NNTP 做多于提供newsreaders 访问你的新闻服务器,

优先安装实际不是个选择。我们将讨论只有在nntpd 包中NNTP daemon,而留下客户程式。

更有一个包称为``InterNet News’’,或简单的INN 。他由Rich Salz撰写。他提供了NNTP 和UUCP 基础的新闻传送,

并且更使用于大新闻集线器。当他通过NNTP 到达新闻传送,他3确实比nntpd 好。INN 当前在版本inn-1.4sec.

从Arjan de Vet有一个在一个机器上建立INN 的工具包。他能在系统邮件路径下的sunsite.unc.edu 得到。 如果你想要设置INN ,参考单一来源的文件和定期发表在news.software.b.

的INN-FAQ 。

NNTP 服务器称为nntpd ,并且依靠希望安装的新闻系统能使用两种方法编辑。没有编辑版本, 因为一些地址指定默认不容易编码执行。所有的设置在common/conf.h中指定通过宏执行。

Nntpd 能设置作为一个从rc.inet2在系统启动时间开始的独立服务,或是inetd 管理的daemon 。 在后面的例子你必须在/etc/inetd.conf有下面的输入:

nntp stream tcp nowait news /usr/etc/in.nntpd nntpd

如果你设置nntpd 为独立,确定在inetd.conf 中的所有这样的行被注释。在两种方法中,你需要确定 下面是/etc/services中的行:

nntp 119/tcp readnews untp # Network News Transfer Protocol

要临时存储所有进入的文章,等等nntpd 还需要在你的新闻轴中的一个.tmp 路径。你能建立他使用:

# mkdir /var/spool/news/.tmp

# chown news.news /var/spool/news/.tmp

NNTP 来源由/usr/lib/news中的nntp_access文件管理。文件中的行描述了到外部主机的访问权, 每一行都有下面的格式:

site read|xfer|both|no post|no [!exceptgroups]

如果一个客户连接到NNTP 端口,nntpd 尝试使用反查找来从他的IP 地址得到主机完全合格的域名。 客户的主机名和IP 地址以他们出目前文件的顺序查找每一个路径的站点区域。能是部分或全部 相符。如果一个输入完全相符,他执行,如部分相符,他只有在他后面再没有相符的时候执行。站 点能使用下面方法中的一种指定:

hostname

这是个主机上的一个完全合格的域名。如果他文字上符合客户真正的主机名,输入执行,并且下 面所有的输入被忽略。

IP address这是个在括号中的IP 地址。如果 客户的IP 地址和之相符,输入执行,并且下面所有的 输入被忽略。

,

domain

这是个域名,指定为*.domain。如果客户的主机名符合域名,路径符合。

network name

这是个网络名指定在/etc/networks。如果客户IP 地址的网络号码符合网络名,路径符合。

Default

默认符合所有客户。

使用一个更为普遍的站点进入能较早的指定,因为由他们进行的所有的符合会被后面的覆盖,更多 的完全符合。

第二和第三区域描述确保客户的访问权。 第二个周详介绍了通过拉(阅读)允许恢复,并通过推

(xfer )传送新闻。一个二者的值启动二者,没有同时的访问拒绝。第三区确保客户发送文章的权利, 就是使用由新闻软件完成的不完整的标题信息传递文章。第三区被忽略。

第四区是可选的,包含一个句号分割的客户拒绝的访问列表。

下面显示的是个样本nntp_access文件:

#

# by default, anyone may transfer news, but not read or post

default xfer no

#

# public.vbrew.com offers public access via modem, we allow

# them to read and post to any but the local.* groups

public.vbrew.com read post !local

#

# all other hosts at the brewery may read and post

*.vbrew.com read post

当把访问象征,如xfer 或在nntp_acces文件中的阅读变为资本的时候,nntpd 需求从客户那里得 到未来操作的授权。例如,当指定一个Xfer 或 XFER的许可时,nntpd 将让客户传递文章到你的 地址,除非他通过了授权。

授权程式使用一个名为AUTHINFO 的新的NNTP 命令安装,客户传送一个用户名字和密码到NNTP 服务器。

Nntpd 将通过检查the /etc/passwd数据来证实他们并指明用户属于nntp 组。

当前的NNTP 授权的安装只是实验,因此不会非常正确的安装。结果是他只能使用普通风格的密码数据, 不识别影子密码。

o

o 网络管理员指南 -18.NNTP 描述 -5>Nntpd和C-News 的接口 来源:作者:www.linpus.com.tw 发布时间:2007-11-21 21:26:00 域名惊喜价格 cn 域名1元注册 com 域名39.9元

,

虚拟主机

o

o 主机按月支付, 低至19元/月 超大流量, 可开子站点

o

o

当收到一个文章,nntpd 需要递送他套新闻子系统。根据他是否作为一个IHAVE 或 POST命令的结果收到, 文章被分别处理到rnews 或 inews。不调用rnews ,你还能设置他(在编辑时间中)来集中进入的文章并 移动到/var/spool/news/in.coming,在那里他们和relaynews 一起离开来选择他们到下一个序列运行。

要正确使用ihave/sendme协议,nntpd 需要能够访问历史文件。在编辑时间,你于是需要确定路径正确设置。

你还需要确定C-news 和nntpd 兼容你历史文件的格式。C-news 使用dbm 散列法功能来访问他,然而,他和dbm

字库更有相当的不同和安装上轻微的不同。如果C-news 被连接到一个比你在你的标准libc 中所有的还不同的

dbm 字库,你也需要使用这个字库连接nntpd 。

一个标准的nntpd 和 C-news不相容的征兆是在数据格式在系统记录中有错误信息而不能正常打开,或通过

NNTP 收到重复的文章。 一个好的检查是从你的轴区域挑选一个文章,从 telnet 到 nntp port,并提供他 到nntpd ,如下所示(你的输入标记象这样)。当然,你需要用你想要再次返回到nntpd 的文章的message-ID 来替换msg@id。

$ telnet localhost nntp

Trying 127.0.0.1...

Connected to localhost

Escape characters is ’^]’.

201 vstout NNTP[auth] server version 1.5.11t (16 November

1991) ready at Sun Feb 6 16:02:32 1194 (no posting)

IHAVE

435 Got it. 特惠VPS 168元/月,4-8M 独享带宽保证 独立操作系统, 无限开站点

,

QUIT

这个对话显示了nntpd 的正确替代,信息``Got it’’告诉你他已得到文章。如果你相替代的收到的是个

``335 Ok’’信息,历史文件中的lookup 因为某种原因失败。输入Ctrl-D 来结束对话。 你能检查在检查系统 记录的时候什么出了错误。Nntpd 记录所有类型的信息到syslog 的daemon 工具。一个不兼容的

dbm 字库通常在一个抱怨信息中夸大说dbminit 失败。

以上内容由 华夏名网 搜集整理,如转载请注明原文出处,并保留这一部分内容。

标签: