nginx非root用户使用1024以下端口
nginx非root用户使用1024以下端口
nginx应用需要使用80和443端口,但是非root用户,nginx -t 检查文件是会报错:
[majd@majd nginx]$ /home/majd/nginx/sbin/nginx -t
nginx: the configuration file /home/majd/nginx/conf/nginx.conf syntax is ok
nginx: [emerg] bind() to 0.0.0.0:443 failed (13: Permission denied)
nginx: configuration file /home/majd/nginx/conf/nginx.conf test failed
解决办法:
在root用户下输入命令:setcap cap_net_bind_service=+eip [nginx命令路径],看到nginx命令会变成红色,说明成功:
[root@majd ~]# setcap cap_net_bind_service=+eip /home/majd/nginx/sbin/nginx
[root@majd ~]#
[root@majd ~]# ls /home/majd/nginx/sbin
nginx
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-E9SOA5N7-1637657726472)(C:\Users\19398\AppData\Roaming\Typora\typora-user-images\image-20211123165003087.png)]
然后使用普通用户检查:
[majd@majd nginx]$ /home/majd/nginx/sbin/nginx -t
Enter PEM pass phrase:
nginx: the configuration file /home/majd/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /home/majd/nginx/conf/nginx.conf test is successful
成功!可以启动nginx了:
[majd@majd nginx]$ /home/majd/nginx/sbin/nginx
Enter PEM pass phrase:
[majd@majd nginx]$ netstat -antp | grep LIST
(No info could be read for "-p": geteuid()=1000 but you should be root.)
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN -
tcp6 0 0 :::111 :::* LISTEN -
tcp6 0 0 :::80 :::* LISTEN -
tcp6 0 0 :::10000 :::* LISTEN -
tcp6 0 0 :::22 :::* LISTEN -
tcp6 0 0 ::1:25 :::* LISTEN -
取消普通用户使用1024以下端口方式:
setcap -r [nginx命令路径]:
[root@majd ~]# setcap -r /home/majd/nginx/sbin/nginx
nginx非root用户使用1024以下端口相关推荐
- 非root用户使用1024以下端口(Linux的Capabilities)
非root用户使用1024以下端口 一.问题背景 二.解决方法 1.进入root用户 2.分配用户权限 总结 1.Capabilities介绍 2.Capabilities其他功能名称 3.Capab ...
- Ubuntu 80端口无法使用-非root用户无法使用1024以下端口
遇到问题:使用80端口失败,查询80端口占用,显示未占用. 可能的原因:当前用于未非root用户,故ubuntu下无法使用1024以下端口.(1023不可,1024可以) 解决方案: 0.改端口把 改 ...
- linux 允许非root用户使用1024以下端口
setcap cap_net_bind_service=+eip /usr/local/nginx/sbin/nginx
- 非root安装php nginx,非root用户安装nginx
众所周知,apache的80端口为系统保留端口,如果通过其他非root用户启动,会报错如下: nginx: [emerg] bind() to 0.0.0.0:80 failed(13: Permis ...
- setcap详解-普通用户绑定1024以下端口
Capabilities的主要思想在于分割root用户的特权,即将root的特权分割成不同的能力,每种能力代表一定的特权操作.例如:能力CAP_SYS_MODULE表示用户能够加载(或卸载)内核模块的 ...
- root 启动mysql_非root用户随开机而启动mysql服务
非root用户随开机而启动mysql服务 今天验证了一下,非root用户随开机而启动msyql服务的脚本执行效果,特此简要记录如下: 环境: 192.168.142.130 mysql 5.6.41 ...
- 非root用户安装nginx
众所周知,apache的80端口为系统保留端口,如果通过其他非root用户启动,会报错如下: nginx: [emerg] bind() to 0.0.0.0:80 failed(13: Permis ...
- zzw原创_非root用户下安装nginx
想自己安装nginx,又不相用到root用户. 非root用户下(本文为用户bdctool)来ngnix安装,要依赖pcre库.zlib库等, 1. 下载依赖包:下载地址 pcre(www.pcre. ...
- 【docker系列】使用非root用户安装及启动docker(rootless模式运行)
通过我之前的文章已经可以验证,在root用户下安装启动的容器存在安全问题.究其原因是因为: 容器内的root用户就是宿主机的root用户,容器内uid=1000的用户就是宿主机uid=1000的用户 ...
最新文章
- 中医研究登上Nature
- OSChina 周一乱弹 —— 还一星期就要和女神约会了
- Linux C编程--进程介绍7--综合应用实例
- osgi实战学习之路:6. Service-1
- D3ctf-D3MUG(u3d
- 解惑(二)----- 如何通俗地理解Python中的if __name__ == ‘__main__‘
- 【翻译】WPF中的数据绑定表达式
- 【Elasticsearch】明明存在,怎么搜索不出来呢?
- 不可错过的MSDN TV —— IronPython: Python on the .NET Framework (中)
- python pathos_python运行多线程库pathos时,pymongo递归深度溢出
- python语言程序设计是干什么的-Python语言程序设计
- kali Linux的安装
- Python进阶(三)单例设计模式
- AIX学习之NMON工具详解
- Opencv2与Opencv4共存
- 小程序 跳转到腾讯文档小程序
- javasript |仿百度换肤效果
- 易基因|DNA-蛋白质互作的检测技术及ChIP-seq实验关键 | 易讲堂
- Flink SQL Client的使用
- 提升自我的42个实用技巧
热门文章
- flink中维表Join几种常见方式总结
- JAVA 求100以内所有素数,并且8个数字输出为一行
- 由脱库攻击谈口令字段的加密策略——密码泄露事件杂谈之一
- 爬取免费代理IP代码
- 使用Python提取免费的ip代理
- dstwo linux 模拟器,dstwo sfc模拟器插件Catsfc使用教程
- C#绘制中国地图(兰勃特、墨卡托投影)
- 方正科技服务器可以重装系统吗,远程可以重装系统吗|如何远程重装系统
- python职场应用英语作文_职场实用英语作文
- 功能最强大的php框架,【精粹】架构合理+强大的PHP框架再次推荐,傲视群雄~