linux – 写,墙,谁和mesg
发布时间:2020-12-13 17:11:26 所属栏目:Linux 来源:网络整理
导读:我想建立一个拥有大量用户的服务器,以便(按重要性顺序): 用户无法获取具有who或last的其他用户的ip地址 用户可以互相写信 用户可以选择性地消除其他用户,而不是简单地阻止 大家 [可选]用户无法挂墙 点1可以通过wtmp和utmp上的chmod 660轻松解决,但我不知道
我想建立一个拥有大量用户的服务器,以便(按重要性顺序):
>用户无法获取具有who或last的其他用户的ip地址 点1可以通过wtmp和utmp上的chmod 660轻松解决,但我不知道如何实现其他点 服务器运行Gentoo Linux 最后的输出是: last: /var/log/wtmp: Permission denied w的输出是: 17:04:45 up 36 days,2:51,0 users,load average: 2.34,2.96,2.12 USER TTY LOGIN@ IDLE JCPU PCPU WHAT 解决方法
write命令基本上写入设备文件,例如/ dev / pts / 1.它似乎咨询utmp以便弄清楚用户和ttys之间的对应关系.可以通过简单地用ls -lh / dev / pts列出/ dev / pts的内容来解决这个问题(虽然它很可能不需要 – 见下文).
除了从tty设备文件设置或删除组写权限之外,mesg似乎没有做任何其他事情: anthony@laura:~$who am i anthony pts/6 Jun 11 17:06 (:0:S.5) anthony@laura:~$mesg is n anthony@laura:~$chmod g+w /dev/pts/6 anthony@laura:~$mesg is y / dev / pts中的文件属于组tty. write命令setgids到该组以便写入它们.因此,为了使point(2)工作,应该可以使用ACL来使utmp组读取utmp: setfacl -m g:tty:r /var/run/utmp (改变utmp以使其组合tty也可能有效,但是谁知道这可能产生什么副作用.) 为了使point(3)工作(假设/ dev / pts文件系统不支持ACL),我相信您需要修改write并在其中实现其功能(例如,读取文件“allow_mesg”in目标用户的主目录,并查看消息用户是否列在其中). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |