zoukankan      html  css  js  c++  java
  • 为了安全,linux下如何使用某个用户启动某个进程?

    安全里有个原则,叫最小权限原则

    根据这个原则,对于启动某个应用或者进程,应该赋予其最小权限,根据应用权限要求,创建一个相应权限的用户,赋予其应用相应的权限,然后使用这个用户启用这个应用

    如何使用某个用户启用某个进程或者应用?

    1、使用这个用户登录linux系统后的一般操作(除sudo/su等操作外)都是这个用户权限的操作,包括启动应用后,该应用具有的权限,也是和这个用户一致的

    2、在其他用户登录后,使用su命令:

    su - admin -c 'nohup python /home/tdqa/rpc_server/test_rpc.py &'

    表示使用admin用户启动test_rpc.py,这里需要具有用户admin的密码
    如果,你拥有sudo权限,可以执行不需要输入密码
    sudo su - admin -c 'nohup python /home/tdqa/rpc_server/test_rpc.py &'
     

     2、在其他用户登录后,使用runuser命令:

    如果,你拥有sudo权限,也可以使用runuser命令
    sudo runuser -l admin -c 'nohup python /home/tdqa/rpc_server/test_rpc.py &'

     3、或者直接 sudo -u admin nohup /usr/local/bin/python test_rpc.py & 但是很奇怪的是起来了2个进程

    顺带絮叨下su和sudo的区别:

    su切换到某个用户下,需要目标用户的密码,日志里记录的也是切换之后的用户操作

    sudo是受限的su命令,切换到其他用户,并不需要密码,只是执行操作时,临时操作,日志记录的也是当前用户的操作

    参考:

    1、https://www.cnblogs.com/bodhitree/p/6018369.html

  • 相关阅读:
    expdp使用
    sed命令(二)
    linux的sed命令(一)
    weblogic找不到数据源
    windows 常用操作
    Spring in action (1)
    Eclipse使用
    maven
    Maven-01 安装maven
    Java开发环境搭建
  • 原文地址:https://www.cnblogs.com/shengulong/p/7891999.html
Copyright © 2011-2022 走看看