ssh和sshpass

Posted Overboom

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssh和sshpass相关的知识,希望对你有一定的参考价值。

1. ssh指令基本用法

1.1 安装

(1)客户端
openssh-client,想登录别的机器的SSH需要安装
ubuntu有默认安装,如果没有则sudo apt-get install openssh-client,
(2)服务端
openssh-server,要使本机开放SSH服务就需要安装
sudo apt-get install openssh-server

1.2 启动ssh

sudo /etc/init.d/ssh start

1.3 配置

ssh-server配置文件位于/ etc/ssh/sshd_config,在这里可以定义SSH的服务端口,默认端口是22,你可以自己定义成其他端口号,如222。
然后重启SSH服务:

sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start

1.4 登录

使用以下方式登录SSH

ssh username@192.168.3.1 

username为192.168.3.1机器上的用户,需要输入密码

2. sshpass指令基本用法

在使用ssh登录远程服务器的时候,在执行完ssh user@ip后,要输入登录密码,有时候登录密码记不住,这样以来带来的很多的麻烦,有没有一种在ssh的参数中直接加入密码的方法呢?
安装sshpass

sudo apt-get install sshpass

sshpass用法:

Usage: sshpass [-f|-d|-p|-e] [-hV] command parameters
   -f filename   Take password to use from file
   -d number     Use number as file descriptor for getting password
   -p password   Provide password as argument (security unwise)
   -e            Password is passed as env-var "SSHPASS"
   With no parameters - password will be taken from stdin

   -h            Show help (this screen)
   -V            Print version information
At most one of -f, -d, -p or -e should be used

用法举例:

sshpass -p "6679836772" ssh root@192.168.211.100

以上是关于ssh和sshpass的主要内容,如果未能解决你的问题,请参考以下文章

使用sshpass和ssh实现无密码自动远程登录

sh 使用sshpass和bash。当您无法让人们使用ssh进行公钥认证时,请使用sshpass自动提供密码。钍

sshpass结合ssh和scp可以自动完成密码登录,无需手动输入密码

使用sshpass 和 ssh-copy-id批量拷贝公钥到远程主机

Linux 下方便的ssh非交互工具sshpass的安装与使用

ssh密钥分发之二:使用sshpass配合ssh-kopy-id编写脚本批量分发密钥: