裝上 ubuntu on windows 後,默認要先打開 cmd, 再運行 bash 進入 ubuntu 的 shell。
可是這個shell很難看,配色很差就算了,還存在各類複製粘貼麻煩。html
默認沒進入 home 目錄、各類報警聲等問題。因此嘗試用 xshell 登錄 ubuntu
這裏主要講幾個關鍵步驟linux
1. 卸載 ssh server
sudo apt-get remove openssh-server
2. 安裝 ssh server
sudo apt-get install openssh-server
3. 修改 ssh server 配置
sudo vim /etc/ssh/sshd_config算法
---------------------------------------------------------------------------------------------------------------------- shell
須要修改如下幾項: 直接複製下面四行 #表示註釋ubuntu
Port 2222 #設置ssh的端口號, 因爲22在windows中有別的用處, 儘可能不修改系統的端口號
PermitRootLogin yes # 能夠root遠程登陸
PasswordAuthentication yes # 密碼驗證登陸
AllowUsers sky # 遠程登陸時的用戶名 sky是用戶名 可使用 *(通配符) 容許全部用戶
---------------------------------------------------------------------------------------------------------------------- vim
4. 啓動 ssh server
sudo service ssh --full-restart
如今就能夠用 xshell 登錄 ubuntu on windows 了,IP 是 127.0.0.1, 可是要注意,cmd 的窗口還不能關掉。關掉後 sshd 服務也會關掉,鏈接就斷開了。這個問題目前還沒找到解決辦法。
windows
以redhat6.3爲例緩存
ssh配置文件在:bash
//ssh/sshd_config
能夠打開查看相應配置,默認狀況下只開放了幾個選項,其他所有#屏蔽掉了。服務器
英文手冊參考:http://www.openbsd.org/cgi-bin/man.cgi?query=d_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),也就是//passwd文件中指定的組。 這裏只容許使用組的名字而不容許使用GID。相關的 allow/deny 指令按照下列順序處理: DenyUsers, AllowUsers, DenyGroups, AllowGroups AllowTcpForwarding 是否容許TCP轉發,默認值爲"yes"。 禁止TCP轉發並不能加強,除非禁止了用戶對的訪問,由於用戶能夠安裝他們本身的轉發器。 AllowUsers 這個指令後面跟着一串用空格分隔的用戶名列表(其中可使用"*"和"?"通配符)。默認容許全部用戶登陸。 若是使用了這個指令,那麼將僅容許這些用戶登陸,而拒絕其它全部用戶。 若是指定了 USER@HOST 模式的用戶,那麼 USER 和 HOST 將同時被檢查。 這裏只容許使用用戶的名字而不容許使用UID。相關的 allow/deny 指令按照下列順序處理: DenyUsers, AllowUsers, DenyGroups, AllowGroups AuthorizedKeysFile 存放該用戶能夠用來登陸的 RSA/DSA 公鑰。 該指令中可使用下列根據鏈接時的實際狀況進行展開的符號: %% 表示'%'、%h 表示用戶的主目錄、%u 表示該用戶的用戶名。 通過擴展以後的值必需要麼是絕對路徑,要麼是相對於用戶主目錄的相對路徑。 默認值是"./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),也就是//passwd文件中指定的組。 這裏只容許使用組的名字而不容許使用GID。相關的 allow/deny 指令按照下列順序處理: DenyUsers, AllowUsers, DenyGroups, AllowGroups DenyUsers 這個指令後面跟着一串用空格分隔的用戶名列表(其中可使用"*"和"?"通配符)。默認容許全部用戶登陸。 若是使用了這個指令,那麼這些用戶將被拒絕登陸。 若是指定了 USER@HOST 模式的用戶,那麼 USER 和 HOST 將同時被檢查。 這裏只容許使用用戶的名字而不容許使用UID。相關的 allow/deny 指令按照下列順序處理: DenyUsers, AllowUsers, DenyGroups, AllowGroups ForceCommand 強制執行這裏指定的命令而忽略客戶端提供的任何命令。這個命令將使用用戶的登陸執行(shell -c)。 這能夠應用於 shell 、命令、子系統的完成,一般用於 Match 塊中。 這個命令最初是在客戶端經過 SSH_ORIGINAL_COMMAND 來支持的。 GatewayPorts 是否容許遠程主機鏈接本地的轉發端口。默認值是"no"。 sshd(8) 默認將遠程端口轉發綁定到loopback地址。這樣將阻止其它遠程主機鏈接到轉發端口。 GatewayPorts 指令可讓 d 將遠程端口轉發綁定到非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 是否在 RhostsRSAAuthentication 或 HostbasedAuthentication 過程當中忽略 .rhosts 和 .shosts 文件。 不過 /etc/hosts.equiv 和 /etc/shosts.equiv 仍將被使用。推薦設爲默認值"yes"。 IgnoreUserKnownHosts 是否在 RhostsRSAAuthentication 或 HostbasedAuthentication 過程當中忽略用戶的 ~/./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 密碼失敗,那麼該密碼還將要經過其它的認證機制(好比 //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@open.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 或 //hosts.equiv 進行認證的。 出於考慮,建議使用默認值"no"。 RSAAuthentication 是否容許使用純 RSA 公鑰。僅用於SSH-1。默認值是"yes"。 ServerKeyBits 指定臨時服務器密鑰的長度。僅用於SSH-1。默認值是 768(位)。最小值是 512 。 StrictModes 指定是否要求 sshd(8) 在接受鏈接請求前對用戶主目錄和相關的配置文件進行宿主和權限檢查。 強烈建議使用默認值"yes"來預防可能出現的低級錯誤。 Subsystem 配置一個外部子系統(例如,一個文件傳輸守護進程)。僅用於SSH-2協議。 值是一個子系統的名字和對應的命令行(含選項和參數)。好比"sft /bin/sftp-"。 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 。 這個能夠用於防止 d 佔用了真實的 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 | S 秒 m | M 分鐘 h | H 小時 d | D 天 w | W 星期 能夠經過指定多個數值來累加時間,好比: 1h30m 1 小時 30 分鐘 (90 分鐘) 文件 ///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 這個設定項目! # 例如想要開放 d 在 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/d.pid
# 能夠放置 SSHD 這個 PID 的文件!左列爲默認值
LoginGraceTime 2m
# 當使用者連上 SSH server 以後,會出現輸入密碼的畫面,在該畫面中,
# 在多久時間內沒有成功連上 SSH ,就斷線!若無單位則預設時間爲秒!
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 ///ssh_host_dsa_key # SSH version 2 使用的 DSA 私鑰
# 還記得咱們在的 SSH 聯機流程裏面談到的,這裏就是 Host Key
# 2.1 關於 version 1 的一些設定!
KeyRegenerationInterval 1h
# 由前面聯機的說明能夠知道, version 1 會使用 的 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 ./authorized_keys
# 上面這個在設定若要使用不須要密碼登入的帳號時,那麼那個帳號的存放密碼所在文件名!
# 這個設定值很重要喔!文件名記一下!
# 4.2 認證部分
RhostsAuthentication no
# 本機系統不使用 .rhosts,由於僅使用 .rhosts 太不了,因此這裏必定要設定爲 no
IgnoreRhosts yes
# 是否取消使用 ~/.ssh/.rhosts 來作爲認證!固然是!
RhostsRSAAuthentication no
# 這個選項是專門給 version 1 用的,使用 rhosts 文件在 //hosts.equiv
# 配合 RSA 演算方式來進行!不要使用啊!
HostbasedAuthentication no
# 這個項目與上面的項目相似,不過是給 version 2 使用的!
IgnoreUserKnownHosts no
# 是否忽略家目錄內的 ~/./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
# 亦便是打印出 //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-