使ssh记住密码
前面介绍过Conemu , Msys2工具,提升了windows本地文件操作的效率,但使用ssh时候,总需要重新输入密码,不能像SercurityCRT等工具记住密码,使用时不是很爽快。
其实通过sshpass 工具和python脚本就可以实现ssh记住密码的功能。
首先,通过pacman -S sshpass 安装sshpass
然后再编写 python脚本 如下:
#!/usr/bin/python2
import io,os,pickle,getopt,sys DataFile='/c/Users/zhoushuang/bin/h.dat'
Hosts=[] def loadHosts():
global Hosts
if os.path.isfile(DataFile):
with open(DataFile,'rb') as f:
Hosts = pickle.load(f)
else:
with open(DataFile,'wb') as f:
pickle.dump(Hosts,f) def saveHosts():
global Hosts
with open(DataFile,'wb') as f:
pickle.dump(Hosts, f) def printHosts():
global Hosts
seq = 1
nnu = 4
s = io.BytesIO()
for item in Hosts:
s.write(str(seq)+')'+item[0]+'\t')
if 0==seq%nnu:
s.write('\n')
seq += 1
s.write('\n')
print s.getvalue() def exessh(args):
os.execlp('sshpass', 'sshpass', '-p',args[1],'ssh',args[0]) def select():
global Hosts
printHosts()
si=input('Select:')
if si>0:
si-=1
exessh(Hosts[si])
elif si < 0 :
si=abs(si)
del Hosts[si-1]
saveHosts() def updateHosts(args):
global Hosts
flag=True
for it in Hosts:
if it[0]==args[0]:
it[1]=args[1]
flag=False
break
if flag:
Hosts.append(args)
saveHosts() def usage():
print ''' rssh is a python script, use sshpass to login ssh server, and save pwd.
rssh [-s] <user@host> <pwd> -- firt login to a host , must use-s
rssh -- list hosts then select certain host to login
rssh -h -- print help info''' # main process
loadHosts()
try:
opts, args = getopt.getopt(sys.argv[1:], "sh", ["start","help"])
if len(args) == 2 :
updateHosts(args)
for opt, arg in opts:
if opt in ('-s','--start') and len(args) == 2 :
os.execlp('ssh','ssh',args[0])
break
if opt in ('-h','--help'):
usage()
exit(0)
if len(args)==2 :
exessh(args)
select()
except getopt.GetoptError:
print "ERROR"
except KeyboardInterrupt:
pass
python 脚本的作用就是记住密码,并写入文件中。
以后采用此python 脚本登录远程机器,就能记住密码了,下次登录时可以直接选择要登录的机器。 效果如下:
zhoushuang@zhoushuang02 MSYS /c/Users/zhoushuang/bin
$ rssh
)mcbadm@192.168.127.140 )mcbadm@192.168.127.141 )mcbadm@192.168.127.136 Select:
使ssh记住密码的更多相关文章
- ssh 解决经常断开与记住密码功能
一.解决ssh经常自动断开问题 修改 /etc/ssh/sshd_config 其中对应项为 ClientAliveInterval 30 ClientAliveCountMax 3 表示每30秒发一 ...
- ssh免密码快速登录配置
使用ssh登录服务器的时候,需要输入ip地址.端口.用户名.密码等信息,比较麻烦,容易输错.还好,通过客户端和服务器的配置参数,可实现免密码快速登录.服务器可通过保存客户端的公钥,用于验证客户端的身份 ...
- centos配置ssh免密码登录
master.slave1两台机器实现ssh免密码登录,user:hadoop,passwd:123456 1.设置master: vi /etc/sysconfig/network hostname ...
- ssh免密码登录之分发密钥
ssh免密码登录之分发密钥 1.ssh免密码登录 密码登录和密钥登录有什么不同? 密码登录(口令登录),每次登录都需要发送密码(ssh) 密钥登录,分为公钥和私钥,公钥相当于锁,私钥相当于钥匙 1.1 ...
- cookie、session及实现记住密码,自动登录
在登录帐号.密码框下,有三种帐号登录模式可供选择,用户可根据自己的具体情况选择其中一种适合自己的模式. 1.网吧模式:勾选网吧模式后,登录的帐号会在歪歪注销/退出的时候自动清除,不会留在登录框中,可以 ...
- 仅前端cookie之记住密码
参考文章给忘了...,我就在他基础上修改了一些,但至于安全性,我没弄md5,所以安全系数应该为0 <!DOCTYPE html> <html lang="en"& ...
- Cookie实现记住密码的功能
一.什么是Cookie cookie是一种WEB服务器通过浏览器在访问者的硬盘上存储信息的手段.Cookie的目的就是为用户带来方便,为网站带来增值.虽然有着许多误传,事实上Cookie并不会造成严重 ...
- git 配置 https和ssh 免密码登录 常用操作命令
git 配置 https和ssh 免密码登录 一. 区分https clone 和 ssh clone 不同的克隆方式导致校验方式不同,对应的免秘方式也不一样. https通过记住账号密码免登,ssh ...
- jenkins发布项目到远程主机上,配置linux使用SSH免密码登录
一.首先要配置两台linux如何使用SSH免密码登录,这样脚本执行scp命令以及远程执行脚本都不需要输入密码: A为本地主机(即用于控制其他主机的机器,jenkins服务器) ; B为远程主机(即被控 ...
随机推荐
- 安装less/sass
安装sass npm i node-sass 安装wepy-compiler-sass插件 npm install wepy-compiler-sass --save-dev 在我的项目中使用才有用.
- c++ 珊格画椭圆
#ifndef _TEST_H #define _TEST_H #include <iostream> #include <math.h> using namespace st ...
- WPF中打开网页的两种方法
1.浏览器打开 Process proc = new System.Diagnostics.Process(); proc.StartInfo.FileName = "http://www. ...
- GO make&new区别
自:http://www.cnblogs.com/ghj1976/archive/2013/02/12/2910384.html 1.make用于内建类型(map.slice 和channel)的内存 ...
- rethinkDB python入门
Start the server For a more detailed look, make sure to read the quickstart. $ rethinkdb Import the ...
- Spring源代码分析:PropertiesLoaderSupport
概述 Spring PropertiesLoaderSupport是一个抽象基类,它抽象了从不同渠道加载属性的通用逻辑,以及这些属性应用优先级上的一些考虑.它所提供的这些功能主要供实现子类使用.Spr ...
- firewall-cmd命令详解
https://blog.csdn.net/GMingZhou/article/details/78090963 实例 # 安装firewalld yum install firewalld fire ...
- JDK安装及Java环境变量配置
1.JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html. 2.点击A ...
- REST架构原则初探
目录 什么是RESTful架构? REST 架构原则 资源(Resource) 表现层(Representation) 状态转换(State Transfer) 无状态通信原则 RESUful API ...
- ISO/IEC 9899:2011 条款5——5.2.1 字符集
5.2.1 字符集 1.两个字符集和它们相关联的依次顺序应该被定义:写在源文件中的集合(源字符集),以及在执行环境中被解释的集合(执行字符集).每个集合此外被划分为一个基本字符集,其内容由本子条款给出 ...