Windows下利用Cygwin登录远程Linux

利用Cygwin搭建虚拟Linux环境,利用ssh登录其他Linux或者虚拟Linux环境,并实现无密码别名登录。

一. Windows电脑配置:

(1)配置Windows

1. 在防火墙进展规则里添加端口22,作为ssh的通信端口

2. 测试能否ping通对方主机。如果不同,则在系统服务开启文件和打印机共享服务,并设为为公用。远程地址也可对应配置。

3. Windows账户必须有密码

(2)安装Cygwin

1. 下载Cygwin的安装文件到F:\CygwinPackage (保存安装文件,以防重装)

2. 安装Cygwin在F:\Cywin,F:\Cywin\home下即为用户目录

    将package下载到F:\CygwinPackage 

    Package中选择安装openssh和openssl,版本可选。

(3)配置ssh

1. 以管理员身份运行Cygwin,查看ssh版本

ssh -V

2. 配置host

ssh-host-config

-- Should StrictModes be used? (yes/no) no

-- Should privilege separation be used? (yes/no) no

-- Do you want to install sshd as a service? yes

-- Enter the value of CYGWIN for the daemon: [] 

-- Do you want to use a different name? (yes/no) no

-- Create new privileged user account ? (yes/no) yes

-- 设置密码

-- 允许创建账户cyg_server

3. 配置sshd服务

    Win8: 在系统服务里找到CYGWIN sshd, 并进行设置账户为.\cyg_server

    Win7: 在系统服务里找到CYGWIN sshd, 并进行设置账户为系统或者同上

   设置完成后完毕Cygwin后再重新打开

4. 启动sshd服务:

net start sshd

5. 测试ssh命令

ssh localhost

    Win8下登录其他主机前需先登录localhost

6. 登录远程主机

ssh localhost

(4)实现无密码登录

1. 生成Public和Private key。生成的key在.ssh目录下

ssh-keygen -t rsa -C "[email protected]"

2. 向对方主机发送Public key

ssh-copy-id user@host

    Win8系统下如果提示key太open,则修改key权限:

chmod 6000 ~/.ssh/id_rsa

3. 无密码登录

ssh username@ip

    当本地key改变时,host先删除know_hosts,再重新登录

(5)别名登录

 在.ssh目录下打开config文件(如果没有就新建一个)添加如下内容:

	Host 登录名
	  HostName IP地址
	  User 用户名

登录时即可使用:

ssh 登录名

(6)多机共用同一个key的方法

  用scp将本地.ssh目录下的key复制到其他电脑的.ssh目录下即可

  如果提示key太open,则使用上面的命令修改key权限

(7)删除Cygwin和sshd服务的方法

1. 删除sshd服务

cygrunsrv --stop sshd

cygrunsrv --remove sshd

2. 删除Windows的Privilege Server账户

3. 删除Cygwin文件夹

4. 删除防火墙的端口22规则

二. Linux电脑配置

1. 安装openssh-server

sudo apt-get openssh-server

2. 启动sshd服务

net start sshd




你可能感兴趣的:(Cygwin)