默认情况下Linux的1024以下端口是只有root用户才有权限占用,我们的tomcat,apache,nginx等等程序如果想要用普通用户来占用80端口的话就会抛出java.net.BindException: Permission denied:80的异常。
解决办法有两种:
1.使用非80端口启动程序,然后再用iptables做一个端口转发。
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
用root用户直接去执行就可以了!
2.假设我们需要启动的程序是nginx,那么这么做也可以达到目的。
一开始我们查看nginx的权限描述:
-rwxr-xr-x 1 nginx dev 2408122 Sep 5 16:01 nginx
这个时候必然是无法正常启动的。
首先修改文件所属用户为root:
chown root nginx
然后再加上s权限:
chmod u+s nginx
再次查看权限描述的时候:
-rwsr-xr-x 1 root root 2408122 Sep 5 16:01 nginx
这样就能启动了。
- 浏览: 82589 次
- 性别:
最新评论
-
woodding2008:
日志大了,可能做不完
nginx访问日志的切割
相关推荐
在 Linux 下,默认情况下1024 以下的端口是要在 root 下才能使用的,在其他用户下,如果尝试使用将会报错。在有的时候,我们可能考虑程序运行在 root 帐户下,但这可能会给 Linux 系统带来安全风险。那如何能够让非 ...
如果项目需要在80端口运行,可能需要使用root权限或调整用户权限设置。 5. **防火墙配置**:Linux服务器的防火墙(如firewalld)必须配置为允许80端口的TCP流量。通过`systemctl status firewalld`检查防火墙状态,...
/bin/bash port=”80″ restart=”/etc/init.d/httpd restart” EMAIL=”/bin/echo selboo | mutt -s “重新启动httpd” root@selboo.com.cn” netstat -ln |awk ‘/^tcp/ {print $4}’ |grep -q “:$port$” || { #...
在Linux系统中,Apache Tomcat是一个广泛使用的Java应用服务器,用于部署和运行Web应用程序。默认情况下,Tomcat监听8080端口提供服务。然而,80端口是HTTP协议的标准端口,大多数用户习惯直接输入域名而不指定端口...
由于系统保留了低于1024的端口供root用户使用,所以非root用户在尝试绑定这些端口时会遇到权限问题。为了解决这个问题,我们可以利用set UID位来允许非root用户启动服务。 对于Apache,首先切换到root用户,然后...
"CentOS查询端口占用和清除端口占用的程序" 在 CentOS 系统中,查询端口占用和清除端口占用的程序是一种非常重要的维护操作。通过这种操作,我们可以快速地查询到占用某个端口的进程,从而清除其占用,释放系统资源...
然而,如果ROOT用户的密码丢失或遗忘,可能会导致无法正常管理系统,这时就需要使用"NC-ROOT用户重置工具"来恢复访问。 "superadmin.exe"和"superadmin.xml"是这个压缩包内的两个关键文件。"superadmin.exe"通常是...
- **(1) 使用root用户登录系统**:首先需要以root身份登录Linux系统,这是因为root拥有最高权限,能够执行系统级的操作。 - **(2) 切换到命令行界面**:通过`init 3`命令将系统切换至纯命令行模式,之后可以通过`Alt...
在Linux系统中,出于安全考虑,通常不建议使用root用户来部署Web应用。因此,第一步是创建一个新的普通用户用于部署和管理应用。 ##### 2.1 创建用户 ``` useradd -d /ucenter ucenter ``` - `useradd`:用于创建...
命令设置 root 用户权限,并开放防火墙端口号。 8. MySQL 目录结构 MySQL 的目录结构包括数据库目录 /var/lib/mysql/,配置文件目录 /usr/share/mysql/,命令目录 /usr/bin/,日志文件目录 /var/log/mysqld.log ...
使用`mysql -u root`命令以root用户身份登录MySQL。 4. **修改root用户的密码** 登录后执行以下命令更新root用户的密码: ```sql UPDATE mysql.user SET password=PASSWORD('新密码') WHERE User='root'; ...
本文将详细讲解Linux_telnet服务的开启步骤,包括安装telnet软件包、启动telnet服务、测试telnet服务、设置telnet端口、telnet服务限制、telnet root用户的登入等内容。 一、安装telnet软件包 在Linux操作系统中,...
Telnet 服务是一种远程登录服务,允许用户从远程主机登录到 Linux 服务器。下面将详细介绍如何开启 Linux 的 Telnet 服务。 一、基本概念 Linux 提供服务是由运行在后台的守护程序(daemon)来执行的。守护进程的...
默认情况下,不允许root用户直接使用telnet登录Linux主机。可以使用以下方法来允许root用户登录: [root@wljs root]# vi /etc/pam.d/login #auth required pam_securetty.so 将这一行加上注释! 或者: [root@...
4. **验证结果**:以非root用户身份运行服务程序,检查是否能成功绑定到小于1024的端口。 #### 五、常见问题与解决办法 - **问题1:提权失败** **原因**:可能是程序本身未正确请求所需能力,或者系统管理员策略...
- **非root用户启动WebLogic**:若WebLogic尝试使用低级别端口(如80端口)监听,而非root用户启动会遇到权限问题。解决方法是使用root用户启动WebLogic或更改监听端口号。 以上知识点覆盖了从环境搭建、软件安装、...
dev 174 8.7 使用lm-sensors监控硬件 174 8.8 spi总线 174 8.9 1-wire总线 176 8.10 调试 176 8.11 查看源代码 176 第9章 pcmcia和cf 179 9.1 pcmcia/cf是什么 179 9.2 linux-pcmcia子系统 181 9.3 主机...
在Android系统中,根权限(Root权限)是一个高级权限,允许用户访问并修改系统的底层文件和设置。这对于开发者和高级用户来说非常重要,因为可以进行深度定制、安装自定义ROM、优化性能或者执行需要系统级访问的应用...