我先说说我的,一个服务器上跑了两个网站,都是我自己的个人网站。之前在阿里云上,自己建了个 www 用户,应用 代码放在 /opt,/opt 的 owner 是 www 用户。 后来服务器换到了 aws 上,有个默认的 ubuntu 用户,懒得新建,就用它了。 权限方面,由于服务器是我自己的,平时也就我自己登陆,所以我就把自己的 ssh key(public+private)直接复制放上去了。
1
loading 2020-02-13 10:11:58 +08:00
关键还是你运行 web 服务用户的权限,如果你用 root 运行 web 服务,那么如果程序有漏洞,那么他就是 root,省了提权这一步。
如果只是个人用,能快速回复,用 root 我感觉问题也不是很大吧? 请各位大佬指教。 |
2
jorneyr 2020-02-13 10:12:35 +08:00
root
|
3
OllyDebug 2020-02-13 10:14:38 +08:00 via iPhone
root 无所谓的,开启 selinux
|
4
d0m2o08 2020-02-13 10:15:57 +08:00
root ansible 一把梭
|
5
superrichman 2020-02-13 10:18:50 +08:00 via iPhone
平常不用 root,自己建一个用户给 sudo 权限
|
6
xyjincan 2020-02-13 10:28:31 +08:00
端口转发就行了,要 root 干嘛
|
7
las917vki 2020-02-13 10:31:19 +08:00
没有那么多麻烦。
如果自己配置的话,公司引用基本上跑在 root 下面,只是某些国外公司的权限会比较特殊: 登录 普通用户 root 时 使用 sudo www 应用 wwwroot 之类 app 引用 单独的用户 一般 www 的没权限,app 应用根据那个 app 的需要,想访问的目录情况来配置。 不过国内公司或者我本人基本上清一色 root,实在没那么多力气去操作。 |
8
scukmh 2020-02-13 10:56:55 +08:00 3
public + private 全放上去什么操作?
|
9
jinliming2 2020-02-13 11:02:48 +08:00 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 用户的特权。 |
10
fancy2020 OP @scukmh 比如服务器上要从 github clone 代码,需要权限,把 key 都放上去服务器的权限就和我自己权限一样了。当然 github 可以配 deploy key,但也有限制,一个 key 只能用在一个项目上,我有两个项目在同一个机器上跑
|
11
whileFalse 2020-02-13 11:14:50 +08:00
不知道什么用户,不管理权限,我用容器。
|
12
qile1 2020-02-13 11:15:21 +08:00 via Android
用户名 administer 我在考虑要不要禁用了新建个用户,上面服务太多了,前几天还提醒有人异地登录,但是我那天没有登录,而且只有我可以登录
|
13
realpg 2020-02-13 12:55:23 +08:00
ubuntu 标注用户配置
各种服务 用他们安装时候的自带权限 远程登录带 sudoers 的普通用户 |
14
gwy15 2020-02-13 14:06:59 +08:00
@fanchangyong 正常操作是每个机器都生成一套 key,公钥加到 GitHub 的 SSH Key 里面。
|
15
Kaiyuan 2020-02-13 14:15:00 +08:00
关于这个,最近我遇到一个问题,就是我想通过 PHP 发送魔术封包唤醒局域网设备,但是用 http 用户运行的 PHP 没法访问网卡...然后我还是用 root 运行了...
|
16
garlics 2020-02-13 14:22:24 +08:00
root + 777
|
17
fancy2020 OP @gwy15 这种思维是一个 key 对应一台机器,但我的想法是一个 key 代表一个人或一个组织。比如我自己用的设备就是所有都是同一个 key,已经用了好几年了,放在 dropbox 里,有新机器就 copy 下来。
如果对应到公司的层面,我觉得可以每个部门一个 key 吧。 如果每台机器都重新生成 key 的话,那管理起来会很麻烦吧 |
19
gwy15 2020-02-13 16:25:33 +08:00
@fanchangyong 为什么会麻烦呢……?生成密钥和加入信任池都可以自动化。
|
20
vivisidea 2020-02-13 16:40:11 +08:00
所以我就把自己的 ssh key(public+private)直接复制放上去了。
=== private key 放上去做甚。。private key 必须放本地自己信任的机器上,有需要在服务器上 clone 就 ForwardAgent 啊 |
21
fengtalk 2020-02-13 16:45:04 +08:00
用户:www
权限: - 文件 644 - 目录 755 |
22
ddsfeng 2020-02-13 21:43:30 +08:00
别问, 问就 docker , 应用跑 docker 里.
|
23
zyq2280539 2020-02-14 12:22:04 +08:00
新建用户,配合 sudo 使用
|