|  首頁
說明

GoDaddy 說明

噠啦噠啦噠...計算中...計算中...啟動序列 42...
啵啵嗶嗶啵… 機器人自動化中… 此網頁是經由機器人自動翻譯成您的本地語言。某些翻譯可能還不盡完善,我們需要您的幫助!使用頁面底部的按鈕告訴我們本文是否有幫助。 前往英語版本

如何設定 SSH 逾時

在您的伺服器上設定 SSH 連接不同逾時期限是重要且簡單步驟,可維護伺服器具備絕佳穩定度和安全性。多數 Linux 發佈上找到的一般 SSH 協助程式工具,可讓此程序輕鬆處理和其他殼層設定,甚至是提供中斷閒置的使用者必要的功能。

遇到問題 入門版-1 |中-2 |進階-3
所需的時間 10 分鐘
相關的產品 Linux 式 VPS 或專屬的伺服器
Linux 式共用主機

管理伺服器端 SSH 逾時

若要輕鬆處理透過 SSH 連接至您的伺服器中斷連接或甚至閒置客戶,您會想要查看兩個角問題: ClientAlive 和殼層 TMOUT。

設定 SSH ClientAlive 設定

當用戶端休旅車透過 SSH 連接,(設定正確) Linux 式伺服器時,伺服器將指定的間隔執行一連串連接用戶端存留要求。在每次執行,伺服器會傳送給用戶端,請確認用戶端連線仍有效,且包。應該此存留包交換過失敗伺服器可以自動伺服器連接。 若要確保您的伺服器終止任何 SSH 回應用戶端不正確您必須編輯您的 sshd_config 檔案。對於大部分發佈 sshd_config 位於 /etc/ssh 目錄中的,但如果需要您可以隨時尋找與快速找到:

find / -name sshd_config
/etc/ssh/sshd_config
/usr/share/doc/openssh-client/examples/sshd_config

若要開始,請開啟 sshd_config 檔案,您最喜愛的文字編輯器 (例如 vim 或 nano – 我們使用 nano 此處):

nano /etc/ssh/sshd_config
# Package generated configuration file
# See the sshd_config(5) manpage for details
# What ports, IPs and protocols we listen for
Port 22
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
...

有三種設定,您應該找出 — 或新增必要 — 在您 sshd_config 檔案:

  • ClientAliveCountMax
  • ClientAliveInterval
  • TCPKeepAlive

以下是預設設定大部分的 SSH 協助程式安裝:

ClientAliveCountMax 3
ClientAliveInterval 0
TCPKeepAlive yes

ClientAliveInterval決定如何經常加密 (和因此困難詐騙)。TCPKeepAlive包用戶端傳輸 (數秒)。此設定可搭配 ClientAliveCountMax ,決定多少 KeepAlive 封會傳送給任何回應用戶端終止連線前。

使用預設設定為零秒 ClientAliveInterval ,大部份的 SSH 協助程式安裝將不會傳輸這些 TCPKeepAlive 封。

您可以輕鬆地啟用 ClientAlive 進行變更或變更中的這些設定包傳輸您 sshd_config 檔案。例如,發送的時間間隔 15 秒 4 封最多一點,加入這些行 sshd_config 檔案:

ClientAliveCountMax 4
ClientAliveInterval 15

第三個設定 TCPKeepAlive 同樣地加入行為 ClientAliveCountMaxClientAliveInterval 組合,除了 TCPKeepAlive 檢查是否仍然連線用戶端使用加密的封 (TCP 協定傳送)。

啟用 TCPKeepAlive 可確保不會發生任何 「 幽靈 」 用戶端連線,您可以使用資源的伺服器。相反地,如果有可能伺服器的 SSH 連接用戶端與您的伺服器、 之間的連線任何暫時網際網路 hiccups TCPKeepAlive 協定可能會中斷該用戶。

啟用 (或停用) TCPKeepAlive ,設定值 sshd_config 是的沒有檔案:

# Enables TCPKeepAlive
TCPKeepAlive yes

進行的任何變更後如常您 sshd_config 檔案,請一定要將檔案儲存,然後重新啟動您 SSH 協助程式:

service ssh restart

中斷連接閒置 SSH 用戶端

時使用的 ClientAlive 和 TCPKeepAlive 中的設定您的 sshd_config 會處理任何連接的已不當嚴重損毀、 SSH 用戶端連線長段時間,只需閒置上有任何影響。如果安全性極為重要,您可能希望伺服器閒置 SSH 連接至您的伺服器。

對於大部分 Linux 發佈,中斷閒置用戶端可輕鬆處理使用您 bashrc 檔案中設定 TMOUT 艦隊。因為您可能會想指定套用至所有使用者的設定,您應該編輯 /etc/bash.bashrc 檔案 (如使用者專屬設定開啟 ~/.bashrc 相反地):

nano /etc/bash.bashrc
# System-wide .bashrc file for interactive bash(1) shells.
# To enable the settings / commands in this file for login shells as well,
# this file has to be sourced in /etc/profile.
...

若要新增閒置用戶端中斷,只要新增下列 」 結尾 bash.bashrc 檔案:

TMOUT=300
readonly TMOUT
export TMOUT

TMOUT 設定為用戶端可連接及閒置逾時偵測到和伺服器中斷連接之前的秒數。您可以一開始使用很小值,先測試您的設定,但應在生產使用的合理值。

一旦變更設定和 bash.bashrc 已儲存,您可能會立即開啟新 SSH 連接與您的伺服器等候。您的設定的 TMOUT 期過後會中斷連接:

account@ubuntu:~# date
Wed Oct 15 03:09:41 EDT 2014
account@ubuntu:~# ssh root@123.123.456.78
root@Main:~# date
Wed Oct 15 03:09:47 EDT 2014
root@Main:~# timed out waiting for input: auto-logout
Connection to 123.123.456.78 closed
account@ubuntu:~# date
Wed Oct 15 03:14:53 EDT 2014

下列這些基本的作法可確保提高的安全性並具備絕佳穩定度所有 SSH 連線至您的伺服器。


這篇文章有用嗎?
感謝您提供意見。 若要與客戶服務代表聯絡,請撥打支援中心電話號碼,或使用上方的對話選項。
很高興能幫上忙! 還有什麼可幫您的嗎?
很抱歉有這種情形。 請告訴我們您不了解的部分,或解決方案無法解決您問題的原因。