用shell脚本为ubuntu自动添加用户,并限定通过ssh连接该用户只能执行特定某个(或某几个)程序
来源:互联网 发布:日本皇族知乎 编辑:程序博客网 时间:2024/05/21 11:48
根据项目需求,需要实现为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 执行权限,然后指定
实现分为两步: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
www.jiayifangshui.com
0 0
- 用shell脚本为ubuntu自动添加用户,并限定通过ssh连接该用户只能执行特定某个(或某几个)程序
- shell脚本-批量添加或删除用户
- 通过shell为MongoDB添加用户
- Ubuntu 添加新用户并制定目录和shell,并配置为root组用户|sudoer 修改
- Ubuntu 添加新用户并制定目录和shell,并配置为root组用户|sudoer 修改
- 限制用户只能执行某个存储过程
- shell脚本使用ssh命令连接主机,自动创建目录,分发程序,执行命令
- ansible 切换用户建立ssh连接并使用sudo 权限执行程序
- Windows shell 创建用户,并将service启动用户设为该用户
- Linux下通过EXPECT脚本自动执行ssh远程连接
- Linux下通过EXPECT脚本自动执行ssh远程连接
- 通过SSH,用root用户访问Ubuntu
- shell脚本批量添加用户
- shell脚本自动创建用户
- shell脚本 - 自动创建用户
- 禁止某个用户通过ssh登录
- Sql Server设置用户只能查看并访问特定数据库
- ubuntu上快速添加用户并将用户添加为sudoer
- 男友吃下一百片安定 女孩打来报警电话
- 对application/x-www-form-urlencoded、multipart/form-data和text/plain的认识
- 第三方士大夫
- Kafka命令行常用命令说明
- Windows下一个并发阻塞队列(BlockingQueue)
- 用shell脚本为ubuntu自动添加用户,并限定通过ssh连接该用户只能执行特定某个(或某几个)程序
- shape、selector的使用
- maven - package a jar with main class
- 使用UINavigationController后导致UIScollView尺寸变化(转)
- HDU 1159 Common Subsequence(LCS)
- Qt读写二进制文件
- ndk-build all Error: Cannot run program "ndk-build": Launching failed
- 从腾讯微信商标“失守”谈商标管理
- 【OpenCV入门教程之五】 分离颜色通道&多通道图像混合