我的实例上有 2 个网络接口(eth0 和 eth1),我正在尝试设置 HAProxy 以感知接口并为每个接口设置单独的前端。
下面的配置以 root 身份运行(即 i不要设置user haproxy
部分)。想知道是否有办法绑定到接口并仍然以非 root 用户身份运行?
https://cbonte.github.io/haproxy-dconv/1.6/management.html#13表明仅出站接口感知才需要 root 权限 - 文档是否不完整,或者我是否缺少某些设置?
配置片段
global
#Works only without below line but its implication is running as root user
user haproxy
frontend frontend_tcp_eth1
mode tcp
bind 0.0.0.0:80 interface eth1
答案1
您尝试绑定到端口 80
绑定 0.0.0.0:80
这是一个特权端口
https://www.w3.org/Daemon/User/Installation/PrivilegedPorts.html
要绑定到此端口,您将需要文档中所述的 root 权限。
https://cbonte.github.io/haproxy-dconv/1.6/management.html#13
- 绑定到特权端口号