如何使用ssh实现主机间切换
答案:2 悬赏:50 手机版
解决时间 2021-02-04 13:09
- 提问者网友:戎马万世
- 2021-02-04 09:57
如何使用ssh实现主机间切换
最佳答案
- 五星知识达人网友:一把行者刀
- 2021-02-04 10:54
sshm试试。。
全部回答
- 1楼网友:酒安江南
- 2021-02-04 11:06
1. 什么是ssh
ssh 为建立在应用层和传输层基础上的安全协议。ssh 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。ssh是每一台linux电脑的标准配置,但是在windows系统中默认是没有安装ssh的,需要安装ssh相关服务端软件,比如freesshd。
2. ssh可以用来做什么
ssh可以用于远程登录主机,登录方式通常有两种:口令登录和公钥登录
一:口令登录:通过在服务端设定的用户名和密码进行登录,每次都登录都需要填写密码
二:公钥登录:通过一对公钥和私钥登录,公钥存放在服务端私钥存放在客户端,在登录时服务端向客户端发生一个随机字符串,然后客户端通过私钥先进行加密然后发生到服务端,在服务端接受和用公钥进行解密,然后匹配是否正确解密来验证登录,注意:存在在服务端的公钥名称和用户名一致,已区分不同用户不同的公钥;这样每次就可以直接用公钥登录省去了密码的繁琐。
ssh可以用户服务端和客户端之间双向文件传输
3. sharpssh与ssh服务端freesshd
sharpssh是一个用c#实现的ssh客户端组件,用户可以根据需要修改使用改组件已满足自己的需求。
注意:在官网下载sharpssh会因为主机为安装mono而出现mono.security.dll的引用错误,只需要下载m...1. 什么是ssh
ssh 为建立在应用层和传输层基础上的安全协议。ssh 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。ssh是每一台linux电脑的标准配置,但是在windows系统中默认是没有安装ssh的,需要安装ssh相关服务端软件,比如freesshd。
2. ssh可以用来做什么
ssh可以用于远程登录主机,登录方式通常有两种:口令登录和公钥登录
一:口令登录:通过在服务端设定的用户名和密码进行登录,每次都登录都需要填写密码
二:公钥登录:通过一对公钥和私钥登录,公钥存放在服务端私钥存放在客户端,在登录时服务端向客户端发生一个随机字符串,然后客户端通过私钥先进行加密然后发生到服务端,在服务端接受和用公钥进行解密,然后匹配是否正确解密来验证登录,注意:存在在服务端的公钥名称和用户名一致,已区分不同用户不同的公钥;这样每次就可以直接用公钥登录省去了密码的繁琐。
ssh可以用户服务端和客户端之间双向文件传输
3. sharpssh与ssh服务端freesshd
sharpssh是一个用c#实现的ssh客户端组件,用户可以根据需要修改使用改组件已满足自己的需求。
注意:在官网下载sharpssh会因为主机为安装mono而出现mono.security.dll的引用错误,只需要下载mono.security.dll重新引用即可。
我在windows7 vs2012的环境下测试官网下载的sharpssh项目升级成功,解决方案如下:
其中有两个项目:examples,sharpssh顾名思义,examples是使用示例,sharpssh就是真正的实现项目,设置examples为启动项,运行效果如下:
可以看到,示例为我们提供了16个功能项,再次我们需要测试远程登录和文件传输,使用第13, 和16项测试即可,同时也会用到第5项生成公钥私钥对;
客户端sharpssh已经实现了,接下来在windows系统中就需要安装客户端了,这里选择freesshd作为客户端。下载下来直接下一步下一步安装,安装完成后运行会提示你是否生成key选择是即可,同时会安装freesshdservice服务,选择关闭该服务;
此时可以看到支持telnet和ssh服务,且都关闭,到此步客户端服务端都已经准备就绪,下面就进行我们的登录测试和文件传输测试吧;
4. 远程登录执行命令
上面提过,登录有两种方式,口令登录和公钥登录,先介绍口令登录吧;
口令登录:即在服务端freesshd上创建一个用户名和密码,使用此密码口令登录
首先在freesshd上的users选项中点击add弹出添加用户界面,然后login填写用户名,authorization选择password stored as sha1 hash 然后填写密码和重复密码,勾选该用户可用服务,如下图,创建了用户名和密码都是test:
然后我们选择ssh项,将use new console engine项的勾选去掉已防止中午乱码,如图:
选择确定即可创建成功,然后回到主界面我们打开ssh服务
如上图所示即表示ssh服务已经成功开启;但是有可能会错误:常见原因是地址已使用,这是端口号22已经被使用造成的,关闭该端口的进程即可。
接下来我们运行我们的sharpssh进行登录测试吧。
我们选择第13项,然后输入远程地址i(由于服务端就在本机所以是127.0.0.1),然后不选择公钥登录,然后输入密码,连接成功,执行date命令查询当前时间:
现在我们测试公钥登录:
公钥登录需要先生成公钥私钥对,我们选择第5项keygen来生成,命名为test(和用户名一致),sig type选择dsa, 然后comment为空弹出窗口输入passphrase我们不输入直接选择ok,这样就在sharpssh的bin\debug目录下生成了我们的test的公钥私钥两个文件。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯