[問題] 關於 linux user 轉換的問題

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

Links booklink

Contact Us: admin [ a t ] ucptt.com