close
- 前言:
那如果你已經將一些可能造成侵入的服務關掉之後,下一步要作什麼呢?當然就是限制連線進來電腦囉!通常,若你有開啟 http 或 mail 的情況下,在 apache 與 sendmail 的設定檔中限制連線的電腦,可能會造成一些網域無法登入,當然,除非你只對內部開放,否則的話,通常是不在該服務下關閉某一網域的電腦的!但是 telnet 這個服務就不是這樣囉!基本上,我們並不希望有任何人以 telnet 登入我們的主機,(除非你有架設 BBS)因為如果你開放 telnet 的話,那等於是請所有的人進入你的主機中,竊取你的資料,甚至以你的主機為中繼站去攻擊別人!因此,最好限制每一台主機可以連線的網域才好。
- 參考資料:
以下的部分內容,我是參考 study-area 『我本善良』兄寫的文章,另外,『臥龍小三』的文章也很值得參考!
- 限制連線的範圍:
- 其實,你服務的項目除了 Proxy, WWW 與 e-mail 等之外,若要使用 Telnet 或其他的連線軟體連上你的主機的話,應該是要經過你的控管的,所以,限制適當的連線網路是有其必要性的。通常,我都只設定我上網工作(Windows 平台)的那部機器,及可能會使用到的外部網路的機器,讓他可以登入這部主機,其他的就將之deny(取消)掉!基本上,要設定連線範圍的程式與檔案有幾個:
- tcp_wrappers 套件;
- /etc/hosts.allow;
- /etc/hosts.deny。
- 察看是否具有 tcp_wrappers 套件:
- 設定允許登入的電腦(/etc/hosts.allow):
- 設定不許登入的電腦(/etc/hosts.deny):
要使連線電腦的設定啟動,以使用 /etc/hosts.allow 與 /etc/hosts.deny 檔案的話,需要這一套軟體『tcp_wrappers』,要察看你的 Linux 主機內是否有這一套軟體的話,請使用:
- rpm -q tcp_wrappers 或者
rpm -qa | grep tcp
如果有這套軟體的話,自然就會顯示出來,如果沒有的話,請放入你的
Linux 光碟片,將 rpm 檔案裝上去吧!
其實很簡單,只要修改 /etc/hosts.allow(如果沒有此檔,請自行以 vi 編輯)這這檔案即可,例如,我家裡的電腦中,我的內部網域(區域網路)是 192.168.1.0/255.255.255.0,這樣的網域代表電腦 IP 在於 192.168.1.1 - 192.168.1.255 之間!所以,我就將 /etc/hosts.allow 這個檔案的內容設定成為如此:
- in.telnetd: 192.168.1.0/255.255.255.0,
.ncku.edu.tw : Allow
加入 .ncku.edu.tw 的原因是因為我人在成大,所以加入此行的話,可以使我在成大連上我家裡的
Linux 主機。
由於正常的情況下, Linux 會先判斷 hosts.allow 這個檔案,這個檔案中的電腦如果設定為可連線的話,則 hosts.deny 就不會被使用,因此,設定好了 hosts.allow 之後,將 /etc/hosts.deny 設定為『所有電腦都不許登入』的情況,如下所示:
- in.telnetd: ALL : Deny
這樣一來,基本的防護措施就有了(不用重新開機就自動執行了!)。
- 記錄限制登入的主機 IP:
通常我們會希望如果有人嘗試登入我們的系統時,系統不但可以將他摒棄在外,並且可以將他的嘗試記錄下來!這時,我們可以藉由 /etc/hosts.deny 來達成這個目標!在這個檔案中(當然,您的 /etc/hosts.allow 必須已經先完成編輯了!),你可以這樣輸入:
[root
@tsai /etc]# vi hosts.deny
in.telnetd:
ALL : spawn (echo Security notice from host `/bin/hostname`; \
|
在上面的例子中,黃色的 root 部分,可以寫成你的個人帳號或者其他 e-mail ,以免很少以 root 身份登入 Linux 主機時,容易造成不知道的情況,另外,最後幾行(顏色怪怪的那一行)為同一行。如此一來,當未經允許的電腦嘗試登入你的主機時,他的畫面就會顯示上面的最後一行,並且將他的 IP 寄到 root (或者是你自己的信箱)那裡去!
全站熱搜
留言列表