[請益]如何將service用service xxx start之後,限定非root使用者執行 [論壇 - 伺服器架設]
正在瀏覽:
1 名遊客
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() 註冊日期:
2009/12/6 10:32 所屬群組:
已註冊使用者 等級: 71
HP : 1053 / 1756
![]() |
設定服務的權限只有user 設定 權限指令 需要加 sudo <有事外出 明天早上再談> <或由 其他網友幫忙>
2013/10/27 20:47
|
||||||||||
![]() |
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員四級
![]() ![]() 註冊日期:
2010/8/12 15:54 所屬群組:
已註冊使用者 等級: 18
HP : 0 / 443
![]() |
csshih 寫到: 非root 可以管理(啟動/停止) services 這比較簡單,sudo 可以做到"僅"開放單一指令給特定使用者 讓servies不以 root 帳號啟動 這要看該 servies 了 以網路應用來講,第一個(也是最麻煩的)會遇到的問題是: 該服務 Listen port為何 系統不允許 root以外帳號開 < 1024的 port 所以大部份的網路服務啟動後,你會看到有兩個帳號在執行該服務,如: ps auxwww|grep apache root 5139 0.0 0.0 375472 14208 ? Ss 09:53 0:00 /usr/sbin/apache2 -k start www-data 5142 0.0 0.1 391468 19744 ? S 09:53 0:00 /usr/sbin/apache2 -k start www-data 5143 0.0 0.0 380924 15568 ? S 09:53 0:00 /usr/sbin/apache2 -k start 由root啟動,再依config裡的user設定,由該帳號啟動子程序來負責實際上的處理工作 這是linux的安全機制的一環,強行關掉它不會有什麼特別的好處 可以找其它方法繞過它,我自己最常用的方法是利用 iptables ex: tomcat, 預設 8080, 預設不允許CATALINA_USER=root (tomcat user) ,所以也沒辦法把 port改成80 你可以利用 iptables: /sbin/iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j DNAT --to $IP:8080 port <1024 的問題解掉後,其它的只是每個服務 case by case 解 頂多不要利用 servies $daemon start/stop 直接單行指令加參數丟背景運作也不是不行
2013/10/28 10:13
|
||||||||||
![]() |
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() 註冊日期:
2009/12/6 10:32 所屬群組:
已註冊使用者 等級: 71
HP : 1053 / 1756
![]() |
#4 #8 #10 當 Username 從 client 端電腦 使用 瀏覽器 造訪 你的 Server 的網頁時 有 登入的 網頁 以 登入 額外用 useradd 增加的 Usernames 嗎 ? 如果有 請提供 你打算如何把 這些 Usernames 及 密碼 存放在哪個檔案或資料庫
2013/10/28 10:56
|
||||||||||
![]() |
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員一級
![]() ![]() 註冊日期:
2013/10/26 20:55 所屬群組:
已註冊使用者 等級: 2
HP : 0 / 28
![]() |
acman您好
您的回答和我在網路上找的其他答案是一樣的 感謝您一出手就解答了小弟的疑惑 thanks...
2013/10/28 14:23
|
||||||||||
![]() |
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員四級
![]() ![]() 註冊日期:
2010/8/12 15:54 所屬群組:
已註冊使用者 等級: 18
HP : 0 / 443
![]() |
csshih 寫到: 客氣了!只幫到一點點小忙 具體實用方式還是得 case by case 去抓 不過你都考慮到是否需要自行編譯了 (ps一下!應該不需要重新編譯,也更不用特定帳號去重編) 這點應該只是要花點時間的問題罷了 man一下服務的主要執行檔 應該都會有參數下法 可以讓你手動執行並指定到正確的config檔 絕大部份參數正確,丟到背景去運作就可以了 只是start/stop的方式不一樣罷了
2013/10/28 14:33
|
||||||||||
![]() |
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員一級
![]() ![]() 註冊日期:
2013/10/26 20:55 所屬群組:
已註冊使用者 等級: 2
HP : 0 / 28
![]() |
acman
再請教您一個問題 當用tarball在/usr/local裝上tomcat7後 我在ps aux就只會找到一個用root執行的tomcat 雖然我已經在server.xml指定running user為user 是否這樣就可以確定每個瀏覽者都是用user瀏覽的? 因為我目前看不到任何QC組瀏覽的執行續 或者是我下的指令錯了,QC組瀏覽的執行續不是從這邊檢視? 希望acman大大能再幫忙 感謝您了
2013/10/28 14:43
|
||||||||||
![]() |
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
會員四級
![]() ![]() 註冊日期:
2010/8/12 15:54 所屬群組:
已註冊使用者 等級: 18
HP : 0 / 443
![]() |
抱歉!我第一篇的回覆中關於 tomcat 的部份有誤
tomcat 可以以 root帳號啟動並監聽 port80 因為我的環境都是不可以跑在root帳號底下,所以我自己誤解了 你需要設定 jsvc 大概的作法: http://beakdoosan.blogspot.tw/ 我沒用過 tomcat7 ,你就自己試試吧
2013/10/28 21:01
|
||||||||||
![]() |
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() 註冊日期:
2009/12/6 10:32 所屬群組:
已註冊使用者 等級: 71
HP : 1053 / 1756
![]() |
#8 #16 1. Linux 發行版很多 同一個發行版 不同版本 有時也稍有差異 所以 參閱網路上文章 常常需要注意 發行版及版本 是否適用 2. 這是 Ubuntu 12.04 安裝 tomcat6 sudo apt-get install tomcat6 https://help.ubuntu.com/12.04/serverguide/tomcat.html 3. 這是 Ubuntu 13.10 安裝 tomcat7 sudo apt-get install tomcat7 https://help.ubuntu.com/13.10/serverguide/tomcat.html 4. 如果 你要在 Ubuntu 12.04 安裝 tomcat7 要檢查 requirement 條件合不合 5. 如果有現成的 套件可以使用 apt-get 或 dpkg 安裝 就不需從 tarball 安裝 6. Java 安裝 Java 6 即可 all the currently supported Apache Tomcat versions (6.0.x and 7.0.x) are known to run correctly on Java 6 JVMs.
2013/10/28 21:45
|
||||||||||
![]() |
回覆: [請益]如何將service用service xxx start之後,限定非root使用者執行 |
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() 註冊日期:
2009/12/6 10:32 所屬群組:
已註冊使用者 等級: 71
HP : 1053 / 1756
![]() |
#8 #8 1. 參考 Do you know any reason to use Apache instead of Nginx? 2. How To Install nginx on Ubuntu 12.04 LTS (Precise Pangolin) 2-1. https://help.ubuntu.com/community/Nginx 2-2. 合適的版本 Ubuntu : Nginx ............ ......... 12.04 : 1.1.19 12.10 : 1.2.1 13.04 : 1.2.6 13.10 : 1.4.1 14.04 : 1.4.3
2013/10/28 21:56
|
||||||||||
![]() |
您可以查看帖子.
您不可發帖.
您不可回覆.
您不可編輯自己的帖子.
您不可刪除自己的帖子.
您不可發起投票調查.
您不可在投票調查中投票.
您不可上傳附件.
您不可不經審核直接發帖.