Unix系统安全中作为root运行的程式

Unix系统中,有些程序由系统作为root进程运行.这些程序并不总是具有suid许可,因为其不少程序仅由root运行,系统管理员需要清楚这些程序做什么,以及这些程序还将运行其它什么程序.

(1)启动系统

当某些unix系统(如sco unix/xenix)启动时,是以被称为单用户的方式运行,在这种方式中普通用户不能登录,唯有的进程是init,swapper,以及一些由系统管理员从控制台运行的进程.unix系统的单用户方式启动,使系统管理员能在允许普通用户登录以前,先检查系统操作,确保系统一切正常,当系统处于单用户方式时,控制台作为超级用户,命令揭示是”#”,有些unix系统不要确认超级用户口令就认可控制台是root,给出#提示符.这就可能成为一个安全问题.

(2)init进程

unix系统总是以某种方式或称为某种级运行,系统有若干种运行级,这些运行级由init进程控制.unix系统启动时以单用户方式运行,也叫1级或s级.对于其他用户登录进入系统,unix有一种多用户运行方式,也叫2级init进程控制系统运行级,它读入文件/etc/inittab,该文件详细地规定了哪些进程在哪一级运行.当root敲入init n(数字),系统就进入n级.init读该文件以确定终止哪些进程,启动哪些进程.

有效的运行级的数值是从0到6与s.

注意:由init建立的进程以uid为0运行(root)从/etc/inittab运行的程序也作为root运行,所以系统管理员要确保自己知道/etc/inittab中的程序做什么工作,确保这些程序以及这些程序所在的目录直到/和/etc/inittab除root外无人可写.

(3)进入多用户

当unix系统进入多用户方式时,将寝化一系列事件,接着开始执行gettys,允许其他用户登录进入系统.如果再看看/etc/inittab文件,会看到gettys定义在运行级2,至少三个shell程/etc/brc,/etc/bcheckrc,/etc/rc*也定义在运行级2.这些程序都在gettys启动前运行.这些shell程序作为root运行,也不能仅对root可写还应当检查shell程序运行的命令,因为这些命令也将作为root运行.

(4)shutdown命令

用shutdown命令关系统,shutdown shell程序发送警告通知所有用户离开系统,在”给定的期限时间”到了后,就终止进程,拆卸文件系统,进入单用户方式或关机状态.一旦进入单用户方式,所有的gettys停止运行,用户再不能登录.

进入关机状态后可将系统关电.

shutdown仅能由作为root登录的用户从系统控制台上运行.所以任何的shutdown运行的命令仅能对root可写.

(5)系统v的cron程序

cron在unix系统是多用户方式时运行,根据规定的时间安排执行指定的命令,每隔一分钟检查一次文件/usr/lib/crontab,寻找是否有应当运行的程序?

如果找到要运行的程序,就运行该程序,否则睡眠等待一分钟.实际的/usr/lib/crontab用于根据全天的规则时间表运行程序,也可在夜晚运行白天不愿运行怕降低其他用户速度的程序.通常由cron运行的程序是如记帐,存文件这样的程序.cron一般在系统进入多用户后由/etc/rc启动,当shutdown运行killall命令时便终止运行.由cron运行的程序作为root,所以应当注意放什么程序在crontab中,还要确保/usr/lib/crontab和该表中列出的任何程序对任何人不可写.

如果用户需要由cron执行一个程序,系统管理员可用su命令在crontab表中建立一个入口,使用户的程序不能获得root的权限.

(6)系统v版本2之后的cron程序

在系统v版本2中,cron被修改成允许用户建立自己的crontab入口,/usr/lib/crontab文件不再存在,由目录/usr/spool/cron/crontabs中的文件代替.这些文件的格式与crontab相同,但每个文件与系统中的一个用户对应,并以某用户的名义由cron运行.

如果想限制能建立crontab的用户,可在文件/usr/lib/cron/cron.allow文件中列出允许运行crontab命令的用户.任何未列于该文件的用户不能运行crontab.反之,若更愿意列出不允许运行crontab命令的用户,则可将他们列入/usr/lib/cron/cron.deny文件中,未列于该文件的其他用户将被允许建立crontab.

注意:若两个文件都存在,系统将使用cron.allow,忽略cron.deny.如果两个文件都不存在,则只有root可运行crontab.所以,若要允许系统中的所有用户都可运行crontab命令,应当建立一个空的cron.deny文件,如果cron.allow也存在,则删除该文件.

这个版本的cron命令的安全程度比前一个高,因为用户只能看自己的crontab,系统管理员也不必担心其他用户的程序是否会作为root运行,由于允许每个系统登录用户有自己的crontab,也简化了对程序必须由cron运行,但不必作为root运行的系统程序的处理.

必须确保root的crontab文件仅对root可写,并且该文件所在的目录及所有的父目录也仅对root可写.

(7)/etc/profile

每当用户(包括root在内)登录时,由shell执行/etc/profile文件,应确保这个文件以及从这个文件运行的程序和命令都仅对root可写. 5./etc/passwd文件/etc/passwd文件是unix安全的关键文件之一.该文件用于用户登录时校验用户的口令,当然应当仅对root可写.文件中每行的一般格式为:logname:password:uid:gid:userinfo:home:shell

每行的头两项是登录名和加密后的口令,后面的两个数是uid和gid,接着的一项是系统管理员想写入的有关该用户的任何信息,***两项是两个路径名:一个是分配给用户的home目录,第二个是用户登录后将执行的shell(若为空格则缺省为/bin/sh).

责任编辑:佚名
来源: 论坛整理 Unix系统 root

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/128451.html<

(0)
管理的头像管理
上一篇2025-02-25 03:53
下一篇 2025-02-25 03:55

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注