文档章节

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

China_OS
 China_OS
发布于 2013/12/21 10:19
字数 424
阅读 3019
收藏 45
点赞 5
评论 5

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

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

ubuntu12.04安装authbind

apt-get install authbind

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

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

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

具体操作:

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

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


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


© 著作权归作者所有

共有 人打赏支持
China_OS
粉丝 403
博文 438
码字总数 487778
作品 0
徐汇
技术主管
加载中

评论(5)

小运
小运
79
自主创新
自主创新
普通用户都在用windows - -
W_Lu
W_Lu
居然可以做到用户绑定,粒度控制有进一步了!
anglix
anglix
不错,Java的jsvc也有这个作用。
linux 普通账户绑定1024以下端口

linux 普通账户绑定1024以下端口 一、昨天收到一个开放需求: 能不能在这台机器单独开启一个普通的账户,需要的权限是可以绑定udp 53端口 这个帐号是给开发人员使用的 乍看这个需求,貌似很简...

xiaomaimai
2014/07/11
0
0
了解黑客的关键工具---揭开Shellcode的神秘面纱

ref: http://zhaisj.blog.51cto.com/219066/61428/ 了解黑客的关键工具---揭开Shellcode的神秘面纱 对于初期接触网络安全的人来说,Shellcode是很神秘的东西,对于网络攻击过程中的嗅探信息、...

Freewheel
2014/10/16
0
0
ubuntu 1404部署tomcat7

装好ubuntu 1404 LTS 和tomcat7后,启动正常,默认端口8080。希望改成80端口,启动失败了。看日志是权限问题,原来只有root用户才能使用1024以下端口。搜索到解决办法是编辑/etc/default/to...

jch_zhao
2017/06/29
0
0
进入保护模式(十七)简单的系统函数调用

维基百科 一、系统函数和普通函数 他们俩之间的区别是什么? 举个例子 进入编程的第一个demo是hello world! 我们看到的:我们调用了一个输出函数实现的 我们没看到的:如果函数的操作涉及到了...

Cobbage
2014/02/23
0
0
Ubuntu配置tomcat 443(https)

Ubuntu配置tomcat 443(https): 生成.keystore文件: keytool -genkey -alias tomcat -keyalg RSA Enter keystore password: Re-enter new password: What is your first and last name? ......

yangzhimingg
07/17
0
0
Ubuntu将tomcat7 端口改为81

Ubuntu将tomcat7 端口改为81: apt-get install authbind vi /etc/default/tomcat7 AUTHBIND=yes (默认为#AUTHBIND=no) :wq vi /var/lib/tomcat7/conf/server.xml (默认为8080)......

yangzhimingg
05/24
0
0
利用Capability的特征加强Linux系统安全

  UNIX是一种安全操作系统,它给普通用户尽可能低的权限,而把全部的系统权限赋予一个单一的帐户--root。root帐户用来管理系统、安装软件、管理帐户、运行某些服务、安装/卸载文件系统、管...

JavaGG
2009/05/07
348
0
Linux系统之Redis扩散病毒继续分析

  *本文原创作者:cgf99,本文属FreeBuf原创奖励计划,未经许可禁止转载      我们安全团队前两次分析了redis病毒和etn挖矿病毒行为,请见“利用Redis未授权访问漏洞的挖矿病毒阴魂不散...

FreeBuf
05/22
0
0
Docker容器使用问题:Failed to get D-Bus connection: Operation not permitted

刚开始接触Docker的朋友,可能会遇到这么一个问题,使用centos7镜像创建容器后,在里面使用systemctl启动服务报错。针对这个报错,我们接下来就分析下! # docker run -itd --name centos7 c...

李振良OK
06/26
0
0
Netty学习笔记 (实验篇)二

这次实验要用netty实现一个EchoServer,Echo Protocol 的定义在这里http://tools.ietf.org/html/rfc862 1.服务器端监听端口7 (由于Linux下普通用户无法使用1024以下的端口,因此绑定7777) ...

Anterior
2013/06/16
0
4

没有更多内容

加载失败,请刷新页面

加载更多

下一页

eclipse SVN 项目重新定位

SVN 重新定位 1.方法一 首先:在Eclipse中选择Windows-> Show View->others 就会出现【SVN资源库/SVN Repositories】,选中后,点击确认; 然后:选中原有的地址,选择【重新定位/Relocate】...

qimh
6分钟前
0
0
Linux 第29课 ——Linux集群架构(下)

Linux集群架构(下) 八、DR模式搭建 8.1 准备工作 试验需求三台机器: 分发器,也叫调度器(简写为dir) 192.168.112.136 ying01 rs1 192.168.112.138 ying02 rs2 192.168.112.139 ying03 vip...

feng-01
11分钟前
0
0
轻松搭建svn版本管理工具+svnmanager管理客户端

前面的文章有写过svn版本管理工具的安装是基于svn的安装包进行安装,对于svn与apache的结合还得下svn和apache的模块进行结合过程比较繁琐,今天来介绍下通过centos的yum来安装svn能够快速安装...

javazyw
20分钟前
0
0
keepalived配置高可用集群

Linux集群概述 根据功能划分为两大类:高可用和负载均衡 高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务的机器宕机,冗余将接替继续提供服务 实现高可用的开源软件有:...

TaoXu
26分钟前
0
0
mysql联表批处理操作

1 概述 mysql中的单表增删改查操作,可以说是基本中的基本. 实际工作中,常常会遇到一些基本用法难以处理的数据操作,譬如遇到主从表甚至多级关联表的情况(如一些历史问题数据的批量处理),考虑到...

社哥
28分钟前
0
0
IntelliJ IDEA 详细图解最常用的配置,适合刚刚用的新人。

刚刚使用IntelliJ IDEA 编辑器的时候,会有很多设置,会方便以后的开发,磨刀不误砍柴工。 比如:设置文件字体大小,代码自动完成提示,版本管理,本地代码历史,自动导入包,修改注释,修改...

kim_o
43分钟前
0
0
Google Java编程风格指南

目录 前言 源文件基础 源文件结构 格式 命名约定 编程实践 Javadoc 后记 前言 这份文档是Google Java编程风格规范的完整定义。当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合...

niithub
45分钟前
0
0
java.net.MalformedURLException异常说明

1.异常片段 Java代码中,在进行URL url = new URL(urllink)操作时,提示以下异常信息,该类异常主要问题出在参数urllink上面。 异常片段1 java.net.MalformedURLException at java.ne...

lqlm
45分钟前
1
0
CentOS7修改mysql5.6字符集

解决办法:CentOS7下修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家所需要的字符集,是国际编码。 具体操作如下: 1.进入MySQL [root@tianqi-01 ~]# mysql -uroot -p Enter passw...

河图再现
47分钟前
0
0
DevExpress v18.1新版亮点——WPF篇(一)

用户界面套包DevExpress v18.1日前终于正式发布,本站将以连载的形式为大家介绍各版本新增内容。本文将介绍了DevExpress WPF v18.1 的新功能,快来下载试用新版本!点击下载>> Accordion Co...

Miss_Hello_World
50分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部