zoukankan      html  css  js  c++  java
  • 如何在单行中使用带密码的SSH命令

    我们使用SSH访问Linux香港服务器最常用的方式之一。事实上,ssh也被用来访问一些防火墙、路由器和其他类似设备。在本教程中,我们将学习如何在单行命令中使用带密码的SSH命令。
    我们为什么需要这样做呢?
    比如你想访问服务器或运行一个脚本的命令,自动运行使用crontab等,或者你只是偷懒。不管是什么情况,有一个问题是肯定的,那就是这是最不安全的访问服务器的方式之一,因为你会把用户名和密码泄露给任何有权限访问系统的人,因为命令会被存储在历史记录中,也可以在脚本中看到密码。
    有其他方法可以安全地SSH服务器,而不必输入用户名和密码。为此,我们可以使用SSH密钥,公共/私人SSH密钥允许服务器使用证书来验证服务器的凭证,我们不需要输入任何用户名或密码(尽管我们也可以使用密码口令来验证证书)。
    但即使你需要使用单行命令来使用带密码的ssh命令,那么请阅读前面的文章。我们将讨论如何使用带密码的单行本ssh命令的两种方法。
    1、使用'SSHPASS'命令
    Sshpass命令是一个非常好用的Linux命令,它提供了一个简单的非交互式ssh登录方式,并会为你输入ssh密码。我们需要在系统中安装这个命令。
    对于Ubuntu
    $ sudo apt install sshpass
    对于CentOS/RHEL
    SSHPASS命令在EPEL仓库中是可用的,所以我们需要先安装它。
    # yum install epel-release
    安装完成后,运行以下命令。
    # yum install sshpass
    现在让我们看看如何使用sshpass命令来使用带密码的ssh命令。
    # sshpass -p "ENTER PASSWORD HERE" ssh testuser@192.168.10.10。
    一个例子是:
    # ssh -p "MY@Password" ssh shusain@192.168.10.10
    请注意,我们在这里使用了选项 "p "来提及sshpass命令的密码。但是如果我们需要使用自定义端口来访问服务器上的ssh呢。这里也是一个例子。
    # ssh -p "MY@Password" ssh -p 2222 shusain@192.168.10.10。
    所以sshpass的基本语法是,使用sshpass命令,然后是sshpass的选项,然后使用你通常使用的ssh命令。现在我们来讨论一下第二种方法。
    2、使用'EXPECT'命令
    这是另一个可以用于带密码ssh命令的命令。要在Linux系统上安装EXPECT命令,请运行以下命令。
    Ubuntu
    $ sudo apt install expect
    CentOS/RHEL
    Expect命令在EPEL仓库中是可用的,所以我们需要先安装它。
    # yum install epel-release
    安装完毕后,运行以下命令在系统上安装期望命令。
    # yum install expect
    现在要使用的一次衬托命令期待ssh的命令是。
    # expect -c 'spawn ssh shusain@192.168.10.10 ; expect "password:"; send "MY@Password/r"; interact'
    要解释一下这个问题。
    当与 expect 命令一起使用时,-c 将会在其他命令之前先执行一个命令。
    expect "password: "将查找密码的提示。
    send “MY@Password "将在提示时发送密码(在输入密码后加上"/r")。
    例如,这也可以在脚本中使用。
    #!/usr/bin/expect -f
    spawn ssh shusain@192.168.10.10
    expect “password:”
    send “MY@Password ”
    至此,我们关于如何在单行中使用带密码的SSH命令的教程就完成了。欢迎访问A5互联https://www.a5idc.net/了解更多。

  • 相关阅读:
    git版本库管理介绍,撤销git pull操作
    【laravel5.4】自定义404、503等页面
    【laravel5.4】{{$name}}、{{name}}、@{{$name}} 和 @{{name}} 的区别
    python 了解一点属性的延迟计算
    python 了解一下__dict__
    excel怎么把一个sheet的 全部内容打印到一页纸上
    python 简单了解一下 描述器
    python 调用父类方法, 重写父类构造方法, 不显式调用,会报错
    Python 今天抽空学习了@Property
    python 语法糖是什么意思
  • 原文地址:https://www.cnblogs.com/a5idc/p/13924150.html
Copyright © 2011-2022 走看看