Which of the following lines in the sshd configuration file should, if present, be changed in order to increase the security of the server? (Choose two.)



A.

Protocol 2, 1

B.

PermitEmptyPasswords no

C.

Port 22

D.

PermitRootLogin yes

E.

IgnoreRhosts yes

題解

「Protocol」可以設定SSH伺服器支援的SSH協定版本(1或2),如果有想要支援多個版本的話,就使用逗號「,」隔開。數字的排列順序並不代表偏好使用的版本順序。預設為「2, 1」。

「PermitEmptyPasswords」可以設定SSH伺服器是否允許空密碼的使用者進行登入,建議設成「no」才安全,預設值也是「no」。

「Port」可以設定SSH伺服器所監聽的TCP連接埠。預設值為「22」。

「PermitRootLogin」可以設定SSH伺服器是否要允許「root」使用者的登入。設為「yes」,表示允許;設為「no」,表示不允許;設為「without-password」,表示不允許「root」使用者使用密碼來登入;設為「forced-commands-only」,表示只允許「root」使用者使用SSH公鑰來登入,且該公鑰檔案的第一行需加上「command」項目來設定SSH登入後要執行的指令。預設值為「yes」。

「IgnoreRhosts」可以設定SSH伺服器是否忽略「~/.ssh」目錄下的「.rhosts」和「.shosts」檔案來做Rhosts授權(RhostsRSAAuthentication和HostbasedAuthentication),如果忽略的話,依然會使用「/etc/hosts.equiv」和「/etc/ssh/shosts.equiv」檔案。預設值是「yes」。Rhosts的安全性不高,建議不要使用。

選項A,為了讓SSH伺服器更安全,就不要使用SSH的版本1,所以當「Protocol 2, 1」出現在SSH的設定檔中的話,或是當「Protocol」不存在的時候,建議將「Protocol」改為「2」,以增加安全性。此為正確答案。

選項B,此為安全的設定。

選項C,此不太影響安全性。

選項D,人們通常認為密碼要比SSH公鑰還要更不安全,因此為了讓SSH伺服器更安全,當「PermitRootLogin yes」出現在SSH的設定檔中的話,或是當「PermitRootLogin」不存在的時候,建議將「PermitRootLogin」改為其它設定值。此為正確答案。

選項E,此為安全的設定。