cygwin + git + nat123 30元搭建公网可访问的git服务器
首先参考上一篇安装服务器上的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服务器的更多相关文章
- 搭建通过 ssh 访问的 Git 服务器
一.Git 协议 Git 可以使用四种主要的协议来传输数据:本地传输,ssh 协议,Git 协议和 HTTP 协议. Git 使用的传输协议中最常见的就是 ssh 了.大多数环境已经支持通过 ssh ...
- 1元搭建自己的云服务器&解析域名
最近在学做微信开发,没有自己的域名和服务器就不得不寄人篱下,索性自己就到云主机上搭建了个服务器,但是水平有限弄了一个下午~~有自己的域名和服务器的好处相信不用我多说了.比如日后可以有自己域名的个性博客 ...
- Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)【转】
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- 一把鼻涕一把泪 搭建公网ftp服务器
至于为什么要搭建公网ftp服务器,就当我心血来潮吧. ftp开源工具很多,咱用的是filezilla服务器.后来为了方便搭建web服务器,就改成了集成工具xampp.客户端工具也是filezilla ...
- iOS开发——源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )
一.git简介 什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的 git的起源 作者是Linux之父:Linus Bened ...
- GIT+Gitolite+Gerrit 环境搭建 ***
系统环境:Ubuntu12.04 服务器上安装git+gitolite+gitweb root@server: 为搭建git服务器终端,假设ID为 192.168.199.117 或域名为: http ...
- Android基础新手教程——1.5.2 Git之使用GitHub搭建远程仓库
Android基础新手教程--1.5.2 Git之使用GitHub搭建远程仓库 标签(空格分隔): Android基础新手教程 本节引言: 在上一节中.我们学习了怎样使用Git.构建我们的本地仓库.轻 ...
- Git版本控制之ubuntu搭建Git服务器
Git是一个开源的分布式版本控制系统,可以有效.高效的处理从很小到非常大的项目版本管理.使得开发者可以通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库,也可以将代码提交到Git服务 ...
随机推荐
- Xshell学习--菜鸟篇
http://www.cnblogs.com/perseverancevictory/p/4910145.html 1)关于Xshell 网上更多的资料里提到的SSH客户端是putty,因为简单.开源 ...
- iOS ASIHTTPRequest详解
ASIHTTPRequest对CFNetwork API进行了封装,并且使用起来非常简单,用Objective-C编写,可以很好的应用在Mac OS X系统和iOS平台的应用程序中.ASIHTTPRe ...
- Java数据库基础(JDBC)
JDBC(Java Data Base Connectivity):SUN公司为了简化统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC: 这样应用程序就不需要关注数据库底层的详细 ...
- Hive字段中文注释乱码解决办法
Hive字段中文乱码,如执行 show create table xxx 时,表级别注释.字段级别注释发现有乱码现象, 一般都是由hive 元数据库的配置不当造成的. 此时可按如下步骤进行配置调整: ...
- 第一个ServiceStack服务框架
第一个ServiceStack服务框架 最近刚接触ServiceStack,就尝试着写了第一个服务框架,难免出错,还望同道们多多指正. 关于ServiceStack相关的概念不在做详细的叙述,网上研究 ...
- Jmeter下载时Binaries和Source两类包的区别
在下载Jmeter时,存在两种类型的下载包,分别为Binaries和Source: 一般开放原代码软件都会有两个版本发布: Source Distribution 和 Binary Distribut ...
- TF-卷积函数 tf.nn.conv2d 介绍
转自 http://www.cnblogs.com/welhzh/p/6607581.html 下面是这位博主自己的翻译加上测试心得 tf.nn.conv2d是TensorFlow里面实现卷积的函数, ...
- C语言的函数调用过程
从汇编的角度解析函数调用过程 看看下面这个简单函数的调用过程: int Add(int x,int y) { ; sum = x + y; return sum; } int main () { ; ...
- Spring切面优先级
项目中有两个切面,这两个切面都作用于同一个方法,哪个先执行哪个后执行呢,所以要定义一个切面的优先级 import java.util.Arrays; import org.aspectj.lang.J ...
- Python杂项
一. Python执行系统命令 Python可以使用system和popen来执行系统命令,使用时需要import os, 传入的参数都为一个字符创,不过这两者之间有些差异. os.system(cm ...