系統(tǒng)之家 - 系統(tǒng)光盤下載網(wǎng)站!

當(dāng)前位置:系統(tǒng)之家 > 系統(tǒng)教程 > Linux普通用戶使用小于1024的端口

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

時間:2015-07-24 13:58:46 作者:zhijie 來源:系統(tǒng)之家 1. 掃描二維碼隨時看資訊 2. 請使用手機瀏覽器訪問: https://m.xitongzhijia.net/xtjc/20150724/53742.html 手機查看 評論

  方法三:Port Forwarding

  如果要運行的程序有權(quán)限監(jiān)聽其他端口,那么這個方法是可以使用的,首先讓程序運行在非root帳戶下,并綁定高于1024的端口,在確保能正常工作的時候,將低端口通過端口轉(zhuǎn)發(fā),將低端口轉(zhuǎn)到高端口,從而實現(xiàn)非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默認(rèn)是被禁用的),注意,代碼中使用的sysctl設(shè)置是臨時性設(shè)置,重啟之后將會被重置,如果要長久保存,需要在/etc/sysctl.conf文件內(nèi)修改:

  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的規(guī)則來實現(xiàn)端口轉(zhuǎn)發(fā)到程序所在的端口,示例中我們要將80端口轉(zhuǎn)發(fā)到8088。

  此種方法能夠比較好的達(dá)到我們的目的,我們的程序可以通過非root用戶來運行,并能夠?qū)ν馓峁┑投丝谔柕姆⻊?wù)。

  方法四:RINETD

  這種方法使用的也是端口轉(zhuǎn)發(fā),此工具可以將本地端口映射到遠(yuǎn)程端口,但此功能對于我們當(dāng)前的功能來說,有點雞肋,畢竟我們新增了一個額外的程序,這將可能會增加我們系統(tǒng)的風(fēng)險性。在此不做推薦。

  以上就是Linux中如何讓普通用戶使用小于1024端口的方法了,前面三種方法都可以不用root而且沒有什么風(fēng)險,大家可以放心使用。

標(biāo)簽 端口

發(fā)表評論

0

沒有更多評論了

評論就這些咯,讓大家也知道你的獨特見解

立即評論

以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場

其他版本軟件

熱門教程

人氣教程排行

Linux系統(tǒng)推薦

掃碼關(guān)注
掃碼關(guān)注

掃碼關(guān)注 官方交流群 軟件收錄