国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Ftp服務器 > 正文

要 ftp 不要 telnet 如何設?

2024-09-09 20:58:33
字體:
來源:轉載
供稿:網友
作者: woju (躲起來了) 看板: BSD
標題: Re: [help]請 教 要 ftp 不要 telnet 如何設?
時間: Sun Feb 15 16:21:25 1998

※ 引述《demonhuang.bbs@csie.nctu.edu.tw (小黃)》之銘言:
: ==> 在 haha.bbs@bsd.hs.ntnu.edu.tw (haha) 的文章中提到:
: : 我想讓使用者只用ftp 進來主機
: : 但不讓這些使用者用telnet 進來主機
: :         (but有些使用者還是可以讓它進來)
: : 對於這些特別的使用者如何設定呢???
:   把那些使用者的 shell 改掉 .like /noexistence ..
剛好最近也在處理類似的 ftp/login 機制,除了傳統做法 -- 改 login shell 外,
還可配合其它機制的輔助讓 login access control 更有彈性。

/nonexistent
/sbin/nologin
是典型的 no login shells,若要讓 ftp account 能正常使用得在 /etc/shells
有對應的 entries。

ftp://freebsd.ntu.edu.tw/freebsd/woju/source/telnetd.tgz
有更新,修改了 safe_exit() 讓 deny try 的「代價」少一點:

safe_exit(int n)
{
   struct rtPRio rp;

   rp.prio = RTP_PRIO_MAX;
   rp.type = RTP_PRIO_REALTIME;
   rtprio(RTP_SET, 0, &rp);
   rp.type = RTP_PRIO_NORMAL;
   rtprio(RTP_SET, 0, &rp);
   rp.type = RTP_PRIO_IDLE;
   rtprio(RTP_SET, 0, &rp);
   setgid(65534);
   initgroups("nobody", 65534);
   chroot("/usr/local/srclocal/telnetd");
   chdir("/");
   setuid(65534);
   setpriority(PRIO_PROCESS, 0, 20);
   setpriority(PRIO_PGRP, 0, 20);
   setpriority(PRIO_USER, 0, 20);
   execl("/telnets", 0);
   sleep(60);
   exit(n);
}

setgid/chroot/setuid 將程式切換到較安全的狀態。

rtprio/setpriority 將 prio/nice 調到最大,也就是讓這個 process 吃量
少的系統(cpu)資源。

execl 將 telnetd 換成 telnets,節省記憶體(vsz/rss)的使用,telnets 非常小,
主要的任務是「拖時間 & 省資源」。

telnet://bbs.ee.ntu.edu.tw BSD 板精華區
http://bbs.ee.ntu.edu.tw/cgi-bin/bbs2html_cgi?boards/BSD/
-> 3. ◆ FreeBSD 快速入門 (由網路安裝FreeBSD)
   -> 7. ◇ [fromzero] telnetd
有相關的資料。

接下來談的和原問題有較直接的關 -- /etc/login.access
較保守的設定例如下:
+:woju:.ee.ntu.edu.tw
-:wheel:ALL EXCEPT local freebsd.ee.ntu.edu.tw
-:ALL:ALL EXCEPT LOCAL

login.access 的特性是 "first match",從第一行開始比對,如果 match 就直接
return result,所以我們應將「特例」量往前放,是「通用性的規則」該
放後頭。

login.access 的格式為
perm(+|-):users:origins
以上面的例子來說,第一行 woju 可以從 *.ee.ntu.edu.tw login,第二行 wheel
group 只能從 local 或 freebsd.ee.ntu.edu.tw login,第三行拒絕所有 remote
login。

man login.access 有更詳細的說明。

要特別說明的是 origins 會先使用 domain name,若查不到 domain name *才* 會
使用 ip,也就是我們 *不能* 使用 ip 來代表有 domain name 的主機,舉例說:
-:wheel:ALL EXCEPT local 140.112.19.123
將 *無法* 讓 wheel group 的人從 140.112.19.123 (freebsd.ee.ntu.edu.tw)
login。

此外請記得將 /etc/inetd.conf  rlogin 相關的 entries 全關掉,rlogind 不
認得 /etc/login.access。
--------------------------------------------------------------------------------吳 慶 鴻,woju@freebsd.ee.ntu.edu.tw | 臺大電機,http://bbs.ee.ntu.edu.tw


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大庆市| 修武县| 汉沽区| 昆山市| 司法| 祁连县| 梁平县| 湟中县| 甘谷县| 侯马市| 海伦市| 穆棱市| 扶余县| 容城县| 普兰店市| 宁阳县| 孟津县| 台南县| 锡林浩特市| 宿松县| 三门县| 扎鲁特旗| 两当县| 达州市| 霍邱县| 阿巴嘎旗| 淳安县| 西和县| 黄龙县| 贵港市| 科尔| 鸡西市| 无为县| 池州市| 宽甸| 阿拉善盟| 苗栗市| 青冈县| 安徽省| 神木县| 政和县|