iT邦幫忙

0

fedora 22如何禁止讓root直接登入telnet

這版Linux安裝telnet package後不用做任何設定,root帳號可以直接透過telnet登入系統,但小弟希望可以設定成telnet不能讓root帳號直接登入,除非先用一般使用者帳號登入後,再用su切換。

google了一些作法幾乎都是"如何讓root可以登入telnet",小弟嘗試反著做,例如/etc底下原本沒有securetty檔案,刻意手動建立這個檔案,並加入vc/1... 或 tty1...等,再手動於/etc/pam.d/login內加入auth required pam_securetty.so。

重開機後,root依舊可以直接登入telnet。

麻煩前輩們提供建議或設定方式。

看更多先前的討論...收起先前的討論...
weiclin iT邦高手 7 級 ‧ 2016-11-15 14:37:33 檢舉
不要使用 telnet
hon2006 iT邦大師 1 級 ‧ 2016-11-15 15:08:11 檢舉
http://daddy-linux.blogspot.tw/2012/02/how-to-disable-telnet-access-on-server.html
jessezero iT邦新手 5 級 ‧ 2016-11-15 15:21:36 檢舉
大哥,很多時候很多事情不是三言兩語可以解釋,例如為什麼不用ssh而要使用telnet這種。
root 擁有最高權限,你要如何不允許最高權限者登入服務,這各目前來說 LINUX 不太可能
除非你把 root整個 disable,但你又要可以 su,這個很兩難,兩者只能擇其一
要嘛你放棄 root ,先把 USER 權限全部設定好然後 disable root,要嘛就好好管理你的 root
不要把 root 的權限放出去,不然真的無解
LKK iT邦大師 8 級 ‧ 2016-11-15 17:10:43 檢舉
root密碼設100個字元,切換root權限改用sudo -s -H 不要用su
jessezero iT邦新手 5 級 ‧ 2016-11-15 22:01:05 檢舉
可能是小弟問題敘述的不夠詳細,先跟各位說聲抱歉了。

SSH預設是不能直接用root登入OS的,除非修改/etc/ssh/sshd_config,把PermitRootLogin改為Yes。

記得之前telnet也是不能直接用root登入OS,除非改/etc/securetty和/etc/pam.d/login。

而目前使用的Linux,在預設的情況下telnet卻可以直接用root登入OS,要改那些設定,telnet才不能直接用root登入OS呢?

1 個回答

1
weiclin
iT邦高手 7 級 ‧ 2016-11-16 08:29:17
最佳解答

試試看 auth required pam_securetty.so這一行, 加在 /etc/pam.d/remote 裡面, 不要放到 /etc/pam.d/login裡。

jessezero iT邦新手 5 級 ‧ 2016-11-18 17:04:47 檢舉

感謝您提供的做法!

後來找到解法如下:
在/etc底下產生一個空的securetty檔案
echo > /etc/securetty
再依照 weiclin大 提供的做法,在 /etc/pam.d/remote 內加入 auth required pam_securetty.so 即可。

我要發表回答

立即登入回答