標籤:xinetd 服務轉向
什麼是xinetd?
大家對被稱作超級伺服器的Inetd一定很熟悉,其實現控制對主機網路連接。當一個請求到達由Inetd管理的服務連接埠,Inetd將該請求轉寄給名為tcpd的程式。Tcpd根據設定檔hosts.{allow, deny}來判斷是否允許服務該請求。如果請求被允許則相應的伺服器程式(如:ftpd、telnetd)將被啟動。這個機制也被稱作tcp_wrapper.
xinetd(eXtended InterNET services daemon)提供類似於inetd+tcp_wrapper的功能,但是更加強大和安全。它能提供以下特色:
* 支援對tcp、ucp、RPC服務(但是當前對RPC的支援不夠穩定)
* 基於時間段的存取控制
* 功能完備的log功能,即可以記錄串連成功也可以記錄串連失敗的行為
* 能有效防止DoS攻擊(Denial of Services)
* 能限制同時啟動並執行同意類型的伺服器數目
* 能限制啟動的所有伺服器數目
* 能限制log檔案大小
* 將某個服務綁定在特定的系統介面上,從而能實現只允許私人網路訪問某項服務
* 能實現作為其他系統的代理。如果和ip偽裝結合可以實現對內部私人網路的訪問
它最大的缺點是對RPC支援的不穩定性,但是可以啟動protmap,與xinetd共存來解決這個問題
xinetd轉向功能執行個體
這個功能可以將用戶端的請求轉寄到另一台主機去處理。
如我這裡內網192.168.18.204需要通過跳板172.26.184.240去調用郵件伺服器172.26.10.12,可以這樣實現:跳板172.26.184.240配置xinetd,監聽在25連接埠,當用戶端請求過來,將請求轉寄給郵件伺服器172.26.10.12處理。配置方法如下:
在跳板172.26.184.240配置
vi /etc/xinetd.d/smtp-relay
service smtp-relay{ disable = no flags = REUSE socket_type = stream wait = no user = root bind = 0.0.0.0 port = 2525 only_from = 192.168.18.0/24 no_access = 192.168.18.11 access_time = 00:00-23:59 redirect = 172.26.10.12 25}
vi /etc/services,找到2525連接埠所在行,改為如下行:
smtp-relay 2525/tcp # smtp-relaysmtp-relay 2525/udp # smtp-relay
重啟xinetd服務
service xinetd restart
這樣,內網192.168.18.204可以通過調用跳板172.26.184.240上的2525連接埠發送郵件。
本文出自 “fire” 部落格,請務必保留此出處http://fire7758.blog.51cto.com/993821/1562537
xinetd轉向功能