网站首页 > 技术教程 正文
概述
如果你有一个最新的内核,确实有可能使用它作为非root用户启动服务,但绑定低端口。最简单有效的办法是:
#setcap 'cap_net_bind_service=+ep' /path/to/program
执行了该命令后,该文件程序将会具有CAP_NET_BIND_SERVICE功能,setcap在debian软件包libcap2-bin中,至于具体的功能感兴趣可以自己查阅。
注意:
1. 内核版本至少为2.6.24
2.文件不能是脚本。也就是说必须将CAP_NET_BIND_SERVICE功能应用到可执行文件本身,而不是脚本中指向的其他应用。如果赋予了该文件CAP_NET_BIND_SERVICE能力,其他应用滥用用这个文件就可能在安全性上造成隐患。
3.如果程序使用自己的... / lib /的共享库,而Linux将在任何具有像setcap或suid这样的特权提升的程序上禁用LD_LIBRARY_PATH,将导致不能使用。
应用实例:
nginx配置文件,监听80端口
直接在非root用户下启动nginx服务,发现启动不了,提示非root用户没有使用80端口的权利。
使用setcap
在root用户下执行命令:
#setcap cap_net_bind_service=+eip
再次启动nginx服务:
注:如果不使用了,使用如下命令即可:
#setcap -r 文件名
之所以研究了这块是因为安全整改时是不能用root去启动nginx的,在修改配置的时候发现了linux限制非root用户禁止使用1024以下端口这个特性,所以今天顺便发一下解决的方法。
后面会分享更多关于devops和DBA内容,感兴趣的朋友可以关注下~
猜你喜欢
- 2024-10-10 译荐|Nginx: 高性能与规模化的设计逻辑
- 2024-10-10 终于有人把「编程软件安装和环境配置」的教程整理成了一个文档
- 2024-10-10 Nginx反向代理(nginx反向代理 传递客户端ip)
- 2024-10-10 在Linux中通过expect工具实现脚本的自动交互
- 2024-10-10 我在自己腾讯云服务器上更改nginx配置的操作指引
- 2024-10-10 NGINX内部工作原理:我们如何设计性能和规模
- 2024-09-11 Linux下玩转nginx系列(六)---nginx实现cache(缓存)服务
- 2024-09-11 Nginx从理论到实践超详细笔记(nginx 原理与架构)
- 2024-09-11 还在为Root用户启动程序的安全警告而烦恼吗?试试setcap
- 2024-09-11 Ngnix的root和alias指令(alias nginx)
你 发表评论:
欢迎- 最近发表
-
- linux日志文件的管理、备份及日志服务器的搭建
- Linux下挂载windows的共享目录操作方法
- Linux系统中的备份文件命令(linux系统中的备份文件命令有哪些)
- 麒麟KYLINOS|通过不同方法设置用户访问文件及目录权限
- 「Linux笔记」系统目录结构(linux目录的结构及含义)
- linux中修改归属权chown命令和chgrp命令
- 工作日报 2021.10.27 Android-SEAndroid权限问题指南
- Windows和Linux环境下,修改Ollama的模型默认保存路径
- 如何强制用户在 Linux 上下次登录时更改密码?
- 如何删除Linux文件夹中除某些扩展名之外的所有文件?
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)