分页: 1 / 1
如何枚举账户
发表于 : 2012-02-20 23:41
由 自由建客
所有 UID 满 1000 的。不要告诉我用 grep 过滤 /etc/passwd 云云。
Re: 如何枚举账户
发表于 : 2012-02-21 8:46
由 b33e
Re: 如何枚举账户
发表于 : 2012-02-21 8:58
由 YeLee
Re: 如何枚举账户
发表于 : 2012-02-21 9:34
由 自由建客
代码: 全选
sed -n '/^nobody:/d;s/^\([^:]*\):[^:]*:[0-9]\{4,\}:[^:]*:[^:]*:\([^:]*\):.*/\1 \2/p' /etc/passwd
这个命令太酷了!
Re: 如何枚举账户
发表于 : 2012-02-21 10:27
由 自由建客
再补一条
代码: 全选
awk -F: '$3>=1000 && $1 !="nobody" {print $1,$6}' /etc/passwd
感谢网友帮忙!
Re: 如何枚举账户
发表于 : 2012-02-21 11:14
由 枫叶饭团
结果还是/etc/passwd里找
Re: 如何枚举账户
发表于 : 2012-02-21 11:25
由 YeLee
Re: 如何枚举账户
发表于 : 2012-02-21 11:37
由 自由建客
每个账户主目录下可建立一个文件,保证关机的时候会被调用,以保证将内存盘的数据存盘。
其实 ~/.bash_logout 在注销时会被 bash 调用,但关机未必会发生注销事件。
不过仔细想想,还是不要这功能的好,这样灵活的机制会给用户有阻断关机的机会。
我还是继续使用我以前的脚本算了,存盘工作完全交由系统服务负责。
Re: 如何枚举账户
发表于 : 2016-10-23 22:52
由 自由建客
这回我是要确认一个帐户是否存在,难道只能自己过滤 /etc/passwd?

Re: 如何枚举账户
发表于 : 2016-10-24 9:52
由 qy117121
过滤吧
Re: 如何枚举账户
发表于 : 2016-10-24 11:01
由 susbarbatus
自由建客 写了:这回我是要确认一个帐户是否存在,难道只能自己过滤 /etc/passwd?

用
id(1) 不行吗?
Re: 如何枚举账户
发表于 : 2016-10-24 11:15
由 lilydjwg
自由建客 写了:这回我是要确认一个帐户是否存在,难道只能自己过滤 /etc/passwd?

理论上来说,你过滤 /etc/passwd 也不行。
什么叫「帐户存在」呢?它能登录到系统中?那你得问 PAM。getent passwd USER/UID 可以获取用户的 passwd 条目。
如果能够拥有自己 UID、文件和进程,那么 uid_t、pid_t 的所有可能的值都存在。
Re: 如何枚举账户
发表于 : 2016-10-24 12:50
由 自由建客
lilydjwg 写了:自由建客 写了:这回我是要确认一个帐户是否存在,难道只能自己过滤 /etc/passwd?

理论上来说,你过滤 /etc/passwd 也不行。
什么叫「帐户存在」呢?
给定一个帐户名,看是否有对应 >=1000 的 uid
Re: 如何枚举账户
发表于 : 2016-10-24 14:28
由 lilydjwg
自由建客 写了:
给定一个帐户名,看是否有对应 >=1000 的 uid
那你用 getent passwd 吧。
Re: 如何枚举账户
发表于 : 2016-10-25 11:56
由 YeLee
楼主好,又来挖自己啊
