Xinetd服務的安裝與配置


Xinetd服務的安裝與配置

 

http://blog.chinaunix.net/uid-21411227-id-1826885.html

1.什么是xinetd

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

2.  xinetd的特色

1強大的存取控制功能

— 內置對惡意用戶和善意用戶的差別待遇設定。

— 使用libwrap支持,其效能更甚於tcpd

— 可以限制連接的等級,基於主機的連接數和基於服務的連接數。

— 設置特定的連接時間。

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

2有效防止DoS攻擊

— 可以限制連接的等級。

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

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

3強大的日志功能

— 可以為每一個服務就syslog設定日志等級。

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

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

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

4轉向功能

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

5) 支持IPv6

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

6) 與客戶端的交互功能

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

3.  Xinetd的缺點

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

使用xinetd啟動守護進程

原則上任何系統服務都可以使用xinetd,然而最適合的應該是那些常用的網絡服務,同時,這個服務的請求數目和頻繁程度不會太高。像DNSApache就不適合采用這種方式,而像FTPTelnetSSH等就適合使用xinetd模式,系統默認使用xinetd的服務可以分為如下幾類。

 標准Internet服務:telnetftp

 信息服務:fingernetstatsystat

 郵件服務:imapimapspop2pop3pops

 RPC服務:rquotadrstatdrusersdspraydwalld

 BSD服務:comsatexecloginntalkshelltalk

 內部服務:chargendaytimeechoserversservicestime

 安全服務:irc

 其他服務:nametftpuucp

具體可以使用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/*

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添加到系統登記表。

5  配置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) disabledenabled

前者的參數是禁用的服務列表,后者的參數是啟用的服務列表。他們的共同點是格式相同(屬性名、服務名列表與服務中間用空格分開,例如disabled = in.tftpd in.rexecd),此外,它們都是作用於全局的。如果在disabled列表中被指定,那么無論包含在列表中的服務是否有配置文件和如何設置,都將被禁用;如果enabled列表被指定,那么只有列表中的服務才可啟動,如果enabled沒有被指定,那么disabled指定的服務之外的所有服務都可以啟動。

4) 注意問題

① 在重新配置的時候,下列的屬性不能被改變:socket_typewaitprotocoltype

② 如果only_fromno_access屬性沒有被指定(無論在服務項中直接指定還是通過默認項指定),那么對該服務的訪問IP將沒有限制;

③ 地址校驗是針對IP地址而不是針對域名地址。

6  xinetd防止拒絕服務攻擊(Denial of Services)的原因

xinetd能有效地防止拒絕服務攻擊(Denial of Services)的原因如下。

1) 限制同時運行的進程數

通過設置instances選項設定同時運行的並發進程數:

instances20

當服務器被請求連接的進程數達到20個時,xinetd將停止接受多出部分的連接請求。直到請求連接數低於設定值為止。

2) 限制一個IP地址的最大連接數

通過限制一個主機的最大連接數,從而防止某個主機獨占某個服務。

per_source5

這里每個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_asrlimit_cpu兩個選項可以有效地限制一種服務對內存、中央處理器的資源占用:

rlimit_as = 8M

rlimit_cpu=20

上面的設定表示對服務器硬件資源占用的限制,最多可用內存為8MBCPU每秒處理20個進程。

xinetd的一個重要功能是它能夠控制從屬服務可以利用的資源量,通過它的以上設置可以達到這個目的,有助於防止某個xinetd服務占用大量資源,從而導致拒絕服務情況的出現。

 

 

來源 http://blog.51cto.com/13525470/2060765

、Linux守護進程與初始化進程

1. 什么是守護進程

Linux服務器的主要任務就是為本地或遠程用戶提供各種服務。通常Linux系統上提供服務的程序是由運行在后台的守護進程(Daemon)來執行。一個實際運行中的Linux系統一般會有多個這樣的程序在運行。這些后台守護進程在系統開機后就運行了,並且在時刻地監聽前台客戶地服務請求,一旦客戶發出了服務請求,守護進程便為它們提供服務。Windows系統中的守護進程被稱為“服務”。

按照服務類型,守護進程可以分為如下兩類:

        系統守護進程:如crond(周期任務)、rsyslogd(日志服務)、cpus等;

        網絡守護進程:如sshd、httpd、xinetd(托管)等。

2. 什么是守護進程

系統初始化進程是一個特殊的的守護進程,其PID為1,它是所有其他守護進程的父進程或者祖先進程。也就是說,系統上所有的守護進程都是由系統初始化進程進行管理的(如啟動、停止等)。

在Linux的發展歷史過程中,使用過3種Linux初始化系統。

SysVinit

        為 UNIX System V 系統創建的;

        RHEL/CentOS 5及之前的版本一直使用。

Upstart

        由Ubuntu創建的;

        RHEL/CentOS 6 使用Upstart。

Systemd

        先進的初始化系統;

        RHEL/CentOS 7使用Systemd。

二、Linux獨立啟動和超級守護進程

如果用兩個比喻來形容兩類守護進程的話,一般會用銀行的業務處理窗口來類比:

獨立啟動守護進程:銀行里有一種單服務的窗口,像取錢,存錢等窗口,這些窗口邊上始終會坐着一個人,如果有人來取錢或存錢,可以直接到相應的窗口去辦理,這個處理單一服務的始終存在的人就是獨立啟動的守護進程。

超級守護進程:銀行里還有一種窗口,提供綜合服務,像匯款,轉賬,提款等業務;這種窗口附近也始終坐着一個人(xinet),她可能不提供具體的服務,提供具體服務的人在里面閑着聊天啊,喝茶啊,但是當有人來匯款時他會大聲喊一句,小王,有人匯款啦,然后里面管匯款的小王會立馬跑過來幫忙辦完匯款業務。其他的人繼續聊天,喝茶。這些負責具體業務的人我們就稱之為超級守護進程。當然可能匯款人會有一些規則,可能不能往北京匯款,他就會提早告訴xinet,所以如果有人來匯款想匯往北京的話,管理員就直接告訴他這個我們這里辦不到的,於是就根本不會去喊匯款員了,相當於提供了一層管理機制。

針對這種窗口還存在多線程和單線程的區別:

多線程:將所有用戶的要求都提上來,里面的人都別閑着了,都一起干活吧;

單線程:大家都排好隊了,一個一個來,里面的人同一時間只有一個人在工作。

三、Linux守護進程運行方式

1. 獨立運行(stand-alone)的守護進程

獨立運行的守護進程由init腳本負責管理,所有獨立運行的守護進程的腳本在/etc/rc.d/init.d/目錄下。系統服務都是獨立運行的守護進程,包括syslogd和cron等。獨立運行的守護進程的工作方式稱做stand-alone,它是UNIX傳統的C/S模式的訪問模式。

image.png

 

2.xinetd模式運行獨立的守護進程

從守護進程的概念可以看出,對於系統所要通過的每一種服務,都必須運行一個監聽某個端口連接所發生的守護進程,這意味着資源浪費。為了解決這個問題,Linux引進了"網絡守護進程服務程序"的概念。也就是xinted(extended internet daemon)。xinetd能夠同時監聽多個指定的端口,在接受用戶請求時,它能夠根據用戶請求的端口的不同,啟動不同的網絡服務進程來處理這些用戶請求。可以把xinetd看做一個管理啟動服務的管理服務器,它決定把一個客戶請求交給哪個程序處理,然后啟動相應的守護進程。xinetd無時不在運行並監聽它所管理的所有端口上的服務。當某個要連接它管理的某項服務的請求到達時,xinetd就會為該服務啟動合適的服務器。

image.png


四、Xinetd托管服務簡介

Xinetd 托管服務。又名:超級守護進程,可以把一些小服務放到xinetd里進行托管。拖管后的好處就是可以使用xinetd強大的參數來控制這些服務,並且增強安全性。(比如一個小服務沒有一些控制功能,但支持xinetd拖管,你就可以拖管並使用xinetd的參數來控制它)。
 

Xinetd提供類似於inetd + TCP Wrappers的功能,但是更加強大和安全。后面xinetd已經取代了inetd,並且提供了訪問控制、加強的日志和資源管理功能。
 

TCP Wrappers是一個應用層的訪問控制程序,其原理是在服務器向外提供的TCP服務上包裹一層安全檢測機制。外來的連接請求首先要通過這層安全檢測,獲得認證之后才能被系統服務接收。TCP Wrappers的功能有兩種實現方式:一種是由tcpd守護進程實現的,常被用於inetd + TCP Wrappers的系統中(如FreeBSD等);另一種是通過每種服務程序調用libwrap.so鏈接庫實現的,即libwrap.so庫支持的網絡服務程序都能使用TCP Wrappers來實現訪問控制,常用於xinetd + TCP Wrappers的系統中(如CentOS等)。

在CentOS中,TCP Wrappers一般是默認安裝的,若未安裝成功,可以使用如下命令安裝:

 

#  yum  -y  install  tcp_wrappers                 --安裝tcp_wrappers

 

五、Xinetd 服務的搭建與配置

1. 配置xinetd的方法

安裝xinetd服務

#  yum  -y  install  xinetd*                            --使用yum安裝

image.png


xinetd服務的主配置文件: /etc/xinetd.conf     --保持默認即可

用於存放被托管的服務的目錄:/etc/xinetd.d/

 

#  systemctl  enable  xinetd.service             --開機啟用xinetd服務

 

查看服務是否開機啟動:

#  systemctl  list-unit-files                                --列出各種服務開機是否啟動

#  systemctl  list-unit-files  |  grep  xinetd       --列出xinetd服務是否開機啟動

#  systemctl  is-enabled  xinetd                       --列出xinetd服務是否開機啟動

image.png

 

2. 配置實例

例1:以sshd為例,把sshd拖管到xinetd下

sshd服務也有配置文件,為/etc/ssh/sshd_config;但此配置文件功能有限,可以選擇拖管sshd服務,來實現額外的功能。

 

托管前先關閉ssh本身提供的服務

#  systemctl  stop  sshd.service                    --關閉ssh服務
#  systemctl  disable  sshd.service                --設置為開機不啟動(注意:如果你關閉xinetd之后,需要把ssh服務重新啟動,不然你不能通過ssh遠程連接)

image.png

 

下面開始配置ssh被xinetd托管

 

#  vim  /etc/xinetd.d/ssh                             --默認是沒有這個文件的,需要創建

 

1
2
3
4
5
6
7
8
9
10
11
12
13
service  ssh                              # 代表被托管服務的名稱
{
         disable = no                     # 是否禁用托管服務,no表示開啟托管服務
         log_on_failure += USERID         # 設置失敗時,UID添加到系統登記表
         socket_type = stream             # socket連接方式,這個是屬於本地方式,對ssh無效
         server_args = --daemon           # 設置服務啟動時需要的參數       
         cps = 25 30                      # 每秒25個入站連接,如果超過限制,則等待30秒。主要用於對付拒絕服務***
         protocol = tcp                   # 代表ssh走的是tcp協議連接
         wait = no                        # 是否並發,這個參數對ssh無效
         user = root                      # 以什么用戶進行啟動
         server =  /usr/sbin/sshd          # 被托管服務的啟動腳本
         server_args = -i                 # 啟動腳本的參數
}

image.png

 

#  systemctl  restart  xinetd.service    --重新啟動xinetd服務

#  lsof  -i:22                                        --ssh的默認端口為22,可以通過/etc/services查看各個服務的端口

 

--查看22端口的進程,由sshd變為了xinetd就表示你拖管成功了

image.png

 

例2:(上面的例子並沒有看出拖管與不拖管的區別)

下面在例1 的基礎上加上對IP或網段的訪問控制功能,這個是ssh服務本身不具備的功能(除非寫iptables)

 

#  vim  /etc/xinetd.d/ssh

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
service  ssh
{
         disable = no
         log_on_failure += USERID
         socket_type = stream
         server_args = --daemon
         cps = 25 30
         protocol = tcp
         wait = no
         user = root
         server =  /usr/sbin/sshd
         server_args = -i
         only_from = 192.168.1.0 /24               # 表示允許1網段訪問
         no_access = 192.168.1.20 192.168.1.200   # 表示只能1網段訪問,但1網段里的20和200這兩IP不能訪問
}

image.png

 

#  systemctl  restart  xinetd.service    --重新啟動xinetd服務  

 

修改后重新啟動xinetd服務再去客戶端進行測試

#  ifconfig   ens33                              --查看客戶端IP

#  ssh  192.168.1.88                           --ssh連接服務器

image.png

IP為192.168.1.88的拒絕客戶端遠程連接。因為在服務器里面做了xinetd托管設置:192.168.1.20的IP不能連接服務器。

 

例3:在例2 的基礎再加一些功能(man xinetd.conf)

    1、控制這個服務最多只能3個連接,每個源IP只能1個連接;

    2、控制只能9:00到18:00才能ssh連接;

    3、指定日志記錄到/var/log/xinetd_ssh.log里。

 

#  vim  /etc/xinetd.d/ssh

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
service  ssh
{
         disable = no
         log_on_failure += USERID
         socket_type = stream
         server_args = --daemon
         cps = 25 30
         protocol = tcp
         wait = no
         user = root
         server =  /usr/sbin/sshd
         server_args = -i
         only_from = 192.168.1.0 /24
         no_access = 192.168.1.20 192.168.1.200
         instances = 3                                    # 最大連接數為3
         per_source = 1                                   # 每個源IP只能有1個連接
         access_times = 9:00-18:00                        # 只能9:00到18:00才能ssh連接
         log_type =  file  /var/log/xinetd_ssh .log          # 指定日志記錄到/var/log/xinetd_ssh.log里
}

image.png

 

#  systemctl  restart  xinetd.service    --重新啟動xinetd服務

修改好以后大家在客戶端進行測試,修改時間,查看log_type指定的路徑下是否有xinetd_ssh.log。這里就不一一舉列驗證了。

 

例4:修改ssh服務的連接端口

(1)修改ssh服務的連接端口

 

#  vim  /etc/xinetd.d/ssh

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
service  ssh
{
         disable = no
         log_on_failure += USERID
         socket_type = stream
         server_args = --daemon
         cps = 25 30
         protocol = tcp
         wait = no
         user = root
         server =  /usr/sbin/sshd
         server_args = -i
         only_from = 192.168.1.0 /24
         no_access = 192.168.1.20 192.168.1.200
         instances = 3
         per_source = 1                    
         access_times = 9:00-18:00
         log_type =  file  /var/log/xinetd_ssh .log
         port = 7722                              # 指定ssh的連接端口為7722
}

 

(2)將ssh服務的端口改為7722

#  vim  /etc/services                                                                                                   --修改ssh服務端口
   46 ssh             7722/tcp                          # The Secure Shell (SSH) Protocol          --將ssh的tcp端口改為7722

   47 ssh             7722/udp                          # The Secure Shell (SSH) Protocol         --將ssh的udp端口改為7722

image.png

注意:這個端口7722不能和其他服務的端口相同,可以在/etc/services文件中查找是否有只有ssh的端口為7722。

端口改了以后,客戶端訪問是要使用ssh 192.168.1.88  -p  7722,但我自己連自己不用加-p 7722,因為我默認就是用7722來連接。這也就是說/etc/services里的端口也決定了你做為客戶端去訪問別人的默認端口。

重啟xinetd服務后通過lsof  -i:7722來查看ssh是否被托管

 

(3)配置文件改動后需要重啟xinetd服務

#  systemctl  restart  xinetd.service              --重新啟動xinetd服務

 

(4)驗證以上配置的參數是否生效

服務器:自己連接自己,不需加端口號

image.png

客戶端:需要加端口號

image.png

 

(5)測試完后將端口改回22

#  vim  /etc/services                                                                                               --修改ssh服務端口
   46 ssh             22/tcp                          # The Secure Shell (SSH) Protocol          --將ssh的tcp端口改回22

   47 ssh             22/udp                          # The Secure Shell (SSH) Protocol         --將ssh的udp端口改回22

 

#  systemctl  restart  xinetd.service                                                                       --重新啟動xinetd服務

image.png

 

六、Xinetd 時間同步

由於硬件的原因,機器或多或少的根標准時間對不上,一個月的誤差幾秒到幾分鍾不等。對於服務器來說時間不准,會有很多麻煩。那么我們就使用Xinetd搭建時間同步服務器。

#  yum  -y  install  xinetd*                            --使用yum安裝

image.png

 

#  vim  /etc/xinetd.d/time-dgram        --udp
  6         disable         = no                                --將yes改為no

image.png

#  vim  /etc/xinetd.d/time-stream        --tcp
  6         disable         = no                                --將yes改為no

image.png

 

#  systemctl  restart  xinetd.service                 --重新啟動xinetd服務

 

#  lsof  -i:37

image.png

 

客戶端要同步服務器時間,用下面的命令就可以了

#  rdate  -s  192.168.1.88                                --這里寫服務器的IP

 

總結:如果你想實現你公司服務器的所有時間與北京時間一致。可以用一台能上外網的服務器去同步公網上的時間服務器,然后把這台也配置成時間服務器,其它的機器通過內網定時同步就可以了。

 

====================

http://phl.iteye.com/blog/1815778

centos在線安裝 
yum -y install xinetd 

【知識點】 
標准http響應文件內容 
HTTP/1.1 200 OK 
Server: Apache-Coyote/1.1 
Content-Length: 0 
Date: Wed, 27 Feb 2013 02:34:36 GMT 

ubuntu下安裝(系統級工具,一般不自定義安裝) 
apt-get install xinetd 

【創建個服務腳本】 
/root/shell/httpok.sh 

#!/bin/sh 

/bin/echo -e "HTTP/1.1 200 OK" 
/bin/echo -e "Content-Type: text/plain" 
/bin/echo -e "Content-Length: 18" 
/bin/echo -e "Connection: close" 
/bin/echo -e "" 
/bin/echo -e "httpok is running." 
/bin/echo -e "" 

修改腳本權限(給user可執行權限) 
chmod 755 /root/shell/httpok.sh 

【創建xinetd服務】 
vi /etc/xinetd.d/httpok 
service my_httpok 

    flags           = REUSE 
    socket_type     = stream 
    #port            = 9201 
    wait            = no 
    user            = root 
    server          = /root/shell/httpok.sh 
    #log_on_failure  += USERID 
    disable         = no 
    #only_from       = 192.168.5.0/24 
    #recommended to put the IPs that need to connect exclusively (security purposes) 



【修改端口,方法有2種】 
1.默認依賴/etc/services,此時/etc/xinetd.d/httpok這個文件配置的port無效,所以不需要配置 
vi /etc/services 
my_httpok            9201/tcp 

2.解除依賴/etc/services 
此時/etc/xinetd.d/httpok這個文件配置里需要加上 
type            = UNLISTED 
port            = 9201 

【重啟服務,測試端口訪問】 
service xinetd restart 
curl http://127.0.0.1:9201/ 

 

==========================

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM