Windows上安装配置SSH教程(6)——综合应用:在Windows上实现SSH远程登陆与文件传输
—————————————————
声明:本教程现已经弃用。由于客户端同时安装Cygwin和OpenSSH for Windows会出现问题(Cygwin的shell下无法使用ssh命令),建议直接在客户端使用Cygwin方式安装SSH,不要使用OpenSSH for Windows。
新教程连接:
手动方式:http://www.cnblogs.com/feipeng8848/p/8583768.html
脚本自动方式:http://www.cnblogs.com/feipeng8848/p/8583780.html
—————————————————
指导思想:服务端和客户端只要都安装了OpenSSH就能使用SSH协议实现SCP。
—————————————————
服务器端操作系统:Windows XP
客户端操作系统:Windows10
安装与配置顺序
1.服务端安装OpenSSH
2.服务端配置OpenSSH
3.客户端安装OpenSSH
4.客户端安装WinSCP
5.客户端安装Cygwin
6.客户端安装Tcl与Expect
7.编写Expect脚本实现自动登陆并下载文件
————————————————
下面逐步介绍安装配置方法
说明:局域网内,请先用交换机把计算机连接起来,设置好IP地址。
1.服务端安装OpenSSH
下载安装包:https://sourceforge.net/projects/sshwindows/
除了修改软件的安装目录其他都是一路默认选项,Next到最后。



2.服务端配置OpenSSH
win+r 打开运行,输入cmd打开控制台执行如下操作
先cd到bin目录
然后输入如下命令(分两次执行,注意命令中的参数是小写的L)
mkgroup -l >> ..\etc\group
mkpasswd -l >> ..\etc\passwd

如果能在C:\OpenSSH\etc目录下找到group文件和passwd文件即说明上面两个命令执行成功。这两个文件没有扩展名。
接下来在服务器的C:\OpenSSH目录上创建home目录、home下创建用户目录(以Adminstrator为例),用户目录下创建.ssh目录。建议使用命令,右键新建文件夹的话无法将文件夹命名为.ssh


使用写字板打开C:\OpenSS\etc\sshd_config文件,检查几个设置是否设成下面这样,确保去除前面的#号,括号中的汉字是说明该行代码的意思,sshd_config文件中并没有这些。
Protocol
PermitRootLogin no (禁止root账户登陆)
PermitEmptyPasswords no (禁止没有密码)
PasswordAuthentication yes (是否允许密码登陆,yes是允许,no是禁止)
RSAAuthentication yes
PubkeyAuthentication yes (允许公钥登陆)
AuthorizedKeysFile .ssh/authorized_keys (公钥目录)

然后修改注册表,为软件指定/home的目录
运行(win+r)里输入regedit,打开注册表,然后找到如下项
[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/home] "native"="D:\\OpenSSH\\home" "flags"=dword:0000000a
把"native"改成你自己的/home所在目录,此目录就是默认的登陆目录,下图的设置就是默认登陆目录为:C:\OpenSSH\home

输入如下命令启动服务:
net start opensshd

到这里说明已经服务端已经安装成功了OpenSSH并成功开启了服务,需要指出的是以上截图有一些是在Win10下截的,这部分与在XP上是一样的。
以Administrator账户为例,设置下Windows XP登陆密码(也就是平时的登陆密码,我设置为123456),设置好IP地址(我设置为192.168.16.1)
现在,就可以使用客户端软件登陆了。
3.客户端安装OpenSSH
现在开始配置客户端,首先在要客户端安装OpenSSH,使用上面为服务端安装一样的安装包


配置的时候同样要cd到bin目录下执行这两个命令

如果能在C:\OpenSSH\etc目录下找到group文件和passwd文件即说明上面两个命令执行成功。这两个文件没有扩展名。
4.客户端安装WinSCP
客户端安装WinSCP教程链接:http://www.cnblogs.com/feipeng8848/p/8568149.html
5.客户端安装Cygwin
到第4步就可以使用图形界面的WinSCP手动远程传输文件了,要想实现脚本自动登陆与传输,请继续执行后面的步骤。
客户端安装Cygwin教程链接:http://www.cnblogs.com/feipeng8848/p/8555648.html
6.客户端安装Tcl与Expect
打开Cygwin Terminal,输入如下命令安装Tcl
apt-cyg install tcl
输入如下命令安装Expect
apt-cyg install expect
验证安装是否成功,输入如下命令
which tclsh

同理测试Expect

写一个helloworld脚本测试Tcl(脚本文件名:TestTcl.tcl)

7.编写Expect脚本实现自动登陆并下载文件
编写脚本文件
#!/usr/bin/expect
spawn ssh Administrator@192.168.16.1
expect "*password:"
send "123456\r"
expect "*#"
执行该脚本即可链接上服务器:

编写脚本文件
#!/usr/bin/expect
spawn scp Administrator@192.168.16.1:/home/Administrator//ID.txt /home
expect "*password:"
send "123456\r"
expect "*#"
执行该脚本即可从服务端把/home/Administrator/33/ID.txt 文件复制到本地的/home目录下
至此,可实现SSH远程联机与下载文件。
————————————————————
知识点汇总:http://www.cnblogs.com/feipeng8848/p/8559803.html
————————————————————
Windows上安装配置SSH教程(6)——综合应用:在Windows上实现SSH远程登陆与文件传输的更多相关文章
- Windows上安装配置SSH教程(8)——综合应用:在Windows上使用手动方式实现SSH远程登陆与文件传输
服务器端操作系统:Windows XP 客户端操作系统:Windows10 安装与配置顺序 1.服务端安装OpenSSH 2.服务端配置OpenSSH 3.客户端安装OpenSSH 4.客户端安装Wi ...
- Windows上安装配置SSH教程(9)——综合应用:在Windows上使用脚本实现SSH远程登陆与文件传输
服务器端操作系统:Windows XP 客户端操作系统:Windows10 安装与配置顺序 1.服务端安装OpenSSH 2.服务端配置OpenSSH 3.客户端安装Cygwin 4.客户端安装Tcl ...
- 在Docker上安装配置Oracle教程
地址:https://github.com/wnameless/docker-oracle-xe-11g Docker shell 下: docker pull wnameless/oracle-xe ...
- Windows上安装配置SSH教程(4)——WinSCP+OpenSSH 使用公钥自动登陆
-------------------- 知识点汇总:http://www.cnblogs.com/feipeng8848/p/8559803.html -------------------- 重要 ...
- Windows 7上安装配置TensorFlow-GPU运算环境
Windows 7上安装配置TensorFlow-GPU运算环境 1. 概述 在深度学习实践中,对于简单的模型和相对较小的数据集,我们可以使用CPU完成建模过程.例如在MNIST数据集上进行手写数字识 ...
- windows server 2008R2 上安装配置freesshd
从FREESSHD官方网站下载最新的软件版本,下载地址是http://www.freesshd.com/?ctt=download 双击刚刚下载的freeSSHd.exe进行安装,安装时其他都是默认安 ...
- Windows 下安装 Oracle 12c 教程
原文 Windows 下安装 Oracle 12c 教程 申明:本文原作者:Jmq 本文给大家带来的是 Oracle 12C 的安装教程. 1.准备 1.1 下载 Oracle 12c 安装程序 ...
- QT学习之windows下安装配置PyQt5
windows下安装配置PyQt5 目录 为什么要学习QT 命令行安装PyQt5以及PyQt5-tools 配置QtDesigner.PyUIC及PyRcc 为什么要学习QT python下与界面开发 ...
- Emacs 安装配置使用教程
Emacs 安装配置使用教程 来源 https://www.jianshu.com/u/a27b97f900f7 序|Preface 先来一篇有趣的简介:Emacs和Vim:神的编辑器和编辑器之神 - ...
随机推荐
- 第15章-输入/输出 --- 理解Java的IO流
(一)理解Java的IO流 JAVA的IO流是实现输入/输出的基础,它可以方便地实现数据的输入/输出操作,在Java中把不同的输入/输出(键盘.文件.网络连接等)抽象表述为"流"( ...
- XML 和 java对象相互转换
XML 和 java对象相互转换 博客分类: XML 和 JSON 下面使用的是JDK自带的类,没有引用任何第三方jar包. Unmarshaller 类使客户端应用程序能够将 XML 数据转换为 ...
- golang升级
系统安装软件一般在/usr/share,可执行的文件在/usr/bin,配置文件可能安装到了/etc下等. 文档一般在 /usr/share 可执行文件 /usr/bin 配置文件 /etc lib文 ...
- esp-12e折腾
寒假前就从x宝买了esp-12e以及esp32s,当时似乎是想给自己的蓝牙开门升级换代?esp32s拿来过度linux? 寒假放在书包拿回去以为有时间会玩玩,没想到一直耽搁到现在.前两天才拿出来,网上 ...
- SOFA 源码分析— 事件总线
前言 大部分框架都是事件订阅功能,即观察者模式,或者叫事件机制.通过订阅某个事件,当触发事件时,回调某个方法.该功能非常的好用,而 SOFA 内部也设计了这个功能,并且内部大量使用了该功能.来看看是如 ...
- 分布式任务调度——quartz + spring + 数据库
项目中使用分布式并发部署定时任务,多台跨JVM,按照常理逻辑每个JVM的定时任务会各自运行,这样就会存在问题,多台分布式JVM机器的应用服务同时干活,一个是加重服务负担,另外一个是存在严重的逻 ...
- 重温《STL源码剖析》笔记 第六、七、八章 next_permutation (字典序)
源码之前,了无秘密 ——侯杰 第六章算法 next_permutation 比如:01342 -> 01423 -> 01432 方法:从尾端开始往前寻找两个相邻的元素,令第一个元素为* ...
- 批处理(Batch)---批处理脚本。
批处理(Batch),也称为批处理脚本.顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中.批处理文件的扩展名为bat .目前比较常见的批 ...
- 如何通过CSS实现背景图片自动平铺或拉伸至整个屏幕(自适应大小)
默认情况下,通过HTML代码的BODY标签设置好背景图片<body background="x.jpg"> 后,图片会自动横向和纵向平铺.这就会产生一些美观上的问题. ...
- CentOS的启动流程
因6和7俩个系列的启动流程有区别,所以我把他们分开来写 linux可看作是内核和根文件系统组成我们把内核单独拿出来总结一下 CentOS6系列启动流程 首先总结一下总体的流程,接下来展开来叙述:POS ...