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