linux下创建只读Log日志的用户

按照需求,需要创建一个用户,用于查看生产环境的日志。基于该需求,我们需要创建只读用户且该用户只能访问日志目录。

解决方案


1,新建用户lamqlog

#useradd lamplog

2,将要共享的目录挂载到指定用户的目录中

#mount –bind /home/app02/lamq-springboot/logs /home/lamqlog/logs

#mount –bind /home/app02/lamq-springboot/backup /home/lamqlog/backup

3,设置ACL权限

#setfacl -m -d u:lamqlog:rx /home/app02/lamq-springboot/logs

#setfacl -R -d u:lamqlog:rx /home/app02/lamq-springboot/logs

4,设置mount开机启动

#vi /etc/rc.local

Mount –bind /home/app02/lamq-springboot/logs /home/lamqlog/logs

Mount –bind /home/app02/lamq-springboot/backup /home/lamqlog/backup

#Chmod +x /etc/rc.locallinux下创建只读Log日志的用户

5.创建只读shell

#ln -s /bin/bash  /bin/rbash

6.修改用户的shell

#vi /etc/passwd

lamqlog:x:1004:1004::/home/lamqlog:/bin/rbash

7.修改用户密码

#passwd lamqlog

8.创建用户shell执行命令目录

#mkdir /home/lamqlog/.bin

9.修改bash配置文件,主要是指定PATH的读取

#vi /home/readonly/.bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startup programs

#PATH=$PATH:$HOME/bin

PATH=$HOME/.bin

export PATH

10.切换到只读账号使环境变量生效

su – lamqlog

source /home/readonly/.bash_profile

11.将允许执行的命令链接到$HOME/.bin目录

ln -s /usr/bin/wc  /home/lamqlog/.bin/wc

ln -s /usr/bin/tail  /home/lamqlog/.bin/tail

ln -s /bin/more  /home/lamqlog/.bin/more

ln -s /bin/cat  /home/lamqlog/.bin/cat

ln -s /bin/grep  /home/lamqlog/.bin/grep

ln -s /bin/find  /home/lamqlog/.bin/find

ln -s /bin/pwd  /home/lamqlog/.bin/pwd

ln -s /bin/ls  /home/lamqlog/.bin/ls

ln -s /bin/less /home/lamqlog/.bin/less

总结


这种方案是很笨的实现方式,如果各位公司有日志查询服务器,还是使用该方式实现。

人已赞赏
笔记

从我做起卸载notepad++

2020-10-12 13:45:14

笔记

ActiveMQ:java.io.IOException: Failed to recover data at position:2

2020-10-12 13:46:28

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索