CentOS 6.3 設定 – (1) 基本調效與 SSH 連線

全文引自:http://yenpai.idis.com.tw/archives/273-%E6%95%99%E5%AD%B8-centos-6-3-%E8%A8%AD%E5%AE%9A-1-%E5%9F%BA%E6%9C%AC%E8%AA%BF%E6%95%88%E8%88%87-ssh-%E9%80%A3%E7%B7%9A

在完成 最小安裝 與 網路設定 之後,此時你的 CentOS 已經處於 On Live 狀態,在預設的安裝中,CentOS 會內建並啟動 SSH 遠端連線的服務,且啟動防火牆,只允許 ICMP 與 SSH 連線,這表示你已經可以透過網路連線,而不再需要直接操作實體主機。

但,這樣就夠安全了嗎?其實 SSH 一點都不安全,當你的主機開啟此類服務時,表示任何人都可能透過網路的方式來嘗試連線到你的主機,透過 Port 掃瞄、字典檔或暴力破解,無論如何,root 密碼最終還是會被破解,而你的主機就淪為駭客的溫床。

因此,本文將引導大家透過設定 SSH ,降低被攻擊的可能,在配合防火牆的配置,只允許許可的網段連線,讓駭客無從而入。最後再針對環境配置,讓系統運作更加乾淨利落。

一、使用 SSH 連線 (PuTTY , PieTTY)

在剛安裝完後的主機,預設就會開啟 SSH 服務,而 Port 也為預設的 22,要遠端連線這個服務,就必須去下載 SSH 的 Client 軟體,一般在 Windows 環境下,幾乎所有使用 Linux 系統的玩家,都會推薦使用 PuTTY (支援中文的版本為 PieTTY) 這一套來連線。

使用 Pietty 來連線 SSH 服務

只要輸入您的主機 IP 與 Port ,就會透過網路遠端連線到該主機

image

使用 SSH 第一次連線時,會進行 RSA2 的金鑰交換,來達成整個連線,傳輸資料的安全(加密傳輸),這就是 SSH 比一般連線還安全的原因(能防止中途攔截時,封包內容被解讀)

image

再來就會看到登入畫面,輸 root 帳戶與密碼就會登入成功了,這也意味著任何能夠知道 IP 的人,都能嘗試登入你的 root 帳號

二、設定 SSH 服務

如上面所說,目前的 SSH 是可能會被任何人連線的,因此,我們可以透過 SSH 服務的設定檔來增加安全性,目標作以下幾項變更:

  1. 更改 Port 為 3322 (防止掃瞄Port)
  2. 不允許 root 登入(自己建立另一個新使用者來登入)
  3. DNS反查關閉(加快登入速度)
  4. 只允許指定的帳號登入(如範例為 yenpai 和 jess)

SSH 服務的設定檔 /etc/ssh/sshd_config

1
2
3
4
5
6
7
8
9
10
11
[root@localhost ~]# vi /etc/ssh/sshd_config
 
Port 3322
PermitRootLogin no
UseDNS no
AllowUsers yenpai jess
 
[root@localhost ~]# service sshd restart
Stopping sshd:                                             [  OK  ]
Starting sshd:                                             [  OK  ]
[root@localhost ~]#

設定完後要重啟服務(service sshd restart)才會真正生效,可以透過 netstat 指令來確認重啟後的 SSH 服務是否以 Port 3322 來接受連線

1
2
3
[root@localhost ~]# netstat -ant | grep :3322
tcp  0  0 0.0.0.0:3322   0.0.0.0:*   LISTEN
tcp  0  0 :::3322        :::*        LISTEN

目前 SSH 的 Port 已經被更改到 3322,並且 root 帳戶無法登入,所以要建立另一個使用者帳戶來登入(adduser 新增帳戶,passwd  設定帳戶密碼)

<tbody style="margin: 0px !important; padding: 0px !important; border: 0px !