1:如何開啟telnet
ee /etc/inetd.conf
把
#telnet stream tcp nowait root /usr/libexec/telnetd telnetd
#telnet stream tcp6 nowait root /usr/libexec/telnetd telnetd
前面的#去掉
kill -HUP `cat /var/run/inetd.pid`
把inetd重啟一下,就可以了。
如果你連inetd都沒有啟動,則需要
ee /etc/rc.conf
inetd_enable="YES"
2:允許root用戶telnet
telnet 不是很安全,默認的情況之下不允許 root 以 telnet 進入主機。
若要允許root用戶登入,可用下列方法:
ee /etc/pam.d/login
#auth required pam_securetty.so
將這一行加上注釋!
這樣, root 就可以直接進入主機了。
不過,建議不要這樣做,如果非要telnet的話,也建議用wheel組用戶telnet之後su到root。
3:telnet的替代方法
http://www.freebsd.org.cn/snap/doc/zh_CN.GB2312/books/handbook/openssh.html
建議用ssh,而且ssh也可以限制哪些用戶能夠登錄, 以及從何處登錄
采用 AllowUsers 選項能夠方便地達到這一目的。 例如, 想要只允許 root 用戶從 192.168.1.32 登錄, 就可以在 /etc/ssh/sshd_config 文件中加入下述設置:
AllowUsers [email protected]
要允許用戶 admin 從任何地方登錄, 則只需列出用戶名:
AllowUsers admin
可以在同一行指定多個用戶, 例如:
AllowUsers [email protected] admin
注意: 列出需要登錄機器的用戶很重要; 否則他們將被鎖在外面。
在完成對 /etc/ssh/sshd_config 的修改之後您必須告訴 sshd( 重新加載其配置文件, 方法是執行:
# /etc/rc.d/sshd reload
4:阻止登錄的另外一個方法/etc/login.access
最後一個我想說的限制是阻止從其他地方登錄,這是通過編輯 /etc/login.access 實現的。
你可能希望禁止一切遠程登錄(這意味著你必須物理地坐在機器前面),刪除下面這一行前面的#號:
#-:wheel:ALL EXCEPT LOCAL .win.tue.nl
把 .win.tue.nl 去掉,於是它看起來將像這樣:
-:wheel:ALL EXCEPT LOCAL
如果你需要從遠程登錄,那麼把.win.tue.nl 替換為相應的IP或域名。如果有多個地址,用空格分開。
如果只有一兩個用戶的話,那麼可以拒絕其他人登錄:
-:ALL EXCEPT user1 user2:ttyv0 ttyv1 ttyv2 ttyv3 ttyv4
用具體的用戶名替換掉 user1 user2 。如果需要的話,增加相應的tty。
另外,也可以把用戶組方在這裡。首先,編輯 /etc/group 並增加下面的行:
mygroup:*:100:genisis,dlavigne6,biko
當增加組時,需要保證GID的唯一性。
隨後,修改 /etc/login.access :
-:ALL EXCEPT mygroup:ttyv0 ttyv1 ttyv2 ttyv3 ttyv4 ttyv5
測試它非常重要,一定要留一個終端。測試每一個終端上的登錄,確認其效果。
5:補充
開啟了telnet之後如果在/etc/login.access裡面限制了登錄,那麼該用戶照樣是不能登錄的。
/etc/login.access
在裡面加了-:abc:ALL以後,abc用戶無法telnet了。