当前位置:  技术问答>linux和unix

SHELL脚本中su切换用户,执行脚本时如何避免出现密码输入提示??

    来源: 互联网  发布时间:2017-03-09

    本文导语:  在SHELL脚本中切换到另一个用户,想直接将密码也写在脚本中。因为密码输入不能让执行脚本的人来做。而是我事先弄好的。 有什么tool可以实现这个呢 | 可以使用expect 脚本 搜一下,网上很...

在SHELL脚本中切换到另一个用户,想直接将密码也写在脚本中。因为密码输入不能让执行脚本的人来做。而是我事先弄好的。
有什么tool可以实现这个呢

|
可以使用expect 脚本
搜一下,网上很多例子

|
这些通过expect 脚本都可以实现,expect就是模拟手工交互的过程

例如
#!/usr/bin/expect

set password 123
spawn scp ./south_db.sql root@135.252.234.118:~
expect -nocase "password: "
send "$passwordr"
expect eof

|

你这是用root的scp 直接用密码还不安全  用expect就把root密码暴露在文件里了

采用无密码公钥认证就ok啦!!
在现在的客户端机器里用ssh-kegen -b 2048 生成密钥对 在要求输入密码的时候直接回车 然后会在你的~/.ssh下生成一个公钥和密钥
即id_rsa,id_rsa.pub  然后chmod 600 ~/.ssh/id_rsa   然后用scp ~/.ssh/id_rsa.pub   root@135.252.234.118:/root/id_rsa.pub
把公钥id_rsa.pub传到服务器上去

接下来是在服务器端135.252.234.118的root用户的设置 
mkidr -p ~/.ssh && chmod 700 ~/.ssh
cat ~/id_dsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
修改/etc/ssh/sshd_config把
PasswordAuthentication  yes
改成
PasswordAuthentication no
然后重启sshd

好了这下从客户端的root用scp向服务器传东西就不用密码了

|
熊猫的这个好专业和安全呀!公司服务器服务不能停。回家上虚拟机上试试去
----------------------
我都是用密钥认证的rsync和scp备份的。 只要你操作正确 服务器不会停的 一点事都没有。不过你第一次弄的话 在虚拟机上测试一下是完全之策。

|
不输入密码有2种方式
1:expect脚本
2 公钥

    
 
 

您可能感兴趣的文章:

  • shell脚本如何调用另外一个shell脚本的函数?
  • 急救!关于Shell脚本删除过期文件的问题,Shell脚本达人乱入
  • shell 脚本中命令别名在脚本外无法使用
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • C语言调用shell脚本后,通过何种方法能获取脚本中变量的值
  • 想用shell脚本定时执行另一个脚本
  • 一个shell执行另一个带参数shell脚本????????????
  • NOSQL iis7站长之家
  • Shell脚本调用Sql脚本并向其中传递变量
  • 请问,Shell中如何执行另外一个Shell脚本?
  • 如何传递参数给linux shell 脚本(当脚本从标准输入而不是从文件获取时)
  • nohup执行的shell脚本,全局变量不能传递到脚本中使用吗?
  • cd、zip等命令在shell提示符下能执行,在shell脚本中为什么不能执行呢?
  • shell脚本问题 关于父脚本和子脚本的问题
  • shell脚本错误输出
  • 请教shell脚本启动程序
  • 关于shell脚本的。
  • 关于arm linux下的别名配置脚本如何在进入用户时让shell执行的问题,如bashrc,profile,.bash_profile等脚本,寻求高手解答
  • 高分请教关于Shell脚本执行中断问题?
  • linux shell脚本
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • 如何在shell脚本中切换目录?
  • UNIX SHELL实现su用户切换功能
  • 在shell里切换用户要怎么写呢?
  • 请问如何在SHELL脚本里切换目录?
  • 鼠标不能用的情况下,VMWARE里的redhat9怎么从X切换到shell
  • linux X-Window 切换至 shell??
  • 怎样在shell里用su来切换用户
  • 从root切换到另一个用户执行命令,shell脚本怎么写:
  • 我想在shell中切换用户而不用输入密码,应该怎么做?
  • 用shell脚本实现自动切换内网和外网实现高可用
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • linux bash shell命令:grep文本搜索工具简介
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • shell变量和子shell的问题请教
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • 请问“当前shell”和“子shell”的区别?
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • 怎么知道当前是B_SHELL 还是C_SHELL
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • 用户登陆后运行某SHELL退出SHELL就回到LOGIN是怎么作到的?
  • 怎么写shell代码 写好shell怎么运行?
  • 请问一个shell中如何获取这个shell自身抛出的错误?
  • 非登录shell是什么 意思,和登录shell有什么区别啊
  • Solaris 8中修改root的shell为一个非法的Shell后怎么办?
  • 各位Shell高人,如何取得Shell的第10个入口参数?$10不行啊,急!
  • shell 编程 执行shell新建多个终端 并执行程序
  • 如何在一台机器上的shell中执行另外一台机器上的shell
  • 在shell中的交互问题,现在需要在shell结束时按某键或任意键
  • 请问什么是shell编程?一般都用shell编程实现什么?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3