首先参考上一篇安装服务器上的CYGWIN:

http://jingyan.baidu.com/article/7e440953eabd742fc0e2efae.html

上一篇中已经加入了GIT相关的包,这里就不再赘述。

然后添加git用户,在CYGWIN客户端输入:

net user git 123 /add

一般只是GIT用户用的话不需要加入管理员组。

随后切换windows用户,使用git用户登录,启动一次cygwin这时cygwin会自动创建用户的个人目录/home/git/以及更新其他一些配置文件

随后切回管理员用户操作。

在git用户的个人文件夹建立git容器:

git init --bare hellogit.git

参考上一篇文章把git也设置成使用秘钥文件登陆。

然后客户端安装TortoiseGit

安装完成后需要生成putty用的私钥,这个在登陆git服务器的时候会用到:

打开这个工具:

导入git用户的私钥

导入成功后点击save private key保存用户的私钥到其他2个秘钥相同位置。

然后再打开这个工具:

添加刚刚生成的ppk私钥

然后再tortoiseGit克隆和提交之类操作的时候,在这个地方设置这个PPK私钥:

现在就可以通过ssh的加密通道来连接GIT了,克隆地址是:

git@服务器IP:/~/git路径

然后用nat123可以把内网的git服务器开放到公网,通过域名穿透进来。没有公网固定IP也可以搭建GIT服务器供网上协作。

在http://www.nat123.com/注册并登陆。

充值30元可以自定义二级域名,不介意的话也可以用随机生成的二级域名 但是我不知道会不会被系统回收。

在这里添加端口映射,非网站 内网端口22 外网端口我是随机生成的默认值,这个要记住。充值30就可以自定义这个外网二级域名:最后确定保存。

在服务器上开启nat123客户端,登陆你的用户,此时你的git服务器就可以用域名从公网访问到了,地址如下:

ssh://git@外网域名:外网端口/~/git路径(相对于git用户目录)

ok就先记录这么多了,希望能帮到你。

另外如果GIT用户用秘钥一直登陆失败,可能是秘钥文件authorized_keys的所有权没有拿到,用chown更改一下文件所有者即可。

cygwin + git + nat123 30元搭建公网可访问的git服务器的更多相关文章

  1. 搭建通过 ssh 访问的 Git 服务器

    一.Git 协议 Git 可以使用四种主要的协议来传输数据:本地传输,ssh 协议,Git 协议和 HTTP 协议. Git 使用的传输协议中最常见的就是 ssh 了.大多数环境已经支持通过 ssh ...

  2. 1元搭建自己的云服务器&解析域名

    最近在学做微信开发,没有自己的域名和服务器就不得不寄人篱下,索性自己就到云主机上搭建了个服务器,但是水平有限弄了一个下午~~有自己的域名和服务器的好处相信不用我多说了.比如日后可以有自己域名的个性博客 ...

  3. Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)【转】

    jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...

  4. Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)

    jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...

  5. 一把鼻涕一把泪 搭建公网ftp服务器

    至于为什么要搭建公网ftp服务器,就当我心血来潮吧. ftp开源工具很多,咱用的是filezilla服务器.后来为了方便搭建web服务器,就改成了集成工具xampp.客户端工具也是filezilla ...

  6. iOS开发——源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )

    一.git简介 什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的   git的起源 作者是Linux之父:Linus Bened ...

  7. GIT+Gitolite+Gerrit 环境搭建 ***

    系统环境:Ubuntu12.04 服务器上安装git+gitolite+gitweb root@server: 为搭建git服务器终端,假设ID为 192.168.199.117 或域名为: http ...

  8. Android基础新手教程——1.5.2 Git之使用GitHub搭建远程仓库

    Android基础新手教程--1.5.2 Git之使用GitHub搭建远程仓库 标签(空格分隔): Android基础新手教程 本节引言: 在上一节中.我们学习了怎样使用Git.构建我们的本地仓库.轻 ...

  9. Git版本控制之ubuntu搭建Git服务器

    Git是一个开源的分布式版本控制系统,可以有效.高效的处理从很小到非常大的项目版本管理.使得开发者可以通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库,也可以将代码提交到Git服务 ...

随机推荐

  1. thinkphp操作完提示信息该怎么弄成弹出层啊?

    http://www.thinkphp.cn/topic/21929.html 浏览:11879 发布日期:2014/08/22 分类:求助交流 关键字: thinkphp success跳转 弹出层 ...

  2. 邓_html_图片轮播

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  3. 2.supervisor实时监控程序存活状态

    1.supervisor是一款python开发的一个client/server服务,是一款进程管理工具,支持linux/unix系统,但是不支持windows系统. 它可以很方便的监听.启动.停止.重 ...

  4. linux_远程连接

    为什么要远程连接linux服务器? 温度.湿度.电力各种影响,有的企业使用阿里云服务器,更加接触不到机房,所有需要通过远程连接服务器来进行管理 IP地址? 互联网上的计算机,都会有一个唯一的32位地址 ...

  5. POI--帮助文档

    1.创建工作簿 (WORKBOOK) HSSFWorkbook wb = new HSSFWorkbook(); FileOutputStream fileOut = new FileOutputSt ...

  6. Mysql的主从配置

    前言:这次学习分布式的思想要配置mysql的主从复制和读写分离,我在主从配置上踩到很多坑,在此演示一遍配置过程,并附上问题的说明和自己的一些见解 Mysql主从复制的原理 附上原理图: mysql的主 ...

  7. web.xml 中<context-param>与<init-param>的区别与作用

    <context-param>的作用: web.xml的配置中<context-param>配置作用 1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件 ...

  8. Struts2 (三)

    1 Struts2的拦截器 Struts2拦截器在访问某个Action方法之前或之后实施拦截,拦截器是可插拔的,拦截器是AOP的一种实现. Struts2拦截器栈:将拦截器按一定顺序联结成一条链,在访 ...

  9. weighted_cross_entropy_with_logits

    weighted_cross_entropy_with_logits 原创文章,请勿转载!!! weighted_cross_entropy_with_logits(targets, logits, ...

  10. MUI 页面传值,因为用的是H5+ plus方法所以要在真机上才能测试出效果

    页面a.html <!doctype html> <html> <head> <meta charset="UTF-8"> < ...