系统屋 - 系统光盘下载网站!

当前位置:首页 > 系统教程 > Linux教程 > 详细页面

Linux中如何让普通用户使用小于1024的端口(2)

时间:2023-02-05来源:系统屋作者:zhijie

  方法三:Port Forwarding

  如果要运行的程序有权限监听其他端口,那么这个方法是可以使用的,首先让程序运行在非root帐户下,并绑定高于1024的端口,在确保能正常工作的时候,将低端口通过端口转发,将低端口转到高端口,从而实现非root运行的程序绑定低端口。要使用此方法可以使用下面的方式:

  1.# Enable the IP FORWARD kernel parameter.

  2.sysctl -w net.ipv4.ip_forward=1

  3.# Use iptables rules to redirect packets

  4.iptables -F -t nat

  5.iptables -t nat -A PREROUTING -p tcp --dport 80-j DNAT --to:8088

  第一步使用sysctl确保启用IP FORWARD功能(此功能在Red Hat/CentOS默认是被禁用的),注意,代码中使用的sysctl设置是临时性设置,重启之后将会被重置,如果要长久保存,需要在/etc/sysctl.conf文件内修改:

  1.# Default value is 0, need change to 1.

  2.# net.ipv4.ip_forward = 0

  3.net.ipv4.ip_forward =1

  然后从文件中加载新的配置

  1.# load new sysctl.conf

  2.sysctl -p /etc/sysctl.conf

  3.# or sysctl -p

  4.# default filename is /etc/sysctl.conf

  第二步就是使用iptables的规则来实现端口转发到程序所在的端口,示例中我们要将80端口转发到8088。

  此种方法能够比较好的达到我们的目的,我们的程序可以通过非root用户来运行,并能够对外提供低端口号的服务。

  方法四:RINETD

  这种方法使用的也是端口转发,此工具可以将本地端口映射到远程端口,但此功能对于我们当前的功能来说,有点鸡肋,毕竟我们新增了一个额外的程序,这将可能会增加我们系统的风险性。在此不做推荐。

  以上就是Linux中如何让普通用户使用小于1024端口的方法了,前面三种方法都可以不用root而且没有什么风险,大家可以放心使用。

 2/2   首页 上一页 1 2
分享到:

相关信息

  • 在Linux系统中如何使Docker镜像变小

    在Linux中镜像往往非常大,但是使用Docker镜像是以个例外。使用Docker制作镜像,小的可能只有几M。本文就来介绍一下在Linux系统中如何使Docker镜像变小的方法。...

    2023-02-05

  • Linux系统使用Visual Studio有哪些快捷键?

    Visual Studio 是微软开发的一个开发工具,但是Visual Studio也能完美地应用到Linux系统中,实际上Visual Studio在Linux中的应用比你想象中的还要广泛。本文就来介绍一下Linux系统中使用Visual Studio 的快捷键。...

    2023-02-05

评论

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载

公众号