• 售前

  • 售后

热门帖子
入门百科

Unix/Linux体系下的nobody用户与nologin具体先容

[复制链接]
红军利物浦2017 显示全部楼层 发表于 2021-10-25 19:25:58 |阅读模式 打印 上一主题 下一主题
Unix/Linux体系下的nobody用户是什么?
1、Windows体系在安装后会主动创建一些用户帐户,在Linux体系中同样有一些用户帐户是在
体系安装后就有的,就像Windows体系中的内置帐户一样。
2、它们是用来完成特定任务的,好比nobody和ftp等,我们访问LinuxSir.Org的网页程序时,官网的服务器就是让客户以'nobody'身份登录的(相称于Windows体系中的匿名帐户);
我们匿名访问ftp时,会用到用户ftp或nobody。
3、首先,nobody是一个平凡用户,非特权用户。 利用nobody用户名的'目标'是,使任何人都可以登录体系,但是其 UID 和 GID 不提供任何特权,即该uid和gid只能访问人人皆可读写的文件。
4、其次,许多体系中都按惯例地默认创建一个nobody,只管'限制它的权限至最小',当服务器向外服务时,可能会让client以nobody的身份登录。
5、nobody就是一个平凡账户,由于默认登录shell是'/sbin/nologin',以是这个用户是无法直接登录体系的,也就是黑客很难通过毛病毗连到你的服务器来做破坏。别的这个用户的权限也给设置的很低。因此有比力高的安全性。统统都只给最低权限。这就是nobody存在的意义。
Unix/Linux体系下用户shell为/sbin/nologin是什么意思?
假如一个用户的默认shell设置为/sbin/nologin 则这个用户是克制登岸体系的;

这个nologin的作用就是限制某些用户通过ssh登岸到shell上。
好比日常可以将 nginx mysql php-fpm这些应用的用户默认shell设定为/sbin/nologin

主要是提升体系安全性
体系账号的shell利用 /sbin/nologin ,此时无法登岸体系,纵然给了密码也不可。

所谓“无法登岸”指的仅是这个用户无法利用bash或其他shell来登岸体系而已,并不是说这个账号就无法利用体系资源。举例来说,各个体系账号中,打印作业有lp这个账号管理,www服务器有apache这个账号管理,他们都可以举行体系程序的工作,但就是无法登岸主机而已。

偶然候有些服务,好比邮件服务,大部分都是用来吸收主机的邮件而已,并不必要登岸。假如有账号试图毗连我的主机取得shell,我们就可以拒绝。

偶然可以用利用 /etc/nologin 文件暂时克制其他用户登录,详细做法是在/etc/目次下创建一个名称为 nologin 的文件。
例如:
  1. #touch /etc/nologin
复制代码
如许将克制随后的用户登录到体系中。
克制用户登录时,/etc/nologin 文件中的内容将会显示给用户,会一闪而过。

例如,在 /etc/nologin文件中加入以下内容:
  1. #vi /etc/nologin
  2. disable login by admin temperarily!
复制代码
当用户试图登岸时,将会给用户显示"disable login by admin temperarily!",当体系维护竣事以后,再删除/etc/nologin文件,其他用户就又可以恢复登岸了,这只是限于能登岸shell的用户来说的
对于那些登岸shell为/sbin/nologin的用户来说没有影响,由于他们本身就无法登岸shell。
别的,假如我想要让某个具有 /sbin/nologin 的用户知道,他们不能登岸主机时,可以新建 /etc/nologin.txt 这个文件,在文件内面写上不能登岸的原因,当用户登录时,屏幕上就会出现这个文件内里的内容。

例如:
  1. #vi /etc/nologin.txt
  2. This account is system account or mail account.
  3. #su - mail
复制代码
会提示"This account is system account or mail account."
增补:

/etc/nologin 和/etc/nologin.txt这两个文件的作用并不雷同。

当/etc/nologin文件存在时,则任何一个一般身份帐号在实验登入时,都仅会得到/etc/nologin的内容,而无法直接登入主机。

即当创建/etc/nologin ,而且内容设定为『This Linux server is maintaining....』,则任何实验登录者,会看到这些提示内容,而不能登录进体系。

直到删除/etc/nologin文件后,一般用户才可以正常登录。
总结:
nobody是linux/unix体系下的匿名用户,只能访问服务器上的公共内容
/sbin/nologin是linux/unix体系下的一种shell设置项对于登岸shell为/sbin/nologin的用户是不答应登录体系的
/etc/nologin.txt只针对shell为/sbin/nologin的用户
/etc/nologin可以明白为针对所有平凡用户

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作