Linux

如何在“top”命令並按“c”鍵後拒絕其他人看到我的執行詳細資訊

  • July 16, 2018

在我的學校,我們共享一台伺服器來執行程序。

使用top我們可以看到伺服器的情況,如果按 鍵c,我們甚至可以看到命令的詳細資訊,不知何故包括我的實驗室數據資訊。

那麼,即使在使用後,我如何才能拒絕其他人看到我的跑步詳細資訊c呢?它可以只顯示程序的名稱,java 或 awk,但隱藏細節。

隱藏您的使用者資訊

因此,top它的預設行為是顯示框上的所有程序,您不能真正拒絕其他使用者查看這些詳細資訊。此 U&L Q&A 中討論了執行此操作的方法,標題為:

第三個連結顯示了一個有趣的方法,它是一個核心更新檔,它添加了一個在 Linux 核心 3.3+ 中呼叫hidepid的選項:mount

$ mount /proc -o remount,hidepid=2

hidepid=0(預設)表示舊行為 - 任何人都可以讀取所有世界可讀的 /proc/PID/* 文件。

hidepid=1表示使用者不能訪問任何 /proc// 目錄,只能訪問他們自己的目錄。cmdline、sched*、status 等敏感文件現在受到其他使用者的保護。由於在 proc_pid_permission() 中完成的權限檢查和文件的權限保持不變,因此期望特定文件模式的程序不會混淆。

hidepid=2意味著 hidepid=1 加上所有 /proc/PID/ 將對其他使用者不可見。這並不意味著它隱藏了一個程序是否存在(它可以通過其他方式獲知,例如通過kill -0 $PID),但它隱藏了程序的euid和egid。它使入侵者收集有關正在執行的程序的資訊、某些守護程序是否以提升的權限執行、另一個使用者是否執行某些敏感程序、其他使用者是否執行任何程序等的任務複雜化。

gid=XXX定義了一個能夠收集所有程序資訊的組(如在 hidepid=0 模式下)。應該使用該組,而不是將非 root 使用者放在 sudoers 文件或其他東西中。但是,不應將不應監視整個系統中的任務的不受信任的使用者(如守護程序等)添加到組中。

**注意:**這不會讓您有任何控制可見性的能力,只會限制使用者在/proc.

隱藏其他使用者的資訊

如果您想在使用時隱藏其他使用者,top可以這樣做:

$ top -u '!root'
...
top - 00:04:16 up 2 days,  1:51,  1 user,  load average: 0.00, 0.01, 0.05
Tasks:  80 total,   1 running,  79 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1016156 total,   204212 free,    80104 used,   731840 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   755224 avail Mem

 PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
 597 dbus      20   0   26668   1924   1364 S  0.0  0.2   0:08.55 dbus-daemon
 633 polkitd   20   0  536264  10216   4796 S  0.0  1.0   0:00.35 polkitd
 634 libstor+  20   0    8576    816    668 S  0.0  0.1   0:00.49 lsmd
1305 postfix   20   0   91956   4292   3232 S  0.0  0.4   0:00.09 qmgr
4199 vagrant   20   0  152392   3020   1424 S  0.0  0.3   0:01.53 sshd
4200 vagrant   20   0  116196   2928   1796 S  0.0  0.3   0:00.05 bash
5622 postfix   20   0   91776   4044   3028 S  0.0  0.4   0:00.00 pickup
5672 user1     20   0  116096   2864   1808 S  0.0  0.3   0:00.04 bash
5758 user1     20   0  157624   2136   1544 R  0.0  0.2   0:00.00 top

該符號'!root'表示顯示 root 使用者。

引用自:https://unix.stackexchange.com/questions/454807