1. 程式人生 > >Linux之Xinetd服務介紹

Linux之Xinetd服務介紹

only 等待 配置 login isa 參數 name 作用 imap

一、概念:
1、獨立啟動的守護進程:stand-alone,每個特定服務都有單獨的守護進程,這個處理單一服務的始終存在的進程就是獨立啟動的守護進程。

2、超級守護進程:多個服務統一由一個進程管理,該進程可以管理多個服務。

3、Xinetd:即extended internet daemon,是新一代的網絡守護進程服務程序,又叫超級Internet服務器,常用來管理多種輕量級Internet服務。Xinetd提供類似於inetd+tcp_wrapper的功能,但是更加強大和安全。

二、特點:
1、強大的存取控制功能

1>內置對惡意用戶和善意用戶的差別待遇設定;

2>使用libwrap支持,其效能更甚於tcpd;

3>可以限制連接的等級,基於主機的連接數和基於服務的連接數;

4>設置特定的連接時間;

5>將某個服務設置到特定的主機以提供服務。

2、有效防止DoS攻擊

1>可以限制連接的等級。

2>可以限制一個主機的最大連接數,從而防止某個主機獨占某個服務。

3>可以限制日誌文件的大小,防止磁盤空間被填滿。

3、強大的日誌功能

1>可以為每一個服務syslog設定日誌等級。

2>如果不使用syslog,也可以為每個服務建立日誌文件。

3>可以記錄請求的起止時間以決定對方的訪問時間。

4>可以記錄試圖非法訪問的請求。

4、轉向功能

可以將客戶端的請求轉發到另一臺主機去處理。

5、支持IPv6

Xinetd自xinetd 2.1.8.8pre*起的版本就支持IPv6,可以通過在./configure腳本中使用with-inet6 capability選項來完成。
註意,要使這個生效,核心和網絡必須支持IPv6。IPv4仍然被支持。

6、與客戶端的交互功能

無論客戶端請求是否成功,xinetd都會有提示告知連接狀態。

三、缺點

當前最大的缺點是對RPC支持的不穩定,但是可以啟動protmap,使它與xinetd共存來解決這個問題。

四、使用
原則上任何系統服務都可以使用xinetd,然而最適合的應該是那些常用的網絡服務,並且這個服務的請求數目和頻繁程度不會太高。像DNS和Apache就不適合采用這種方式,而像FTP、Telnet、SSH等就適合使用xinetd模式。

系統默認使用xinetd的服務可以分為如下幾類:
① 標準Internet服務:telnet、ftp。
② 信息服務:finger、netstat、systat。
③ 郵件服務:imap、imaps、pop2、pop3、pops。
④ RPC服務:rquotad、rstatd、rusersd、sprayd、walld。
⑤ BSD服務:comsat、exec、login、ntalk、shell、talk。
⑥ 內部服務:chargen、daytime、echo、servers、services、time。
⑦ 安全服務:irc。
⑧ 其他服務:name、tftp、uucp。
具體可以使用xinetd的服務在/etc/services文件中指出。該文件中記錄網絡服務名和它們對應使用的端口號及協議。文件中的每一行對應一種服務,它由4個字段組成,中間用Tab鍵或空格鍵分隔,分別表示 “服務名稱”、“使用端口”、“協議名稱”及“別名”。在一般情況下,不要修改該文件的內容,因為這些設置都是Internet標準的設置。一旦修改,可能會造成系統沖突,使用戶無法正常訪問資源。Linux系統的端口號的範圍為0~65535,不同範圍的端口號有不同的意義:

0:不使用。
1~1023:系統保留,只能由root用戶使用。
1024~4999:由客戶端程序自由分配。
5000~65535:由服務器程序自由分配。
五、安裝及啟停
1、安裝:

rpm -ivh xinetd*
或者

yum -y install xinetd
2、啟停:

#啟動
service xinetd start
#停止
service xinetd stop
#重啟
service xinetd restart
六、配置
Xinetd的配置文件是/etc/xinetd.conf,但是它只包括默認值,並包含/etc/xinetd.d目錄中的配置文件。如果要啟用或禁用某項 xinetd服務,編輯位於/etc/xinetd.d目錄中的配置文件。例如,disable屬性被設為yes,表示該項服務已禁用;disable屬性被設為no,表示該項服務已啟用。參數和值之間的操作符可以是=、+=或-=。所有屬性可以使用=,其作用是分配一個或多個值。某些屬性可以使用+=或-=,其作用分別是將其值增加到某個現存的值表中,或將其值從現存值表中刪除。xinetd.conf配置參數如下:

配置項 說明
enabled 是否啟用該服務或服務列表
disabled 是否停用該服務或服務列表
server 啟動腳本的位置
server_args
socket_type 服務的數據包類型
log_type 包括:日誌類型、路徑、報警最大容量、停止服務的最大容量
log_on_success 成功後要將哪些值記錄到日誌中
log_on_failure 失敗後要將哪些值記錄到日誌中
only_from 只有指定IP可以訪問
no_access 指定IP不可以訪問
access_times 允許連接的時間
user 運行此服務進程的用戶
wait 服務將以多線程的方式運行
max_load 系統最大負載系數
cps m n 限制每秒m個入站連接,如果超過m,則等待n秒,主要用於對付服務攻擊
port 連接的端口
nice
protocol 連接使用的協議
instances 最大連接進程數
per_source 限制每個主機的最大連接數
bind
mdns
v6only
passenv
groups
umask
banner
banner_fail
banner_success
rlimit_as 最多可用內存
rlimit_cpu CPU每秒最多處理的進程數
---------------------
作者:鶴嘯九天1988
來源:CSDN
原文:https://blog.csdn.net/lzghxjt/article/details/83018710
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

Linux之Xinetd服務介紹