V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
fancy2020
V2EX  ›  程序员

说说你们生产服务器上都使用什么用户,权限是怎么管理的

  •  
  •   fancy2020 · Feb 13, 2020 · 4800 views
    This topic created in 2269 days ago, the information mentioned may be changed or developed.

    我先说说我的,一个服务器上跑了两个网站,都是我自己的个人网站。之前在阿里云上,自己建了个 www 用户,应用 代码放在 /opt,/opt 的 owner 是 www 用户。 后来服务器换到了 aws 上,有个默认的 ubuntu 用户,懒得新建,就用它了。 权限方面,由于服务器是我自己的,平时也就我自己登陆,所以我就把自己的 ssh key(public+private)直接复制放上去了。

    23 replies    2020-02-14 12:22:04 +08:00
    loading
        1
    loading  
       Feb 13, 2020
    关键还是你运行 web 服务用户的权限,如果你用 root 运行 web 服务,那么如果程序有漏洞,那么他就是 root,省了提权这一步。

    如果只是个人用,能快速回复,用 root 我感觉问题也不是很大吧?

    请各位大佬指教。
    jorneyr
        2
    jorneyr  
       Feb 13, 2020
    root
    OllyDebug
        3
    OllyDebug  
       Feb 13, 2020 via iPhone
    root 无所谓的,开启 selinux
    d0m2o08
        4
    d0m2o08  
       Feb 13, 2020
    root ansible 一把梭
    superrichman
        5
    superrichman  
       Feb 13, 2020 via iPhone
    平常不用 root,自己建一个用户给 sudo 权限
    xyjincan
        6
    xyjincan  
       Feb 13, 2020
    端口转发就行了,要 root 干嘛
    las917vki
        7
    las917vki  
       Feb 13, 2020
    没有那么多麻烦。
    如果自己配置的话,公司引用基本上跑在 root 下面,只是某些国外公司的权限会比较特殊:
    登录 普通用户
    root 时 使用 sudo
    www 应用 wwwroot 之类
    app 引用 单独的用户
    一般 www 的没权限,app 应用根据那个 app 的需要,想访问的目录情况来配置。

    不过国内公司或者我本人基本上清一色 root,实在没那么多力气去操作。
    scukmh
        8
    scukmh  
       Feb 13, 2020   ❤️ 3
    public + private 全放上去什么操作?
    jinliming2
        9
    jinliming2  
       Feb 13, 2020 via iPhone
    1 绝大多数人使用 sudo 和直接 root 没太大区别,要是事事都 sudo 的话,您还是直接切到 root 用户吧,还省了 sudo 的麻烦……
    2 sudo 是用来给普通用户执行部分命令特权的工具,正常来讲,一般不会 ALL 权限的,而是给 xxx 用户分配执行 xxx 命令的权限,比如,允许 a 用户执行 poweroff,允许 b 用户执行 dnf 之类的……仅赋予最小权限。
    3 除了系统维护以外,基本没有任何操作是非 root 不可的,监听 < 1024 的端口,可以使用 set cap 给予端口监听权限。
    4 只有系统管理员可以操作两个用户(自己的非特权用户和 root 用户),其他用户都只能操作自己的非特权用户。若其他用户需要执行某特权操作,需要向系统管理员申请,系统管理员根据实际情况,帮助建目录、配权限、防火墙,或是分配 sudo 执行特定命令的权限。
    5 个人设备,自己就是系统管理员,省去了向管理员申请权限的操作,但还是要记住,把自己当作“其他用户”来对待,任何操作都在非特权用户下执行,不到万不得已,不给自己 root 用户的特权。
    fancy2020
        10
    fancy2020  
    OP
       Feb 13, 2020
    @scukmh 比如服务器上要从 github clone 代码,需要权限,把 key 都放上去服务器的权限就和我自己权限一样了。当然 github 可以配 deploy key,但也有限制,一个 key 只能用在一个项目上,我有两个项目在同一个机器上跑
    whileFalse
        11
    whileFalse  
       Feb 13, 2020
    不知道什么用户,不管理权限,我用容器。
    qile1
        12
    qile1  
       Feb 13, 2020 via Android
    用户名 administer 我在考虑要不要禁用了新建个用户,上面服务太多了,前几天还提醒有人异地登录,但是我那天没有登录,而且只有我可以登录
    realpg
        13
    realpg  
    PRO
       Feb 13, 2020
    ubuntu 标注用户配置
    各种服务 用他们安装时候的自带权限
    远程登录带 sudoers 的普通用户
    gwy15
        14
    gwy15  
       Feb 13, 2020
    @fanchangyong 正常操作是每个机器都生成一套 key,公钥加到 GitHub 的 SSH Key 里面。
    Kaiyuan
        15
    Kaiyuan  
       Feb 13, 2020
    关于这个,最近我遇到一个问题,就是我想通过 PHP 发送魔术封包唤醒局域网设备,但是用 http 用户运行的 PHP 没法访问网卡...然后我还是用 root 运行了...
    garlics
        16
    garlics  
       Feb 13, 2020
    root + 777
    fancy2020
        17
    fancy2020  
    OP
       Feb 13, 2020
    @gwy15 这种思维是一个 key 对应一台机器,但我的想法是一个 key 代表一个人或一个组织。比如我自己用的设备就是所有都是同一个 key,已经用了好几年了,放在 dropbox 里,有新机器就 copy 下来。
    如果对应到公司的层面,我觉得可以每个部门一个 key 吧。
    如果每台机器都重新生成 key 的话,那管理起来会很麻烦吧
    fancy2020
        18
    fancy2020  
    OP
       Feb 13, 2020   ❤️ 1
    @garlics 大佬
    gwy15
        19
    gwy15  
       Feb 13, 2020
    @fanchangyong 为什么会麻烦呢……?生成密钥和加入信任池都可以自动化。
    vivisidea
        20
    vivisidea  
       Feb 13, 2020
    所以我就把自己的 ssh key(public+private)直接复制放上去了。
    ===

    private key 放上去做甚。。private key 必须放本地自己信任的机器上,有需要在服务器上 clone 就 ForwardAgent 啊
    fengtalk
        21
    fengtalk  
       Feb 13, 2020
    用户:www
    权限:
    - 文件 644
    - 目录 755
    xqin
        22
    xqin  
       Feb 13, 2020
    别问, 问就 docker , 应用跑 docker 里.
    zyq2280539
        23
    zyq2280539  
       Feb 14, 2020
    新建用户,配合 sudo 使用
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2495 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 106ms · UTC 10:02 · PVG 18:02 · LAX 03:02 · JFK 06:02
    ♥ Do have faith in what you're doing.