Linux普通用户利用authbind绑定特权端口

系统 Linux
普通用户程序要监听80端口,有很多方法可以实现,之前常用的就是使用sudo给予普通用户一定的权限,不过总感觉sudo控制起来不是很方便,最近发现ubuntu下面有一款小程序authbind可以实现该功能,且配置起来也方便。

在Linux上普通用户无法绑定1024以下的端口,不过总是会碰到一些特殊情况,比如遇到最多的就是普通用户程序要监听80端口,有很多方法可以实现,之前常用的就是使用sudo给予普通用户一定的权限,不过总感觉sudo控制起来不是很方便,最近发现ubuntu下面有一款小程序authbind可以实现该功能,且配置起来也方便。

authbind允许程序不使用root权限来绑定系统1024以下的特权端口,你必须使程序调用authbind,authbind会调用一些环境变量,来允许你的程序绑定在特权端口。

Ubuntu 12.04安装authbind

 

  1. apt-get install authbind 

怎样使用authbind呢?通过配置文件区域来使用了,默认的配置文件区域在/etc/authbind目录下,里面有三个目录:byport、byaddr、byuid。

假如我们有个test账号,想运行一个程序绑定80端口

在byport目录下建立80文件:/etc/authbind/byport/80,设置test账户有80文件的使用权限,如果80文件可以被test访问,则绑定就是成功的,否则绑定就是失败的。

具体操作:

 

  1. chmod 755 /etc/authbind/port/80 
  2. chown test.test /etc/authbind/port/80 

 

在你要启动的命令前加上authbind --deep命令即可。

我们也可以直接在地址上绑定端口,在byaddr下建立ip:port文件,测试方法如上。也可以在byuid目录下建立uid文件,只要你的test账号可以访问,否则绑定失败。

责任编辑:奔跑的冰淇淋 来源: 开源中国博客
相关推荐

2010-01-05 10:13:57

Ubuntu普通用户市场

2021-02-22 10:32:46

云计算云厂商SaaS

2010-02-23 16:49:40

CentOS tomc

2011-12-12 17:07:43

2011-02-24 11:11:14

2011-04-12 10:16:18

UNIX权限

2022-08-04 07:03:11

Linux配置命令

2010-08-09 13:57:19

DB2 sql

2022-08-19 15:02:10

Linuxsu 命令

2009-04-30 17:29:49

LinuxUbuntuScreen

2012-08-02 10:48:03

Windows 8操作系统

2009-12-10 16:53:53

Linux操作系统

2009-03-28 09:40:32

Windows 7微软操作系统

2010-07-19 17:22:02

连接到Telnet服务

2012-11-02 09:28:57

Windows Ser

2015-07-29 11:31:25

2009-04-20 08:49:29

Windows 7微软操作系统

2017-11-01 13:34:33

2013-10-12 15:45:30

2018-10-16 09:10:02

宽带WiFi网络
点赞
收藏

51CTO技术栈公众号