作者gowrite (gowrite)
看板Linux
標題[問題] 關於 linux user 轉換的問題
時間Wed Oct 21 09:40:41 2020
各位好,我是一個 Linux 自學的新手,
想問一個有關於 Linux 中在 BASH 作 user 轉換的實際意義,
假設使用 centOS 系統中,
有三個 users (root , alice , bob)
其中 alice 在 wheel group 中 (意即 alice 可以使用 sudo 指令)
當 alice 登入系統,取得自己的 BASH shell 之後,
就可以使用轉換 user 指令
$ sudo su - bob
然後 alice 輸入自己密碼,就可以轉換 user 變成 bob
就可以用 bob 的角色做事情,
這邊就是我最搞不懂的部分
1. 爲什麼 Linux 系統會允許 user A 可以不需要 user B 的允許,
就讓 user A 自己轉換爲 user B 去做事情?
這樣跟帳號盜用的差別在那裡?
2. 爲什麼 Linux 系統在 user A 轉換成 user B 時,要輸入的是 user A 的密碼,
而不是 user B 的密碼?
3. Linux 系統如此設計的意義是在哪裏呢?
同樣的東西在 windows,alice 則必須要在 logout 之後,
重新以 bob 的賬號登入,並且是以 bob 的密碼登入,
我一直搞不懂 Linux 爲什麼轉換成別人的 user account 是用自己的密碼
希望有熟悉 Linux 系統意義的前輩可以幫忙解惑,
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.255.199.87 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Linux/M.1603244443.A.837.html
1F:推 chang0206: 1/3 一般帳號不會給比較高的權限,所以用sudo來限制 10/21 09:48
2F:→ chang0206: 也不需要像windows 登出登入來取得權限 10/21 09:49
3F:→ chang0206: 2 因為你用sudo , 你改用 su - user_B 就是要B的密碼 10/21 09:49
4F:→ chang0206: 大部分的帳號也都不會給到可以用sudo 10/21 09:50
5F:→ bitlife: root權限在一般非安全強化的linux系統就等於是所有權限 10/21 10:05
6F:→ bitlife: root可以setuid成任何使用者,連密碼都不需要.你以為輸入 10/21 10:06
7F:→ bitlife: bob自己密碼才變alice,事實上那個密碼是成為root的過程, 10/21 10:07
8F:→ bitlife: 從root變alice不用密碼 10/21 10:07
9F:→ bitlife: 你把指令分成兩動作sudo su以及su alice就懂我上面的意思 10/21 10:08
所以實際一般系統來說,
除了 root / admin 之外,通常不會給一般帳號有 sudoer 的權限,這樣對嗎?
那這邊想再跟前輩詢問幾個問題,
我想不通的問題部分
1. 假設整個系統除了 root 以外,還有一個 admin 帳號有在 wheel group 中,
那如果使用 admin 帳號者有不法的意圖,偷偷轉換成 bob 帳號做了非法的事情,
那 bob 該如何得知是 admin 所作,或證明 admin 所作,
意即非 bob 本人作的?
謝謝
※ 編輯: gowrite (111.255.199.87 臺灣), 10/21/2020 10:15:31
※ 編輯: gowrite (111.255.199.87 臺灣), 10/21/2020 10:18:09
10F:→ bitlife: 看log和門禁等資料,能sudo的沒幾個,誰在該時間有先登入或 10/21 10:23
11F:→ bitlife: 接近電腦,就可以知道是誰.當然你說sudo幹壞事順便清log, 10/21 10:24
12F:→ bitlife: 所以真正重要系統以前會有console log printer,現在大概 10/21 10:25
13F:→ bitlife: 就禁止遠端登入者sudo 10/21 10:25
14F:→ bitlife: 一般環境就限制sudo能做的命令就夠了,真正需要root權限的 10/21 10:28
15F:→ bitlife: 狀況通常可以列舉 10/21 10:28
16F:推 chang0206: 1. root 不需要有sudo權限,啊我就root 了還 sudo個鬼 10/21 11:00
17F:→ chang0206: 2.如果bob帳號就沒有特殊權限,要做哪些非法的事? 10/21 11:02
18F:→ bitlife: root和admin在一般正常系統是不能直接登入,要先經過su,而 10/21 11:02
19F:→ bitlife: su和sudo會有log 10/21 11:02
20F:→ chang0206: 如果還是會怕,可以開啟紀錄所有指令的功能,對照登入 10/21 11:02
21F:→ chang0206: 時間 10/21 11:03
22F:→ bitlife: 故意偽裝bob也是有可能,就是把一些不該有的東西以bob名義 10/21 11:05
23F:→ bitlife: 存放在bob目錄下之類的,不過這類動作root可以chown做到, 10/21 11:05
24F:→ bitlife: 但先su bob比較不會漏做而出包,我猜大概這類意思 10/21 11:06
25F:推 kdjf: root權限是給受信任的管理者用的,你的問題是如果有權限的人 10/21 12:38
26F:→ kdjf: 不能被信任? sudo可以限制哪些人可以sudo什麼內容,只需要看 10/21 12:38
27F:→ kdjf: log的人就不用給sudo su 的權限 10/21 12:38
28F:→ bitlife: 當利益夠大,有權限的人確實也不一定能被信任啊 XD 制衡才 10/21 12:42
29F:→ bitlife: 是比較好方法.進機房console管理電腦,操作什麼都有錄影, 10/21 12:42
30F:→ bitlife: 門禁系統和錄影分由2人(或小姐)負責 10/21 12:43
31F:→ bitlife: 小組 (更正錯字,差個字差很多XD) 10/21 12:43
32F:推 HMKRL: 有root當然想用誰的帳號就用誰的 想砍掉帳號都可以了 10/21 13:06
33F:→ mgdesigner: 電影駭客任務裏,管理者可以附身到任意的人身上就是su 10/21 15:54
34F:推 ago1414: 要先有最大管理者權限(root)設定sudo ,sduo 有log檔 10/21 16:46
35F:→ ago1414: windows 的 administrator 不是也可以進到使用者家目錄 10/21 16:47
36F:→ ago1414: sudo 可以避免密碼外洩 , su - user就需切換帳號的密碼 10/21 16:49
37F:推 ago1414: sudo allows a permitted user to execute a command as 10/21 16:52
38F:→ ago1414: specified by the security policy. 10/21 16:52