linux指定nologin用户执行命令


1.为了安全,使用nologin账号来运行程序,

su -s /bin/bash -c "ls" www

这条命令到底做了什么呢?su -s 是指定shell,这里www用户是nologin用户,是没有默认的shell的,这里指定使用/bin/bash, -c 后面接需要运行的命令, 后面www是用www用户来运行

方法2:

sudo -u www command   这样也可以使用www用户来执行命令

 

crontab 使用其他用户做计划任务

如果是crontab -u -e 

sudo su - www crontab -e

或者crontab -u www -e

或者直接编辑/etc/crontab文件

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed

 

linux 普通用户设置某个命令执行权限:

1rpm -qa|grep –i sudo查看是否安装sudo包

2 vi /etc/sudoers添加下面一行配置

test QD-254.45=(ALL)NOPASSWD: /sbin/iptables,/sbin/ethtool

test普通用户名

QD-254.45代表主机名;ALL代表所有主机,否则以hostname命名仅指在本机上具有该sudo权限

(ALL)指该普通用户可以以所有用户的权限来执行命令,可以填其他用户

NOPASSWD: 使sudo执行命令时不再需要密码

/sbin/iptables 具体命令,多个以逗号间隔

 

使用:

切到普通用户下su – mike

sudo /sbin/iptables –nvL即可执行

此时如果没有NOPASSWD:设置的话,将会提示输入密码,此密码是普通用户自己的密码

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM