LINUX添加只读用户(查日志专用)
参考博客:
https://blog.csdn.net/weixin_33794672/article/details/89621391 https://blog.csdn.net/yk10010/article/details/88976021 https://blog.csdn.net/hch15112345824/article/details/88816064 https://www.cnblogs.com/anech/p/6920509.html https://blog.csdn.net/bob_tthp/article/details/84936169 https://www.cnblogs.com/xiaochaoyxc/p/6206481.html https://blog.csdn.net/manyueonline/article/details/48913767?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
第一步:添加用户并设置能够在shell上使用的命令
#1.创建用户和登录shell
useradd -s /bin/bash test
这步不要指定rbash,否侧cd等內建命令无法使用
#2.修改用户密码
passwd test
#3.创建用户shell执行命令目录
mkdir /home/test/.bin
#4.root修改用户的shell配置文件
chown root. /home/test/.bash_profile
chmod 755 /home/test/.bash_profile
#5.修改bash配置文件,主要是指定PATH的读取
复制代码
[swallet@iZj6c6g9pt4wd4xt1xi69zZ ~]$ cat .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
#切换到只读账号使环境变量生效
su - test
source /home/test/.bash_profile
复制代码
#6.将允许执行的命令链接到$HOME/.bin目录
复制代码
ln -s /usr/bin/wc /home/test/.bin/wc
ln -s /usr/bin/tail /home/test/.bin/tail
ln -s /bin/more /home/test/.bin/more
ln -s /bin/cat /home/test/.bin/cat
ln -s /bin/grep /home/test/.bin/grep
ln -s /bin/find /home/test/.bin/find
ln -s /bin/pwd /home/test/.bin/pwd
ln -s /bin/ls /home/test/.bin/ls
ln -s /bin/less /home/test/.bin/less
ln -s /bin/tar /home/test/.bin/tar
第二步:在相应服务的log日志文件夹授权
chmod说明(u:与文件属主拥有一样的权限[a:所有人];+:增加权限;rwx:可读可写可执行) -R:递归所有目录和文件
chmod a+rwx -R logs
第三步:验证
在只读账号上
[test@iZj6c6g9pt4was4xt1xi69zZ cat_wallet]$ tail -100f logs/catalina.out
2020-03-26 14:31:44,126 DEBUG (BaseJdbcLogger.java:159)- ==> Preparing: SELECT id AS id,parent_id AS parensplay_orde AS mobileRegisterAmount,auth_register_amount AS authRegisterAmount,email_bind_amount AS emailBindAmount,transfer_CAT_status AS transferCatStatus,transfer_USDT_status AS transferUsdtStatus,transfer_CAG_status AS trAS rechargeGptStatus,cash_CAT_status AS cashCatStatus,cash_USDT_status AS cashUsdtStatus,cash_CAG_status AS cashCag
2020-03-26 14:31:44,128 DEBUG (BaseJdbcLogger.java:159)- <== Total: 110
2020-03-26 14:31:45,612 DEBUG (BaseJdbcLogger.java:159)- ==> Preparing: SELECT id AS id,parent_id AS parentId,parent_ids AS parentIds,`name`,nickname,logo_url AS logoUrl,child_status AS childStatus,hidden_status AS hiddenStatus,child_ids AS chi......
完美...............................................................................................................................................................................................