我們在登入 tty1~tty6 這 6 個本地終端時,會有幾行的歡迎介面。這些歡迎資訊是儲存在哪裡的?可以修改嗎?當然可以修改,這些歡迎資訊儲存在 /etc/issue 檔案中,我們檢視一下這個檔案:
[[email protected] ~]# cat /etc/issue
CentOS release 6.3 (Final)
Kernel r on an m
系統在每次登入時,會依賴這個檔案的設定顯示歡迎介面。在 /etc/issue 檔案中允許使用跳脫符呼叫相應資訊,其支援的跳脫符可以通過 man agetty 命令查詢,如表 1 所示。
表 1 /etc/issue支援的跳脫符
跳脫符 |
作 用 |
d |
顯示當前系統日期 |
s |
顯示作業系統名稱 |
1 |
顯示登入的終端號,這個跳脫符比較常用 |
m |
顯示硬體體系結構,如i386、i686等 |
n |
顯示主機名 |
o |
顯示域名 |
r |
顯示核心版本 |
t |
顯示當前系統時間 |
u |
顯示當前登入使用者的序列號 |
在本地終端登入時,因為有 tty1~tty6 這 6 個本地終端(可以通過 Alt+F1 ~ F6 快捷鍵切換),有時我們會忘記在哪個終端中,所以筆者更習慣加入"l"選項,例如:
[[email protected] ~]# cat /etc/issue
CentOS release 6.3 (Final)
Kernel r on an m l
這樣我們在本地登陸時,就可以看到到底是在哪個終端中。
/etc/issue.net
設定 /etc/issue 檔案會在本地終端登入時顯示歡迎資訊,如果遠端登入(如 ssh 遠端登入,或 Telnet 遠端登入)需要顯示歡迎資訊,則需要設定 /etc/issue.net 檔案。使用這個檔案時有兩點需要注意:
-
在 /etc/issue 檔案中支援的跳脫符在 /etc/issue.net 檔案中不能使用。
-
ssh 遠端登入是否顯示 /etc/issue.net 檔案中的歡迎資訊,是由 ssh 的組態檔決定的。
如果我們需要 ssh 遠端登入可以査看 /etc/issue.net 檔案中的歡迎資訊,那麼首先需要修改 ssh 的組態檔 /etc/ssh/sshd_config,加入如下內容:
[[email protected] ~]# cat /etc/ssh/sshd_config ...省略部分輸出...
# no default banner path
#Banner none
Banner /etc/issue.net
…省略部分輸出…
這樣,在 ssh 遠端登入時,也可以顯示歡迎資訊,只是不能再識別"d"和"l"等資訊了。
/etc/motd
/etc/motd 檔案中也是有歡迎資訊的,這個檔案和 /etc/issue 及 /etc/issue.net 檔案的區別是:/etc/issue 及 /etc/issue.net 檔案是在使用者登入之前顯示歡迎資訊的;而 /etc/motd 檔案是在使用者輸入使用者名稱和密碼,正確登入之後顯示歡迎資訊的。/etc/motd 檔案中的歡迎資訊,不論是本地登入,還是遠端登入,都可以顯示。
大家需要注意,在國外曾經有駭客入侵伺服器,因為伺服器上顯示的歡迎資訊是"welcome..."而免於處罰的案例。所以,我們雖然一直是按照"歡迎資訊"進行講解的,但是這裡其實應該寫入一些"警告資訊", 比如禁止非法使用者登入之類的資訊。