關於ssh 設置的相關總結(ssh最大連接數、ssh連接時長、安全性配置等)


以redhat6.3為例

ssh配置文件在:

/etc/ssh/sshd_config

可以打開查看相應配置,默認情況下只開放了幾個選項,其余全部#屏蔽掉了。

英文手冊參考:http://www.openbsd.org/cgi-bin/man.cgi?query=sshd_config

國內有人已經翻譯了:(直接貼過來了)

sshd_config 中文手冊

SSHD_CONFIG(5)            OpenBSD Programmer's Manual           SSHD_CONFIG(5)

名稱
     sshd_config - OpenSSH SSH 服務器守護進程配置文件

大綱
     /etc/ssh/sshd_config

描述
     sshd(8) 默認從 /etc/ssh/sshd_config 文件(或通過 -f 命令行選項指定的文件)讀取配置信息。
     配置文件是由"指令 值"對組成的,每行一個。空行和以'#'開頭的行都將被忽略。
     如果值中含有空白符或者其他特殊符號,那么可以通過在兩邊加上雙引號(")進行界定。
     [注意]值是大小寫敏感的,但指令是大小寫無關的。

     當前所有可以使用的配置指令如下:

     AcceptEnv
             指定客戶端發送的哪些環境變量將會被傳遞到會話環境中。[注意]只有SSH-2協議支持環境變量的傳遞。
             細節可以參考 ssh_config(5) 中的 SendEnv 配置指令。
             指令的值是空格分隔的變量名列表(其中可以使用'*'和'?'作為通配符)。也可以使用多個 AcceptEnv 達到同樣的目的。
             需要注意的是,有些環境變量可能會被用於繞過禁止用戶使用的環境變量。由於這個原因,該指令應當小心使用。
             默認是不傳遞任何環境變量。

     AddressFamily
             指定 sshd(8) 應當使用哪種地址族。取值范圍是:"any"(默認)、"inet"(僅IPv4)、"inet6"(僅IPv6)。

     AllowGroups
             這個指令后面跟着一串用空格分隔的組名列表(其中可以使用"*"和"?"通配符)。默認允許所有組登錄。
             如果使用了這個指令,那么將僅允許這些組中的成員登錄,而拒絕其它所有組。
             這里的"組"是指"主組"(primary group),也就是/etc/passwd文件中指定的組。
             這里只允許使用組的名字而不允許使用GID。相關的 allow/deny 指令按照下列順序處理:
             DenyUsers, AllowUsers, DenyGroups, AllowGroups

     AllowTcpForwarding
             是否允許TCP轉發,默認值為"yes"。
             禁止TCP轉發並不能增強安全性,除非禁止了用戶對shell的訪問,因為用戶可以安裝他們自己的轉發器。

     AllowUsers
             這個指令后面跟着一串用空格分隔的用戶名列表(其中可以使用"*"和"?"通配符)。默認允許所有用戶登錄。
             如果使用了這個指令,那么將僅允許這些用戶登錄,而拒絕其它所有用戶。
             如果指定了 USER@HOST 模式的用戶,那么 USER 和 HOST 將同時被檢查。
             這里只允許使用用戶的名字而不允許使用UID。相關的 allow/deny 指令按照下列順序處理:
             DenyUsers, AllowUsers, DenyGroups, AllowGroups

     AuthorizedKeysFile
             存放該用戶可以用來登錄的 RSA/DSA 公鑰。
             該指令中可以使用下列根據連接時的實際情況進行展開的符號:
             %% 表示'%'、%h 表示用戶的主目錄、%u 表示該用戶的用戶名。
             經過擴展之后的值必須要么是絕對路徑,要么是相對於用戶主目錄的相對路徑。
             默認值是".ssh/authorized_keys"。

     Banner
             將這個指令指定的文件中的內容在用戶進行認證前顯示給遠程用戶。
             這個特性僅能用於SSH-2,默認什么內容也不顯示。"none"表示禁用這個特性。

     ChallengeResponseAuthentication
             是否允許質疑-應答(challenge-response)認證。默認值是"yes"。
             所有 login.conf(5) 中允許的認證方式都被支持。

     Ciphers
             指定SSH-2允許使用的加密算法。多個算法之間使用逗號分隔。可以使用的算法如下:
             "aes128-cbc", "aes192-cbc", "aes256-cbc", "aes128-ctr", "aes192-ctr", "aes256-ctr",
             "3des-cbc", "arcfour128", "arcfour256", "arcfour", "blowfish-cbc", "cast128-cbc"
             默認值是可以使用上述所有算法。

     ClientAliveCountMax
             sshd(8) 在未收到任何客戶端回應前最多允許發送多少個"alive"消息。默認值是 3 。
             到達這個上限后,sshd(8) 將強制斷開連接、關閉會話。
             需要注意的是,"alive"消息與 TCPKeepAlive 有很大差異。
             "alive"消息是通過加密連接發送的,因此不會被欺騙;而 TCPKeepAlive 卻是可以被欺騙的。
             如果 ClientAliveInterval 被設為 15 並且將 ClientAliveCountMax 保持為默認值,
             那么無應答的客戶端大約會在45秒后被強制斷開。這個指令僅可以用於SSH-2協議。

     ClientAliveInterval
             設置一個以秒記的時長,如果超過這么長時間沒有收到客戶端的任何數據,
             sshd(8) 將通過安全通道向客戶端發送一個"alive"消息,並等候應答。
             默認值 0 表示不發送"alive"消息。這個選項僅對SSH-2有效。

     Compression
             是否對通信數據進行加密,還是延遲到認證成功之后再對通信數據加密。
             可用值:"yes", "delayed"(默認), "no"。

     DenyGroups
             這個指令后面跟着一串用空格分隔的組名列表(其中可以使用"*"和"?"通配符)。默認允許所有組登錄。
             如果使用了這個指令,那么這些組中的成員將被拒絕登錄。
             這里的"組"是指"主組"(primary group),也就是/etc/passwd文件中指定的組。
             這里只允許使用組的名字而不允許使用GID。相關的 allow/deny 指令按照下列順序處理:
             DenyUsers, AllowUsers, DenyGroups, AllowGroups

     DenyUsers
             這個指令后面跟着一串用空格分隔的用戶名列表(其中可以使用"*"和"?"通配符)。默認允許所有用戶登錄。
             如果使用了這個指令,那么這些用戶將被拒絕登錄。
             如果指定了 USER@HOST 模式的用戶,那么 USER 和 HOST 將同時被檢查。
             這里只允許使用用戶的名字而不允許使用UID。相關的 allow/deny 指令按照下列順序處理:
             DenyUsers, AllowUsers, DenyGroups, AllowGroups

     ForceCommand
             強制執行這里指定的命令而忽略客戶端提供的任何命令。這個命令將使用用戶的登錄shell執行(shell -c)。
             這可以應用於 shell 、命令、子系統的完成,通常用於 Match 塊中。
             這個命令最初是在客戶端通過 SSH_ORIGINAL_COMMAND 環境變量來支持的。

     GatewayPorts
             是否允許遠程主機連接本地的轉發端口。默認值是"no"。
             sshd(8) 默認將遠程端口轉發綁定到loopback地址。這樣將阻止其它遠程主機連接到轉發端口。
             GatewayPorts 指令可以讓 sshd 將遠程端口轉發綁定到非loopback地址,這樣就可以允許遠程主機連接了。
             "no"表示僅允許本地連接,"yes"表示強制將遠程端口轉發綁定到統配地址(wildcard address),
             "clientspecified"表示允許客戶端選擇將遠程端口轉發綁定到哪個地址。

     GSSAPIAuthentication
             是否允許使用基於 GSSAPI 的用戶認證。默認值為"no"。僅用於SSH-2。

     GSSAPICleanupCredentials
             是否在用戶退出登錄后自動銷毀用戶憑證緩存。默認值是"yes"。僅用於SSH-2。

     HostbasedAuthentication
             這個指令與 RhostsRSAAuthentication 類似,但是僅可以用於SSH-2。推薦使用默認值"no"。
             推薦使用默認值"no"禁止這種不安全的認證方式。

     HostbasedUsesNameFromPacketOnly
             在開啟 HostbasedAuthentication 的情況下,
             指定服務器在使用 ~/.shosts ~/.rhosts /etc/hosts.equiv 進行遠程主機名匹配時,是否進行反向域名查詢。
             "yes"表示 sshd(8) 信任客戶端提供的主機名而不進行反向查詢。默認值是"no"。

     HostKey
             主機私鑰文件的位置。如果權限不對,sshd(8) 可能會拒絕啟動。
             SSH-1默認是 /etc/ssh/ssh_host_key 。
             SSH-2默認是 /etc/ssh/ssh_host_rsa_key/etc/ssh/ssh_host_dsa_key 。
             一台主機可以擁有多個不同的私鑰。"rsa1"僅用於SSH-1,"dsa"和"rsa"僅用於SSH-2。

     IgnoreRhosts
             是否在 RhostsRSAAuthenticationHostbasedAuthentication 過程中忽略 .rhosts.shosts 文件。
             不過 /etc/hosts.equiv/etc/shosts.equiv 仍將被使用。推薦設為默認值"yes"。

     IgnoreUserKnownHosts
             是否在 RhostsRSAAuthenticationHostbasedAuthentication 過程中忽略用戶的 ~/.ssh/known_hosts 文件。
             默認值是"no"。為了提高安全性,可以設為"yes"。

     KerberosAuthentication
             是否要求用戶為 PasswordAuthentication 提供的密碼必須通過 Kerberos KDC 認證,也就是是否使用Kerberos認證。
             要使用Kerberos認證,服務器需要一個可以校驗 KDC identity 的 Kerberos servtab 。默認值是"no"。

     KerberosGetAFSToken
             如果使用了 AFS 並且該用戶有一個 Kerberos 5 TGT,那么開啟該指令后,
             將會在訪問用戶的家目錄前嘗試獲取一個 AFS token 。默認為"no"。

     KerberosOrLocalPasswd
             如果 Kerberos 密碼認證失敗,那么該密碼還將要通過其它的認證機制(比如 /etc/passwd)。
             默認值為"yes"。

     KerberosTicketCleanup
             是否在用戶退出登錄后自動銷毀用戶的 ticket 。默認值是"yes"。

     KeyRegenerationInterval
             在SSH-1協議下,短命的服務器密鑰將以此指令設置的時間為周期(秒),不斷重新生成。
             這個機制可以盡量減小密鑰丟失或者黑客攻擊造成的損失。
             設為 0 表示永不重新生成,默認為 3600(秒)。

     ListenAddress
             指定 sshd(8) 監聽的網絡地址,默認監聽所有地址。可以使用下面的格式:

                   ListenAddress host|IPv4_addr|IPv6_addr
                   ListenAddress host|IPv4_addr:port
                   ListenAddress [host|IPv6_addr]:port

             如果未指定 port ,那么將使用 Port 指令的值。
             可以使用多個 ListenAddress 指令監聽多個地址。

     LoginGraceTime
             限制用戶必須在指定的時限內認證成功,0 表示無限制。默認值是 120 秒。

     LogLevel
             指定 sshd(8) 的日志等級(詳細程度)。可用值如下:
             QUIET, FATAL, ERROR, INFO(默認), VERBOSE, DEBUG, DEBUG1, DEBUG2, DEBUG3
             DEBUG 與 DEBUG1 等價;DEBUG2 和 DEBUG3 則分別指定了更詳細、更羅嗦的日志輸出。
             比 DEBUG 更詳細的日志可能會泄漏用戶的敏感信息,因此反對使用。

     MACs
             指定允許在SSH-2中使用哪些消息摘要算法來進行數據校驗。
             可以使用逗號分隔的列表來指定允許使用多個算法。默認值(包含所有可以使用的算法)是:
             hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-sha1-96,hmac-md5-96

     Match
             引入一個條件塊。塊的結尾標志是另一個 Match 指令或者文件結尾。
             如果 Match 行上指定的條件都滿足,那么隨后的指令將覆蓋全局配置中的指令。
             Match 的值是一個或多個"條件-模式"對。可用的"條件"是:User, Group, Host, Address 。
             只有下列指令可以在 Match 塊中使用:AllowTcpForwarding, Banner,
             ForceCommand, GatewayPorts, GSSApiAuthentication,
             KbdInteractiveAuthentication, KerberosAuthentication,
             PasswordAuthentication, PermitOpen, PermitRootLogin,
             RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset,
             X11Forwarding, X11UseLocalHost

     MaxAuthTries
             指定每個連接最大允許的認證次數。默認值是 6 。
             如果失敗認證的次數超過這個數值的一半,連接將被強制斷開,且會生成額外的失敗日志消息。

     MaxStartups
             最大允許保持多少個未認證的連接。默認值是 10 。
             到達限制后,將不再接受新連接,除非先前的連接認證成功或超出 LoginGraceTime 的限制。

     PasswordAuthentication
             是否允許使用基於密碼的認證。默認為"yes"。

     PermitEmptyPasswords
             是否允許密碼為空的用戶遠程登錄。默認為"no"。

     PermitOpen
             指定TCP端口轉發允許的目的地,可以使用空格分隔多個轉發目標。默認允許所有轉發請求。
             合法的指令格式如下:
                   PermitOpen host:port
                   PermitOpen IPv4_addr:port
                   PermitOpen [IPv6_addr]:port
             "any"可以用於移除所有限制並允許一切轉發請求。

     PermitRootLogin
             是否允許 root 登錄。可用值如下:
             "yes"(默認) 表示允許。"no"表示禁止。
             "without-password"表示禁止使用密碼認證登錄。
             "forced-commands-only"表示只有在指定了 command 選項的情況下才允許使用公鑰認證登錄。
                                   同時其它認證方法全部被禁止。這個值常用於做遠程備份之類的事情。

     PermitTunnel
             是否允許 tun(4) 設備轉發。可用值如下:
             "yes", "point-to-point"(layer 3), "ethernet"(layer 2), "no"(默認)。
             "yes"同時蘊含着"point-to-point"和"ethernet"。

     PermitUserEnvironment
             指定是否允許 sshd(8) 處理 ~/.ssh/environment 以及 ~/.ssh/authorized_keys 中的 environment= 選項。
             默認值是"no"。如果設為"yes"可能會導致用戶有機會使用某些機制(比如 LD_PRELOAD)繞過訪問控制,造成安全漏洞。

     PidFile
             指定在哪個文件中存放SSH守護進程的進程號,默認為 /var/run/sshd.pid 文件。

     Port
             指定 sshd(8) 守護進程監聽的端口號,默認為 22 。可以使用多條指令監聽多個端口。
             默認將在本機的所有網絡接口上監聽,但是可以通過 ListenAddress 指定只在某個特定的接口上監聽。

     PrintLastLog
             指定 sshd(8) 是否在每一次交互式登錄時打印最后一位用戶的登錄時間。默認值是"yes"。

     PrintMotd
             指定 sshd(8) 是否在每一次交互式登錄時打印 /etc/motd 文件的內容。默認值是"yes"。

     Protocol
             指定 sshd(8) 支持的SSH協議的版本號。
             '1'和'2'表示僅僅支持SSH-1和SSH-2協議。"2,1"表示同時支持SSH-1和SSH-2協議。

     PubkeyAuthentication
             是否允許公鑰認證。僅可以用於SSH-2。默認值為"yes"。

     RhostsRSAAuthentication
             是否使用強可信主機認證(通過檢查遠程主機名和關聯的用戶名進行認證)。僅用於SSH-1。
             這是通過在RSA認證成功后再檢查 ~/.rhosts 或 /etc/hosts.equiv 進行認證的。
             出於安全考慮,建議使用默認值"no"。

     RSAAuthentication
             是否允許使用純 RSA 公鑰認證。僅用於SSH-1。默認值是"yes"。

     ServerKeyBits
             指定臨時服務器密鑰的長度。僅用於SSH-1。默認值是 768(位)。最小值是 512 。

     StrictModes
             指定是否要求 sshd(8) 在接受連接請求前對用戶主目錄和相關的配置文件進行宿主和權限檢查。
             強烈建議使用默認值"yes"來預防可能出現的低級錯誤。

     Subsystem
             配置一個外部子系統(例如,一個文件傳輸守護進程)。僅用於SSH-2協議。
             值是一個子系統的名字和對應的命令行(含選項和參數)。比如"sft /bin/sftp-server"。

     SyslogFacility
             指定 sshd(8) 將日志消息通過哪個日志子系統(facility)發送。有效值是:
             DAEMON, USER, AUTH(默認), LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7

     TCPKeepAlive
             指定系統是否向客戶端發送 TCP keepalive 消息。默認值是"yes"。
             這種消息可以檢測到死連接、連接不當關閉、客戶端崩潰等異常。
             可以設為"no"關閉這個特性。

     UseDNS
             指定 sshd(8) 是否應該對遠程主機名進行反向解析,以檢查此主機名是否與其IP地址真實對應。默認值為"yes"。

     UseLogin
             是否在交互式會話的登錄過程中使用 login(1) 。默認值是"no"。
             如果開啟此指令,那么 X11Forwarding 將會被禁止,因為 login(1) 不知道如何處理 xauth(1) cookies 。
             需要注意的是,login(1) 是禁止用於遠程執行命令的。
             如果指定了 UsePrivilegeSeparation ,那么它將在認證完成后被禁用。

     UsePrivilegeSeparation
             是否讓 sshd(8) 通過創建非特權子進程處理接入請求的方法來進行權限分離。默認值是"yes"。
             認證成功后,將以該認證用戶的身份創建另一個子進程。
             這樣做的目的是為了防止通過有缺陷的子進程提升權限,從而使系統更加安全。

     X11DisplayOffset
             指定 sshd(8) X11 轉發的第一個可用的顯示區(display)數字。默認值是 10 。
             這個可以用於防止 sshd 占用了真實的 X11 服務器顯示區,從而發生混淆。

     X11Forwarding
             是否允許進行 X11 轉發。默認值是"no",設為"yes"表示允許。
             如果允許X11轉發並且sshd(8)代理的顯示區被配置為在含有通配符的地址(X11UseLocalhost)上監聽。
             那么將可能有額外的信息被泄漏。由於使用X11轉發的可能帶來的風險,此指令默認值為"no"。
             需要注意的是,禁止X11轉發並不能禁止用戶轉發X11通信,因為用戶可以安裝他們自己的轉發器。
             如果啟用了 UseLogin ,那么X11轉發將被自動禁止。

     X11UseLocalhost
             sshd(8) 是否應當將X11轉發服務器綁定到本地loopback地址。默認值是"yes"。
             sshd 默認將轉發服務器綁定到本地loopback地址並將 DISPLAY 環境變量的主機名部分設為"localhost"。
             這可以防止遠程主機連接到 proxy display 。不過某些老舊的X11客戶端不能在此配置下正常工作。
             為了兼容這些老舊的X11客戶端,你可以設為"no"。

     XAuthLocation
             指定 xauth(1) 程序的絕對路徑。默認值是 /usr/X11R6/bin/xauth

時間格式sshd(8) 命令行參數和配置文件中使用的時間值可以通過下面的格式指定:time[qualifier] 。
     其中的 time 是一個正整數,而 qualifier 可以是下列單位之一:
           <>    秒
           s | Sm | M   分鍾
           h | H   小時
           d | Dw | W   星期

     可以通過指定多個數值來累加時間,比如:
           1h30m   1 小時 30 分鍾 (90 分鍾)

文件
     /etc/ssh/sshd_config
             sshd(8) 的主配置文件。這個文件的宿主應當是root,權限最大可以是"644"。

參見
     sshd(8)

作者
     OpenSSH is a derivative of the original and free ssh 1.2.12 release by
     Tatu Ylonen.  Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo
     de Raadt and Dug Song removed many bugs, re-added newer features and cre-
     ated OpenSSH.  Markus Friedl contributed the support for SSH protocol
     versions 1.5 and 2.0.  Niels Provos and Markus Friedl contributed support
     for privilege separation.

OpenBSD 4.2                     January 1, 2008                              9

Vbird網絡篇里的說明:

# 1. 關於 SSH Server 的整體設定,包含使用的 port 啦,以及使用的密碼演算方式
# 先留意一下,在預設的文件內,只要是被批注的設定值(#),即為『默認值!』
Port 22
# SSH 預設使用 22 這個 port,也可以使用多個 port,即重復使用 port 這個設定項目! # 例如想要開放 sshd 在 22 與 443 ,則多加一行內容為:
# Port 443
# 這樣就好了!不過,不建議修改 port number

 

rotocol 1,2
# 選擇的 SSH 協議版本,可以是 1 也可以是 2 ,
# 如果要同時支持兩者,就必須要使用 2,1 這個分隔了(Protocol 1,2)! # 目前我們會建議您,直接使用 Protocol 2 即可!

 

#ListenAddress 0.0.0.0
# 監聽的主機適配卡!舉個例子來說,如果您有兩個 IP,

# 分別是 192.168.0.100 及 192.168.2.20 ,那么只想要

# 開放 192.168.0.100 時,就可以寫如同下面的樣式:

ListenAddress 192.168.0.100
# 只監聽來自 192.168.0.100 這個 IP 的 SSH 聯機。
# 如果不使用設定的話,則預設所有接口均接受 SSH

 

#PidFile /var/run/sshd.pid
# 可以放置 SSHD 這個 PID 的文件!左列為默認值

 

LoginGraceTime 2m
# 當使用者連上 SSH server 之后,會出現輸入密碼的畫面,在該畫面中,
# 在多久時間內沒有成功連上 SSH server ,就斷線!若無單位則預設時間為秒!

 

Compression yes
# 是否可以使用壓縮指令?當然可以

 

# 2. 說明主機的 Private Key 放置的檔案,預設使用下面的檔案即可!

HostKey /etc/ssh/ssh_host_key              # SSH version 1 使用的私鑰
HostKey /etc/ssh/ssh_host_rsa_key          # SSH version 2 使用的 RSA 私鑰
HostKey /etc/ssh/ssh_host_dsa_key           # SSH version 2 使用的 DSA 私鑰
# 還記得我們在主機的 SSH 聯機流程里面談到的,這里就是 Host Key

 

# 2.1 關於 version 1 的一些設定!
KeyRegenerationInterval 1h
# 由前面聯機的說明可以知道, version 1 會使用 server 的 Public Key ,

# 那么如果這個 Public Key 被偷的話,豈不完蛋?所以需要每隔一段時間
# 來重新建立一次!這里的時間為秒!不過我們通常都僅使用 version 2 ,
# 所以這個設定可以被忽略喔!

 

ServerKeyBits 768
# 沒錯!這個就是 Server key 的長度!用默認值即可。

 

# 3. 關於登錄文件的訊息數據放置與 daemon 的名稱!
SyslogFacility AUTHPRIV
# 當有人使用 SSH 登入系統的時候,SSH 會記錄信息,這個信息要記錄在什么 daemon name

# 底下?預設是以 AUTH 來設定的,即是 /var/log/secure 里面!
# 其它可用的 daemon name 為:DAEMON,USER,AUTH,LOCAL0,LOCAL1,LOCAL2,LOCAL3,LOCAL4,LOCAL5,

 

LogLevel INFO
# 登錄記錄的等級!注意登機信息可參照vbird基礎篇詳解。

 

# 4. 安全設定項目!極重要!
# 4.1 登入設定部分
PermitRootLogin no
# 是否允許 root 登入!預設是允許的,但是建議設定成 no!

UserLogin no
# 在 SSH 底下本來就不接受 login 這個程序的登入!

StrictModes yes
# 當使用者的 host key 改變之后,Server 就不接受聯機,可以抵擋部分的木馬程序!

RSAAuthentication yes

# 是否使用純的 RSA 認證!?僅針對 version 1 !

PubkeyAuthentication yes

# 是否允許 Public Key ?當然允許啦!僅針對 version 2

AuthorizedKeysFile .ssh/authorized_keys
# 上面這個在設定若要使用不需要密碼登入的賬號時,那么那個賬號的存放密碼所在文件名!

# 這個設定值很重要喔!文件名記一下!

# 4.2 認證部分
RhostsAuthentication no
# 本機系統不使用 .rhosts,因為僅使用 .rhosts 太不安全了,所以這里一定要設定為 no

IgnoreRhosts yes
# 是否取消使用 ~/.ssh/.rhosts 來做為認證!當然是!

RhostsRSAAuthentication no
# 這個選項是專門給 version 1 用的,使用 rhosts 文件在 /etc/hosts.equiv

# 配合 RSA 演算方式來進行認證!不要使用啊!

HostbasedAuthentication no
# 這個項目與上面的項目類似,不過是給 version 2 使用的!

IgnoreUserKnownHosts no
# 是否忽略家目錄內的 ~/.ssh/known_hosts 這個文件所記錄的主機內容?

# 當然不要忽略,所以這里就是 no 啦!

PasswordAuthentication yes
# 密碼驗證當然是需要的!所以這里寫 yes 啰!

PermitEmptyPasswords no
# 若上面那一項如果設定為 yes 的話,這一項就最好設定為 no

# 這個項目在是否允許以空的密碼登入!當然不許!

ChallengeResponseAuthentication no
# 允許任何的密碼認證!所以,任何 login.conf 規定的認證方式,均可適用!
# 但目前我們比較喜歡使用 PAM 模塊幫忙管理認證,因此這個選項可以設定為 no 喔! UsePAM yes
# 利用 PAM 管理使用者認證有很多好處,可以記錄與管理。
# 所以這里我們建議您使用 UsePAM 且 ChallengeResponseAuthentication 設定為 no

# 4.3 與 Kerberos 有關的參數設定!因為我們沒有 Kerberos 主機,所以底下不用設定!

#KerberosAuthentication no
#KerberosOrLocalPasswd yes
#KerberosTicketCleanup yes

#KerberosTgtPassing no# 4.4 底下是有關在 X-Window 底下使用的相關設定!

X11Forwarding yes
#X11DisplayOffset 10
#X11UseLocalhost yes

# 4.5 登入后的項目:
PrintMotd no
# 登入后是否顯示出一些信息呢?例如上次登入的時間、地點等等,預設是 yes
# 亦即是打印出 /etc/motd 這個檔案的內容。但是,如果為了安全,可以考慮改為 no !

PrintLastLog yes
# 顯示上次登入的信息!可以啊!預設也是 yes !

KeepAlive yes
# 一般而言,如果設定這項目的話,那么 SSH Server 會傳送 KeepAlive 的訊息給
# Client 端,以確保兩者的聯機正常!在這個情況下,任何一端死掉后,SSH 可以立刻知道!而不會有僵屍程序的發生!

UsePrivilegeSeparation yes
# 使用者的權限設定項目!就設定為 yes 吧!

MaxStartups 10
# 同時允許幾個尚未登入的聯機畫面?當我們連上 SSH ,但是尚未輸入密碼時,
# 這個時候就是我們所謂的聯機畫面啦!在這個聯機畫面中,為了保護主機,
# 所以需要設定最大值,預設最多十個聯機畫面,而已經建立聯機的不計算在這十個當中

# 4.6 關於使用者抵擋的設定項目:
DenyUsers *
# 設定受抵擋的使用者名稱,如果是全部的使用者,那就是全部擋吧!

# 若是部分使用者,可以將該賬號填入!例如下列!
DenyUsers test

DenyGroups test
# 與 DenyUsers 相同!僅抵擋幾個群組而已!

# 5. 關於 SFTP 服務的設定項目!

Subsystem sftp /usr/lib/ssh/sftp-server

 

聲明: 本文由( 恆鐳, 張 )原創編譯,轉載請保留鏈接: 關於ssh 設置的相關總結(ssh最大連接數、ssh連接時長、安全性配置等)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM