Cygwin是一个在windows平台上运行的unix模拟环境,它由两个组件组成:一个 UNIX API 库,它模拟 UNIX 操作系统提供的许多特性;以及 Bash shell 的改写版本和许多 UNIX 实用程序,它们提供大家熟悉的 UNIX 命令行界面。前一个组件是一个 Windows 动态链接库 (DLL)。后一个组件是一组基于 Cygwin DLL 的程序,其中许多是用未经修改的 UNIX 源代码编译的。它们合在一起提供大家熟悉的 UNIX 环境。官网下载地址:http://cygwin.com/install.html

安装Cygwin

一、下载完成后,直接运行,下一步时候会出现三种安装模式:

1.Installfrom Internet,这种模式直接从Internet安装,适合网速较快的情况;

2.downloadWithout Installing,这种模式只从网上下载Cygwin的组件包,但不安装;

3.Installfrom Local Directory,这种模式与上面第二种模式对应,当你的Cygwin组件包已经下载到本地,则可以使用此模式从本地安装Cygwin。

二、从上述三种模式中选择适合的安装模式,这里我们选择第一种安装模式,Cygwin组件下载完毕后会直接保存到本地,以便能够再次安装。选中后,点击“下一步”,如图所示:

三、这一步选择Cygwin的安装目录,默认安装位置是c:cygwin,你自己也可以选择安装目录,这里我选择D盘中,然后点击“下一步”,如图所示:

四、安装过程中从网上下载的Cygwin组件包的保存位置,是你上一步操作选择的目录,点击“下一步”,如图所示:

1.Direct Connection指定 Internet 连接;

2.如果你有代理服务器,选择“Use Internet Explorer ProxySettings”;

3.通过浏览器选项获得服务器名,选择使用代理,输入代理服务器的主机名和端口号。

五、通过Direct Connection连接,选择“下一步”,如图所示:

1.Cygwin默认情况下提供了多个下载镜像站点,因为这些站点是义务的镜像,单独一个下载点可能有风险,在其中选择一个下载站点即可(通常情况下它们是可用的,但有时可能因各种原因不可用)。通常情况下,建议选择离你比较近的那个站点。

2.指定一个站点,例如输入http://www.cygwin.cn,在User URL中填写这个地址,然后点add,就能将这个地址加到上面的镜像列表中,然后可以选择这个镜像进行安装。

六、通过http://mirrors.163.com用户连接,点击“下一步”,如图所示:

在此页面,你将选择要安装的包。默认情况下,Cygwin 基本包将不会安装 GCC,因此,你必须修改默认设置;将鼠标移动Devel边的加号(+)上,然后点击它展开Devel类;其中我们必须安装的组件包含:Binutils,gcc,gcc-mingw,gdb,如图所示:

binutils组件

gcc组件

gcc-mingw组件

gdb组件

选择完成之后,点击“下一步”,进入安装过程,此时等待安装结束,点击“完成”。

以后要安装新的安装包,或是更新,还是通过这个过程,运行setup.exe选择安装包即可

安装sftp

一、运行Cygwin 的安装程序,安装OpenSSH 和cygrunsrv,和上面安装一样,这个可以和上面的一起安装节省时间

二、安装好之后,添加一个环境变量:变量名为:CYGWIN,变量值为:ntsec tty;或者不添加环境变量,而是直接修改cygwin.bat文件,在@echo off之后加入“set CYGWIN=ntsec tty”即可。

三、进入Cygwin,运行ssh-host-config   -y;这将会把sshd装为Windows服务,结束后会提示你设置密码()

不断提示/var目录下的一些目录访问属性不对,用chmod命令改却没有反应,是因为磁盘格式为FAT32的话,Cygwin的chmod将没有作用。到Dos下用convert命令改:convert D: /FS:NTFS转换完成后,更改对应文件夹属性,

四、启动和停止sshd服务

可通过以下两个命令:
        启动服务:cygrunsrv --start sshd
        停止服务:cygrunsrv --stop sshd

五、此时我们ssh administrator@IP 或sftp  administrator@IP就可以连接登陆,不知道administrator 密码可以直接修改password administrator

六、配置不用输入密码的信任公钥环境

①、新建用户

直接在/home下处新建一个用户名的目录,然后直接设置密码

确认家目录、 .ssh目录权限为755

②、生成密钥对

a、在linux系统上生成密钥对

Administrator@pengyl-PC ~
$ cd /home/test/.ssh/Administrator@pengyl-PC /home/test/.ssh
$ ssh-keygen -t rsa  ;t type指定要创建的密钥类型。可以使用:"rsa1"(SSH-1) "rsa"(SSH-2) "dsa"(SSH-2);如果没有指定则默认生成用于SSH-2的RSA密钥
Generating public/private rsa key pair.
Enter file in which to save the key (/home/Administrator/.ssh/id_rsa):
# 按回车保存为: //.ssh/id_rsa,即当前用户的私钥
Enter passphrase (empty for no passphrase):
# 按回车,表示读取密钥时不需要密钥的密码
Enter same passphrase again:
Your identification has been saved in /home/Administrator/.ssh/id_rsa.
# 私钥保存信息
Your public key has been saved in /home/Administrator/.ssh/id_rsa.pub.
# 公钥保存信息
The key fingerprint is:
SHA256:Ul4woRXrab8DtADgpZnNiia2CeXoTO5XnoSU8i9h2X0 Administrator@pengyl-PC
# 密钥指纹
The key's randomart p_w_picpath is:
+---[RSA 2048]----+
|  ...   *o       |
| . B.  o +       |
|  * +.. o .      |
| * +  .+.o       |
|=+* + ooS.       |
|X o* + +oE       |
| *. * . ...      |
|.  o +    ..     |
| .. .     ..     |
+----[SHA256]-----+Administrator@pengyl-PC /home/test/.ssh
$

b、通过xshell、CRT等软件生成密钥对

③、将生成的密钥id_rsa.pub复制到用户目录的.ssh下,并重命名为authorized_keys,确认该文件的权限是644,

如果有多个客户端,依次将客户端公钥附加到服务器的authorized_keys文件内即可,

cat /tmp/id_rsa.pub >> authorized_keys

④、将生成的密钥id_rsa导入到要连接ftp的客户端,连接ftp服务

如通过xshell生成的密钥,工具栏里找到私钥,然后导入需要连接ftp服务的地方

注意事项

权限:如果配置完对等信任公钥,仍提示输入密码或者访问拒绝,则需要查看服务器的目录权限是否正确,家目录权限755,.ssh目录权限是755,authorized_keys文件权限是644

备份:authorized_keys不能出现空格等不是公钥的信息,否则公钥文件就会失效,每次附加新公钥时,养成变更前备份的好习惯

转载于:https://blog.51cto.com/ityunwei2017/1632251

win系统下Cygwin 安装和sftp环境搭建相关推荐

  1. vs 2017 建立 php,WIN10系统下OSG+VS2017或者vs2019环境搭建

    ** WIN10系统下OSG+VS2017或者vs2019环境搭建 ** 一.资料准备 1.OSG源码下载地址:http://www.openscenegraph.org/index.php/down ...

  2. Win10系统下Python安装和Geany环境配置的几点总结

    Win10系统下Python安装和Geany文本编辑器配置的几点总结 (START OF MY BLOG LIFE) 一.Python的安装 Python直接可以在官网下载(https://www.p ...

  3. Win系统下如何安装Maven教程

    本文须知:安装maven环境之前要先安装java jdk环境(没有安装java环境的可以先去看安装JAVA环境的教程)Maven 3.3+ require JDK 1.7 及以上. 第一步:下载mav ...

  4. win系统下nodejs安装及环境配置

    第一步:下载安装文件 下载nodejs,官网:http://nodejs.org/download/,我这里下载的是node-v0.10.28-x86.msi,如下图: 第二步:安装nodejs 下载 ...

  5. [转]win系统下nodejs安装及环境配置

    本文转自:http://www.cnblogs.com/linjiqin/p/3765390.html 第一步:下载安装文件 下载nodejs,官网:http://nodejs.org/downloa ...

  6. win系统下Scrapy安装

    打开cmd,输入pip install Scrapy,提示如下错误: Microsoft Visual C++ 14.0 is required. Get it with "Microsof ...

  7. win命令安装 安装cmake_win10下VSCode+CMake+Clang+GCC环境搭建教程图解

    打算用C/C++把基本的数据结构与算法实现一遍, 为考研做准备, 因为只是想实现算法和数据结构, 就不太想用VisualStudio, 感觉VSCode不错, 遂在网上找了一些教程, 结合自己的需求, ...

  8. Win:Win系统下安装Linux的Ubuntu系统的简介、安装之详细攻略

    Win:Win系统下安装Linux的Ubuntu系统的简介.安装之详细攻略 目录 安装图文教程 1.Ubuntu镜像下载 2.设置空间 3.下载并安装Ultraiso软碟通工具 4.及时备份 5.BI ...

  9. win10系统下nodejs安装及环境配置

    win10系统下nodejs安装及环境配置 一.下载对应的nodejs安装包 1.官网地址:https://nodejs.org/en/ (可以下载旧版本:打开 https://nodejs.org/ ...

最新文章

  1. linux 位置参数数组,JavaScript数组详解
  2. 使用JBoss Modules来模块化Java
  3. ITK:重新缩放图像
  4. 容器编排技术 -- Google Computer Engine入门
  5. java几种集合遍历速度对比
  6. ZetCode Python 教程
  7. java中怎样将字符串转化为date_java如何将string类型转为date类型?怎样转?
  8. 模拟地与数字地(转)
  9. Win8怎么在桌面显示我的电脑
  10. Tp-link路由器怎么设置端口映射 内网端口映射
  11. 东南亚金融服务商Pundi X正式加入 Achain 生态
  12. 推荐书籍:软件定义网络 SDN与OpenFlow解析
  13. 在Android Studio中隐藏APP的标题栏
  14. JVM新生代Eden和survivor区别
  15. python是什么意思,Python怎么读
  16. vk和uview表单图片上传
  17. Linux之汇编语言
  18. Zeroc-Ice(ice-Touch)详解与配置应用
  19. MATLAB实现多峰高斯函数拟合/多峰高斯分布函数拟合(MATLAB全代码)
  20. 一元二次方程组的输入

热门文章

  1. Homebrew正式支持苹果M1,程序员换新Mac又多了一条理由
  2. 在任天堂Switch上倒贴30块钱“加班”,我一个程序员还觉得很刺激
  3. XLNet团队:赢BERT靠的并不是数据集更大,公平对决也碾压对手
  4. RabbitMQ分布式集群架构
  5. 【跃迁之路】【658天】程序员高效学习方法论探索系列(实验阶段415-2018.12.02)...
  6. [转]Pass a ViewBag instance to a HiddenFor field in Razor
  7. 深入理解Spark:核心思想与源码分析. 3.9 启动测量系统MetricsSystem
  8. CodeForces 625A Guest From the Past
  9. 使用WCF传输DataTable:DataTable和Xml格式的字符串相互转换(C#)
  10. IOS 学习资料汇总(^_^)