看板 Linux 關於我們 聯絡資訊
各位好,我是一個 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://www.ptt.cc/bbs/Linux/M.1603244443.A.837.html
chang0206: 1/3 一般帳號不會給比較高的權限,所以用sudo來限制 10/21 09:48
chang0206: 也不需要像windows 登出登入來取得權限 10/21 09:49
chang0206: 2 因為你用sudo , 你改用 su - user_B 就是要B的密碼 10/21 09:49
chang0206: 大部分的帳號也都不會給到可以用sudo 10/21 09:50
bitlife: root權限在一般非安全強化的linux系統就等於是所有權限 10/21 10:05
bitlife: root可以setuid成任何使用者,連密碼都不需要.你以為輸入 10/21 10:06
bitlife: bob自己密碼才變alice,事實上那個密碼是成為root的過程, 10/21 10:07
bitlife: 從root變alice不用密碼 10/21 10:07
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
bitlife: 看log和門禁等資料,能sudo的沒幾個,誰在該時間有先登入或 10/21 10:23
bitlife: 接近電腦,就可以知道是誰.當然你說sudo幹壞事順便清log, 10/21 10:24
bitlife: 所以真正重要系統以前會有console log printer,現在大概 10/21 10:25
bitlife: 就禁止遠端登入者sudo 10/21 10:25
bitlife: 一般環境就限制sudo能做的命令就夠了,真正需要root權限的 10/21 10:28
bitlife: 狀況通常可以列舉 10/21 10:28
chang0206: 1. root 不需要有sudo權限,啊我就root 了還 sudo個鬼 10/21 11:00
chang0206: 2.如果bob帳號就沒有特殊權限,要做哪些非法的事? 10/21 11:02
bitlife: root和admin在一般正常系統是不能直接登入,要先經過su,而 10/21 11:02
bitlife: su和sudo會有log 10/21 11:02
chang0206: 如果還是會怕,可以開啟紀錄所有指令的功能,對照登入 10/21 11:02
chang0206: 時間 10/21 11:03
bitlife: 故意偽裝bob也是有可能,就是把一些不該有的東西以bob名義 10/21 11:05
bitlife: 存放在bob目錄下之類的,不過這類動作root可以chown做到, 10/21 11:05
bitlife: 但先su bob比較不會漏做而出包,我猜大概這類意思 10/21 11:06
kdjf: root權限是給受信任的管理者用的,你的問題是如果有權限的人 10/21 12:38
kdjf: 不能被信任? sudo可以限制哪些人可以sudo什麼內容,只需要看 10/21 12:38
kdjf: log的人就不用給sudo su 的權限 10/21 12:38
bitlife: 當利益夠大,有權限的人確實也不一定能被信任啊 XD 制衡才 10/21 12:42
bitlife: 是比較好方法.進機房console管理電腦,操作什麼都有錄影, 10/21 12:42
bitlife: 門禁系統和錄影分由2人(或小姐)負責 10/21 12:43
bitlife: 小組 (更正錯字,差個字差很多XD) 10/21 12:43
HMKRL: 有root當然想用誰的帳號就用誰的 想砍掉帳號都可以了 10/21 13:06
mgdesigner: 電影駭客任務裏,管理者可以附身到任意的人身上就是su 10/21 15:54
ago1414: 要先有最大管理者權限(root)設定sudo ,sduo 有log檔 10/21 16:46
ago1414: windows 的 administrator 不是也可以進到使用者家目錄 10/21 16:47
ago1414: sudo 可以避免密碼外洩 , su - user就需切換帳號的密碼 10/21 16:49
ago1414: sudo allows a permitted user to execute a command as 10/21 16:52
ago1414: specified by the security policy. 10/21 16:52