最近做自动化测试,需要SSH自动登陆,不需要手动输入密码交互,于是需要SSH能够自动登陆。
从SSH客户端的命令看,可以通过-l 指定用户名login, -p指定Port, 但并没有提供密码参数
C:\Users\Test>ssh
usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
[-D [bind_address:]port] [-e escape_char] [-F configfile]
[-i identity_file] [-L [bind_address:]port:host:hostport]
[-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port]
[-R [bind_address:]port:host:hostport] [-S ctl_path]
[-w local_tun[:remote_tun]] [user@]hostname [command]
C:\Users\Test>
所以只能通过其他方法,
1. windows下安装openssh for windows
2. windows命令行 ssh-keygen -t rsa, 连续输入3个回车,生成私钥id_rsa和公钥id_rsa.pub
3. 把公钥id_rsa.pub拷贝到 远程主机上面(10.3.2.61)~/.ssh目录下面(自己创建.ssh目录)
同时修改id_rsa.pub文件名为authorized_keys
4. chmod 700 .ssh
chmod 600 authorized_keys
5. windows命令行 ssh tester@10.3.2.61登陆,发现不需要输入密码了
如果出现了登陆过程还是需要输入密码,则需要把 Windows电脑上面 ./ssh目录删掉
阅读(1240) | 评论(0) | 转发(0) |