歡迎您光臨本站 註冊首頁

CentOS伺服器配置系列--telnet伺服器

←手機掃碼閱讀     火星人 @ 2014-03-29 , reply:0

作者:LinuxChao

這段時間在學CentOS-5.1伺服器的相關配置,也會陸續發一些自己的筆記與在實驗中遇到的問題及解決方法。

伺服器:CentOS-5.1(192.168.1.87)
客戶機:FC6(192.168.1.86) Windows XP(192.168.1.88)

雖然telnet的明文傳輸有很大的安全隱患,而且現在基本上也被SSH來取代了,但是為了學習還是有必要了解一下,好了,進入正題

實驗名:telnet伺服器配置

一、安裝telnet軟體包(通常要兩個)。
  
  1、 telnet-client (或 telnet),這個軟體包提供的是 telnet 客戶端程序;
  2、是 telnet-server 軟體包,這個才是真正的 Telnet server 軟體包!
  安裝之前先檢測是否這些軟體包已安裝,方法如下:
  [root@linuxchao root]#rpm ?qa |grep telnet
telnet-server-0.17-38.e15
  如果沒有檢測到軟體包,需要進行安裝,CentOS伺服器模式默認已安裝了telnet軟體包,但是伺服器需要telnet-server軟體包才行(安裝

包在光碟內 也可在在網路上下載安裝)

我的是硬碟安裝的CentOS系統,所以會掛載硬碟分區之後再掛載鏡像,光碟安裝方法相似!

[root@linuxchao root]mount /dev/hda6 /mnt/da #da是我在/mnt下建立的目錄,hda6分區為centos鏡像所在
[root@linuxchao root]mount -t iso9660 -o loop /mnt/da/CentOS-5.1-i386-bin-DVD.iso /mnt/iso #iso目錄也是我建的
[root@linuxchao root]cd /mnt/iso/CentOS #這個目錄是rpm包所在的目錄
[root@linuxchao root]rpm -ivh telnet-server-0.17-38.e15.rpm
上面就安裝好telnet伺服器軟體包了,現在來查看一下。
  [root@linuxchao root]#rpm ?qa |grep telnet
  telnet-0.17-38.e15
telnet-server-0.17-38.e15

二、啟動telnet服務
  
  1、開啟服務
  方法一:使用ntsysv,在出現的窗口之中,將 telnet 勾選起來,然後按下 OK 即可 !
  方法二:編輯 /etc/xinetd.d/telnet
  [root@linuxchao root]# vi /etc/xinetd.d/telnet
  找到 disable = yes<==就是改這裡,將 yes 改成 no 即可!服務預設是關閉的
方法三:使用chkconfig命令直接開啟
  [root@linuxchao root]chkconfig telnet on
  2、激活服務
  telnet 是掛在 xinetd 底下的,所以自然只要重新激活 xinetd 就能夠將 xinetd 裡頭的設定重新讀進來,所以剛剛設定的 telnet 自然

也就可以被激活。
  [root@linuxchao root]# service xinetd restart
或者[root@linuxchao root]# /etc/rc.d/init.d/xinetd restart #這個是比較正規的方法

三、測試服務
  
  [root@linuxchao root]#telnet localhost
  如果配置正確,系統提示輸入遠程機器的用戶名和密碼
  Login:
  Password:
  註:默認只允許普通用戶,因此可先建立一個普通用戶來做測試,不過也可以通過下面的方法來解決root訪問的問題

Telnet root用戶的登入
  
  root 不能直接以 telnet 連接上主機。 telnet 不是很安全,默認的情況之下就是無法允許 root 以 telnet 登入 Linux 主機的 。若要

允許root用戶登入,可用下列方法
  [root@linuxchao root]# vi /etc/pam.d/login
  #auth required pam_securetty.so #將這一行加上註釋!  
  或
  # mv /etc/securetty /etc/securetty.bak
  這樣一來, root 將可以直接進入 Linux 主機。不過,建議不要這樣做。還可以在普通用戶進入后,切換到root用戶,擁有root的許可權!

四、客戶端訪問實驗

基礎由於LINUX為了提高TELNET的安全性和防止未授權的用戶利用TELNET的BUG
下面我們來看一下二種錯誤:
第一種:
[root@linuxchao ~]# telnet 192.168.1.87
Trying 192.168.1.87...
telnet: connect to address 192.168.1.87: No route to host
telnet: Unable to connect to remote host: No route to host

解決方法:這種問題防火牆沒有允許telnet服務,連接被阻止,默認CentOS只允許SSH,所以進入其自定義選項,在telnet前打個勾!

第二種
[root@test xinetd.d]# telnet 172.25.1.3
Trying 172.25.1.3...
Connected to 172.25.1.3 (172.25.1.3).
Escape character is '^]'.
getnameinfo: localhost: Success
Temporary failure in name resolution: Illegal seek
Connection closed by foreign host.

這一個就是/etc/hosts文件配置問題
解決方法:我在裡面加兩個IP地址,內容如下:

[linuxchao@localhost ~]$ more /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1localhost.localdomainlocalhost
::1localhost6.localdomain6localhost6
192.168.1.88
192.168.1.86
說明:因為客戶機的名字不好記就沒寫進去,內容格式應為 127.0.0.1 pcname

總結:在使用telnet時要記得1.打開防火牆對telnet的限制2./etc/hosts對客戶機的限制3.注意/etc/hosts.allow與/etc/hosts.deny兩個文件

里的內容,都有可能會限制訪問,這裡只是區域網測試就不說多了。

五、Telnet服務限制
  
  如果原本的默認值你並不滿意,那麼你可以修改成比較安全一點的機制。假設你這個 Linux 是一部主機,而且他有兩塊網路介面,分別是

對外的 192.168.0.1 與對內的212.45.16.5 這兩個,如果你想要讓對內的介面限制較松,而對外的限制較嚴格,你可以這樣的來設定:
  #vi /etc/xinetd.d/telnet
  # 先針對對內的較為鬆散的限制來設定:
  service telnet
  { disable    = no         <==預設就是激活 telnet 服務
  bind       = 212.45.16.5    <==只允許經由這個適配卡的封包進來
  only_from    = 212.45.16.0/24   <==只允許 210.45.160.0/24 這個網段的主機聯機進來使用 telnet 的服務
  .....
  }
  # 再針對外部的聯機來進行限制
  service telnet
  
  {
  disable     = no<==預設就是激活 telnet 服務
  bind       = 192.168.0.1<==只允許經由這個適配卡的封包進來
  only_from    = 192.168.0.0/16<==只允許 192.168.0.0 ~ 192.168.255.255 這個網段聯機進來使用 telnet 的服務
  only_from    = .edu.cn<==重複設定,只有教育網才能聯機!
  no_access    = 192.168.25.{10,26}<==不許這些 PC 登入
  access_times  = 1:00-9:00 20:00-23:59 <==每天只有這兩個時段開放服務
  ......
  }

[火星人 ] CentOS伺服器配置系列--telnet伺服器已經有434次圍觀

http://coctec.com/docs/linux/show-post-201715.html