xinetd服務
① 我在linux9.0中運行service xinetd restart命令時出現停止xinetd失敗
這是因為沒有配置安裝服務器
配置安裝伺服器 如下
1、 以root登錄安裝伺服器,用命令 rpm –qa | grep tftp 查看是否安裝了tftp軟體包,如果沒有,安裝一下(安裝軟體的方法將在後面的文章中詳細介紹)。
2、 修改tftp的配置文件,使tftp服務可以隨linux開機啟動(開機啟動這個服務不是必須的)。用命令vi /etc/xinetd.d/tftp 將文件/etc/xinetd.d/tftp其中的一句 disable=yes 改成 disable=no。
3、 准備內核、PEX配置文件以及linux根文件系統。分成兩個步驟:①准備PEX配置文件—創建目錄/tftpboot/pxelinux.cfg,然後復制第1張安裝光碟/isolinux目錄里的文件isolinux.cfg和*.msg到目錄/tftpboot/pexlinux.cfg,把文件/tftpboot/pxelinux.cfg/isolinux.cfg改名為/tftpboot/isolinux.cfg/default;復制文件/usr/lib/syslinux/pxelinux.0到目錄/tftpboot。②准備內核和根文件系統—復制第1張安裝光碟/images/pxeboot目錄里的兩個文件vmlinuz(內核)和initrd.img(根文件系統)到目錄/ tftpboot中。
/tftpboot pxelinux.0 pxelinux.cfg vmlinuz initrd.img default(isolinux.cfg)/tftpboot目錄示意圖
4、 配置dhcp伺服器。使用命令 vi /etc/dhcpd.conf 修改文件/etc/dhcpd.conf,把下面兩行插入到文件中,而後保存:
filename 「pxelinix.0」next-sever 192.168.100.100 //本安裝伺服器的ip地址,即tftp伺服器的ip地址
5、分別啟動dhcp和tftp服務。用命令 service dhcpd start 啟動dhcp服務,用service xinetd restart 啟動tftp服務。
② linux 中的xinetd是做什麼用的
1.什麼是xinetd
extended internet daemon
xinetd是新一代的網路守護進程服務程序,又叫超級Internet伺服器,常用來管理多種輕量級Internet服務。
xinetd提供類似於inetd+tcp_wrapper的功能,但是更加強大和安全。
2. xinetd的特色
1) 強大的存取控制功能
— 內置對惡意用戶和善意用戶的差別待遇設定。
— 使用libwrap支持,其效能更甚於tcpd。
— 可以限制連接的等級,基於主機的連接數和基於服務的連接數。
— 設置特定的連接時間。
— 將某個服務設置到特定的主機以提供服務。
2) 有效防止DoS攻擊
— 可以限制連接的等級。
— 可以限制一個主機的最大連接數,從而防止某個主機獨占某個服務。
— 可以限制日誌文件的大小,防止磁碟空間被填滿。
3) 強大的日誌功能
— 可以為每一個服務就syslog設定日誌等級。
— 如果不使用syslog,也可以為每個服務建立日誌文件。
— 可以記錄請求的起止時間以決定對方的訪問時間。
— 可以記錄試圖非法訪問的請求。
4) 轉向功能
可以將客戶端的請求轉發到另一台主機去處理。
5) 支持IPv6
xinetd自xinetd 2.1.8.8pre*起的版本就支持IPv6,可以通過在./configure腳本中使用with-inet6 capability選項來完成。
注意,要使這個生效,核心和網路必須支持IPv6。IPv4仍然被支持。
6) 與客戶端的交互功能
無論客戶端請求是否成功,xinetd都會有提示告知連接狀態。
3. Xinetd的缺點
當前最大的缺點是對RPC支持的不穩定,但是可以啟動protmap,使它與xinetd共存來解決這個問題。
4 使用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文件中指出。
這個文件的節選內容:
# /etc/services:
# $Id: services,v 1.40 2004/09/23 05:45:18 notting Exp $
# service-name port/protocol [aliases ...] [# comment]
tcpmux 1/tcp # TCP port service multiplexer
tcpmux 1/udp # TCP port service multiplexer
rje 5/tcp # Remote Job Entry
rje 5/udp # Remote Job Entry
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
………
Internet 網路服務文件中,記錄網路服務名和它們對應使用的埠號及協議。文件中的每一行對應一種服務,它由4個欄位組成,中間用Tab鍵或空格鍵分隔,分別表示 「服務名稱」、「使用埠」、「協議名稱」及「別名」。在一般情況下,不要修改該文件的內容,因為這些設置都是Internet標準的設置。一旦修改,可能會造成系統沖突,使用戶無法正常訪問資源。Linux系統的埠號的范圍為0~65 535,不同范圍的埠號有不同的意義。
— 0:不使用。
— 1~1 023:系統保留,只能由root用戶使用。
— 1 024~4 999:由客戶端程序自由分配。
— 5 000~65 535:由伺服器程序自由分配。
5. 解讀/etc/xinetd.conf和/etc/xinetd.d/*(啟動關閉)
安裝xinetd包(原因是我想重啟xinetd的時候發現xinetd是未注冊的服務):
提示找不多xinetd服務,結果如下:
[root@linuxzgf ~]# service xinetd restart
xinetd: 未被識別的服務
[root@linuxzgf ~]# service xinetd reload
xinetd: 未被識別的服務
[root@linuxzgf ~]#
[root@linuxzgf ~]# service xinetd restart
xinetd: unrecognized service
怎麼安裝呢?so easy。。。。。 在linux安裝鏡像里有這個包,掛載上安裝鏡像,進入Server目錄,找到包:
[root@localhost Server]# find -name 'xinet*'
./xinetd-2.3.14-10.el5.i386.rpm
[root@localhost Server]# rpm -ivh xinetd*
warning: xinetd-2.3.14-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:xinetd ########################################### [100%
[root@localhost xinetd.d]# service xinetd restart
Stopping xinetd: [FAILED]
Starting xinetd: [ OK ]
[root@localhost xinetd.d]#
現在就安裝並重啟完成了xinetd服務。
或者使用如下命令重啟:
# /etc/init.d/xinetd restart
1) /etc/xinetd.conf
xinetd 的配置文件是/etc/xinetd.conf,但是它只包括幾個默認值及/etc/xinetd.d目錄中的配置文件。如果要啟用或禁用某項 xinetd服務,編輯位於/etc/xinetd.d目錄中的配置文件。例如,disable屬性被設為yes,表示該項服務已禁用;disable屬性被設為no,表示該項服務已啟用。/etc/xinetd.conf有許多選項,下面是RHEL 4.0的/etc/xinetd.conf
# Simple configuration file for xinetd
# Some defaults, and include /etc/xinetd.d/
defaults
{
instances = 60
log_type = SYSLOG authpriv
log_on_success = HOST PID
log_on_failure = HOST
cps = 25 30
}
includedir /etc/xinetd.d
— instances = 60:表示最大連接進程數為60個。
— log_type = SYSLOG authpriv:表示使用syslog進行服務登記。
— log_on_success= HOST PID:表示設置成功後記錄客戶機的IP地址的進程ID。
— log_on_failure = HOST:表示設置失敗後記錄客戶機的IP地址。
— cps = 25 30:表示每秒25個入站連接,如果超過限制,則等待30秒。主要用於對付拒絕服務攻擊。
— includedir /etc/xinetd.d:表示告訴xinetd要包含的文件或目錄是/etc/xinetd.d。
2) /etc/xinetd.d/*
下面以/etc/xinetd.d/中的一個文件(rsync)為例。
service rsync
{
disable = yes
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
log_on_failure += USERID
}
下面說明每一行選項的含義:
— disable = yes:表示禁用這個服務。
— socket_type = stream:表示服務的數據包類型為stream。
— wait = no:表示不需等待,即服務將以多線程的方式運行。
— user = root:表示執行此服務進程的用戶是root。
— server = /usr/bin/rsync:啟動腳本的位置。
— log_on_failure += USERID:表示設置失敗時,UID添加到系統登記表。
6、 配置xinetd
1) 格式
/etc/xinetd.conf中的每一項具有下列形式:
service service-name
{
……
}
其中service是必需的關鍵字,且屬性表必須用大括弧括起來。每一項都定義了由service-name定義的服務。
service-name是任意的,但通常是標准網路服務名,也可增加其他非標準的服務,只要它們能通過網路請求激活,包括localhost自身發出的網路請求。有很多可以使用的屬性,稍後將描述必需的屬性和屬性的使用規則。
操作符可以是=、+=或-=。所有屬性可以使用=,其作用是分配一個或多個值,某些屬性可以使用+=或-=,其作用分別是將其值增加到某個現存的值表中,或將其值從現存值表中刪除。
2) 配置文件
相關的配置文件如下:
/etc/xinetd.conf
/etc/xinetd.d/* //該目錄下的所有文件
/etc/hosts.allow
/etc/hosts.deny
3) disabled與enabled
前者的參數是禁用的服務列表,後者的參數是啟用的服務列表。他們的共同點是格式相同(屬性名、服務名列表與服務中間用空格分開,例如disabled = in.tftpd in.rexecd),此外,它們都是作用於全局的。如果在disabled列表中被指定,那麼無論包含在列表中的服務是否有配置文件和如何設置,都將被禁用;如果enabled列表被指定,那麼只有列表中的服務才可啟動,如果enabled沒有被指定,那麼disabled指定的服務之外的所有服務都可以啟動。
4) 注意問題
① 在重新配置的時候,下列的屬性不能被改變:socket_type、wait、protocol、type;
② 如果only_from和no_access屬性沒有被指定(無論在服務項中直接指定還是通過默認項指定),那麼對該服務的訪問IP將沒有限制;
③ 地址校驗是針對IP地址而不是針對域名地址。
6 xinetd防止拒絕服務攻擊(Denial of Services)的原因
xinetd能有效地防止拒絕服務攻擊(Denial of Services)的原因如下。
1) 限制同時運行的進程數
通過設置instances選項設定同時運行的並發進程數:
instances=20
當伺服器被請求連接的進程數達到20個時,xinetd將停止接受多出部分的連接請求。直到請求連接數低於設定值為止。
2) 限制一個IP地址的最大連接數
通過限制一個主機的最大連接數,從而防止某個主機獨占某個服務。
per_source=5
這里每個IP地址的連接數是5個。
3) 限制日誌文件大小,防止磁碟空間被填滿
許多攻擊者知道大多數服務需要寫入日誌。入侵者可以構造大量的錯誤信息並發送出來,伺服器記錄這些錯誤,可能就造成日誌文件非常龐大,甚至會塞滿硬碟。同時會讓管理員面對大量的日誌,而不能發現入侵者真正的入侵途徑。因此,限制日誌文件大小是防範拒絕服務攻擊的一個方法。
log_type FILE.1 /var/log/myservice.log 8388608 15728640
這里設置的日誌文件FILE.1臨界值為8MB,到達此值時,syslog文件會出現告警,到達15MB,系統會停止所有使用這個日誌系統的服務。
4) 限制負載
xinetd還可以使用限制負載的方法防範拒絕服務攻擊。用一個浮點數作為負載系數,當負載達到這個數目的時候,該服務將暫停處理後續的連接。
max_load = 2.8
上面的設定表示當一項系統負載達到2.8時,所有服務將暫時中止,直到系統負載下降到設定值以下。
說明 要使用這個選項,編譯時應加入「–with-loadavg」,xinetd將處理max-load配置選項,從而在系統負載過重時關閉某些服務進程,來實現防範某些拒絕服務攻擊。
5) 限制所有伺服器數目(連接速率)
xinetd可以使用cps選項設定連接速率,下面的例子:
cps = 25 60
上面的設定表示伺服器最多啟動25個連接,如果達到這個數目將停止啟動新服務60秒。在此期間不接受任何請求。
6) 限制對硬體資源的利用
通過rlimit_as和rlimit_cpu兩個選項可以有效地限制一種服務對內存、中央處理器的資源佔用:
rlimit_as = 8M
rlimit_cpu=20
上面的設定表示對伺服器硬體資源佔用的限制,最多可用內存為8MB,CPU每秒處理20個進程。
xinetd的一個重要功能是它能夠控制從屬服務可以利用的資源量,通過它的以上設置可以達到這個目的,有助於防止某個xinetd服務佔用大量資源,從而導致「拒絕服務」情況的出現。
③ linux中怎麼檢查有沒有安裝xinted這個服務
到/etc目錄下,找rc.d目錄(具體不同發行版位置不同),看裡面有沒有類似於S??xinetd或者K??xinetd這樣的文件。
④ linux 下xinetd和/etc/init.d里的服務不一樣嗎為什麼要設置這兩個
1、/etc/init.d目錄中放置了系統中各個daemon服務的腳本,xinetd是其中之一。
2、xinetd是一種特殊的daemon服務(super daemon),它本身管理了一系列的daemon服務,這些服務只有在用戶調用時才由xinetd啟動,它們啟動速度稍慢於獨立的daemon服務,這些服務在/etc/xinetd.conf和/etc/xinetd.d目錄中進行配置。
⑤ Linux系統xinetd服務啟動不了怎麼辦
1.只需安裝xinetd包
安裝包
#yum -y install xinetd
安裝成功後即可
service xinetd start
service xinetd stop
service xinetd restart
啟動,關閉,重啟ftp服務
2.檢查配置文件,看是否配置正確
⑥ 如何把vsftpd啟動方式改變為xinetd
vsftpd的安裝過程
vsftpd 守護程序的安裝相當簡單,在每個主要發行版中都可以找到vsftpd的RPM包,很多情況下,它已經被裝上了。載後執行手工安裝。目前最新的版本為:vsftpd2.0.3。
得到源代碼並解開tar包後,進入新建的目錄,並運行make。下面是進行手工安裝的示例:
# tar xzvf vsftpd-2.0.3.tar.gz
# cd vsftpd-2.0.3
# make
這之前我們應該看看用戶「nobody」和目錄「/usr/share/empty」是否存在,如果需要的話我們就新建這一對用戶和目錄。如果我們允許用戶匿名訪問,用戶「ftp」和目錄「var/ftp」也需要創建。使用如下兩個命令完成:
# mkdir /var/ftp
# useradd -d /var/ftp ftp
由於安全原因,目錄 「/var/ftp」 不應該屬於用戶 「ftp」,也不應該有寫許可權。如果用戶已經存在的話,用下面的兩個命令,我們可以改變目錄的所有者並去掉其他用戶的寫許可權:
# chown root.root /var/ftp
# chmod og-w /var/ftp
達到了所有的先決條件後,我們可以安裝 vsftp-daemon 了。
# make install
這樣,就完成了vsftpd的安裝,當然,這個安裝過程比較復雜,在我們現在使用的Linux系統當中,很多都是使用RPM包來安裝的,這樣簡單快捷,下面介紹如何通過使用RPM包來安裝vsftpd。
在RedHat Linux9中自帶了vsftpd,下面是安裝的步驟:
1. 首先查看是否安裝了vsftpd,如果已經安裝,則可以直接使用。
# rpm - q|grep vsftpd
2. 沒有安裝的話,將下載來的vsftpd-1.1.3-8.i386.rpm的RPM包進行安裝。
# rpm - vh vsftpd-1.1.3-8.i386.rpm
通過以上兩步,就能順利地完成安裝過程。
⑦ FreeBSD下啟動xinetd服務後查看狀態,發現服務還沒有起來
看看/etc/rc.conf和/usr/local/etc/rc.d這兩個地方
⑧ inetd和xinetd的區別
inetd 是一個守護程序,通過一個集中的配置文件(inetd.conf)來管理大多數入網連接。xinetd 守護程序是 inetd 的替代,它提供許多改進的或新的特性,以及更容易的配置。
xinetd已經取代了inetd,並且提供了訪問控制、加強的日誌和資源管理功能,已經成了Red Hat 7 和 Mandrake 7.2的Internet標准超級守護進程。
inetd
[詞典] [計][unix] 埠監視程序;
[例句]Given a list of services, inetd watches those services'ports and protocols for requests.
給定一個服務列表,inetd會監視對這些服務的埠和協議的請求。
xinetd
網路 守護進程;
⑨ linux下如何啟動或重起xinetd
要啟動、停止和重啟xinetd,可以以root用戶身份使用下面的命令:
service xinetd <command>
用下列命令之一替換<command>。
start:啟動xinetd服務。
stop:停止xinetd服務。
status:顯示xinetd的狀態。
restart:如果服務在運行,則停止這個服務,然後啟動xinetd;如果服務還沒有運行,則停止動作會失敗,但是啟動動作仍然會被調用。
condrestart:如果服務已經運行,而且只有服務已經運行,才能重啟它。
reload:重新載入伺服器配置以啟用對配置文件的修改。
要在引導時啟動xinetd,可以以根用戶身份執行下面的命令:
chkconfig xinetd on
⑩ xinetd服務安裝
簡單啊,你可以用Linux的自動更新功能就可以實現的啊, yum search xinetd 然後就可以更新了啊! 或者你從添加刪除程序裡面更新也是可以的, 在哪裡搜索xinetd,但是要注意聯網的狀態下才可以的! 相信對你有幫助的。