用shell脚本为ubuntu自动添加用户,并限定通过ssh连接该用户只能执行特定某个(或某几个)程序

  • Post author:
  • Post category:其他
         根据项目需求,需要实现为ubuntu的SSH添加一个用户,并且该用户只具有reboot功能。(实现环境为ubuntu 10.10)

         实现分为两步:1.shell脚本自动添加用户 ;2.限定用SSH连接该用户只能执行重启功能。

        1.shell脚本自动添加用户

         由于该操作需要对大量机器进行,不能手动去一个个的添加用户,需要调用脚本自动添加,经过综合网上资料添加用户脚本如下:

         

#! /bin/bash

$USER=yourusername             //用户名

useradd $USER

passwd $USER <<eof

yourpasswd                    //第一次输入密码

yourpasswd                    //再次输入确认密码

eof

       通过用程序调用该脚本,可以自动创建用户,并自动输入密码。若需批量添加,在此之上循环拓展即可。

       2.限定用SSH连接该用户只能执行重启功能。

       打开 

   gedit /etc/passwd

 

   具体对该文件的描述可见
http://wade6.iteye.com/blog/1965579

   从而可以指定某用户的启动程序为自己想要的程序,例如

   abc:x:1002:1004::/home/abc:/sbin/reboot

      则用户abc启动的时候将会执行reboot命令。

      由于reboot只能由root用户执行,需要将reboot的执行权限拓展   :chmod u+s /sbin/reboot  (增加权限)    若需回复chmod u-x /sbin/reboot

     以上能实现登陆abc用户时,系统自动重启。

 

     若是用户不需要直接重启,需要在自己输入reboot的情况下重启,则可以用脚本实现test.sh:

 

#!/bin/bash  

  

REBOOT_CONDITION=reboot  

until [ “$var1” = “$REBOOT_CONDITION” ]  

do  

 echo -n “(just for reboot)$/ ”  

 read var1   

done

reboot    

exit 0

给予test.h 执行权限,然后指定

abc:x:1002:1004::/home/abc:/bin/test.sh   

分享个360wifi驱动,https://page68.ctfile.com/fs/14253468-201549140


版权声明:本文为WC270607563原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。