Setup Git Repo on VPS

We can setup our own Git repo on VPS, it’s very easy. After the setup, we can access our repo as:

//clone our repo to local, we use git as username and domain as the server domain(like unieagle.net).
git clone git@domain:a_repo.git

The simple steps are as follows:

  1. add user ‘git’ on your host
  2. setup ssh access for your local computer to your host as ‘git’
  3. create and init your repo on your server
  4. access your repo in local computer

Details:

add user ‘git’ on your host

ssh login into your host as root, and do the following:

useradd -d /home/git -m git
passwd git

setup ssh access for your local computer to your host as user ‘git’

in your local computer, do the following:

if you have no rsa keys, you need to generate one first:

cd ~/.ssh
ssh-keygen -t rsa 

this will generate id_rsa and id_rsa.pub in your ~/.ssh directory

if your key name is not id_rsa you need to add your key with:

ssh-add your_custome_name_of_key

with these keys, do the following:

cat id_rsa.pub | ssh git@domain 'cat >> .ssh/authorized_keys'

then you are able to run ssh git@domain without your password if everything goes well.
if not, check your host with permissions of /home/git, it should belongs to user git.

create your own repo

this is done on your host

ssh git@domain
mkdir your_first_repo.git
cd your_first_repo.git
git --bare init

then your git repo is setup fullly

access your repo on your local computer

you can clone your repo to local using:

git clone git@domain:your_first_repo.git

then all works done. enjoy it.

Or, if you have a repo already exists in your local computer and want to using the repo on your host, just setup the remote and up stream of your local repo, it will works well, as following:

//assume you are already in your local repo directory
git remote add origin git@domain:your_first_repo.git
git push --set-upstream origin master

【转】ubuntu安装pptpd来架设VPN服务器

转自:http://www.cnblogs.com/youlechang123/archive/2011/09/29/2195013.html
今天用此法尝试了一下,很顺利就ok了

—————–一下是原文——————–
这篇文章是以前写的了,不过那个网址好像由于fan墙两个字被拦截屏蔽了,一打开就整个域名被屏蔽几十秒,把敏感字做了处理好像还不行,重新发一次,NND,有兴趣打开试下看看:ubuntu架设VPN服务器

Linux下的VPN服务器软件主要是pptpd和openvpn,pptpd架设好后在windows下建个VPN连接就可以fan墙了,比较简单,这里说下ubuntu下安装配置pptpd。首先安装pptpd这个VPN服务器软件,ssh连接登录后用下面这个命令:

sudo apt-get install pptpd

安装好了在webmin的网络这一栏里就可以看到pptp vpn server这项了。

安装完了需要对相关文件进行配置修改,用webmin上的文件管理或ssh端用vi命令修改都行。

第一步:

方法一:ssh连接修改/etc/pptpd.conf这个文件

vi /etc/pptpd.conf

找到#localip 192.168.0.1和#remoteip 192.168.0.234-238,192.168.0.245这两行,把前面的#号去掉,然后保存就行了。

这里,localip 是 VPN 链接成功后服务器的 ip 地址, remoteip 则客户端的可分配 ip 地址范围。下面是我的配置:

(Recommended)

localip 192.168.0.1

remoteip 192.168.0.234-238,192.168.0.245

or

localip 192.168.0.234-238,192.168.0.245

localip 192.168.0.234-238,192.168.0.245

remoteip 192.168.1.234-238,192.168.1.245

方法二:用webmin的pptpd服务器项修改,点击webmin网络>PPTP VPN Server>PPTP Server Options,加上localip和romoteip就行了,如下图

第二步:

然后再要编辑/etc/ppp/pptpd-options这个文件,为vpn指定DNS服务器, 你可以找到你服务器用的DNS服务器地址,或者直接使用Google Public DNS:

vi /etc/ppp/pptpd-options

找到ms-dns这项,去掉前面的#号,修改成google提供的DNS,很好记哈

ms-dns 8.8.8.8

ms-dns 8.8.4.4

修改好后保存。

第三步:

接下来建立vpn账号和密码了,可以直接在webmin的pptp vpn server选项里修改,修改文件也行。

方法一:点击webmin里的网络>PPTP VPN Server>PPP Accounts>Create new PPP account,就可以创建新的账号和密码了。

webmin创建VPN账号

方法二:修改/etc/ppp/chap-secrets文件,按一行四列添加账号、服务器名、密码和IP限制。即第一列是用户名,第二列是服务器名(默认写pptpd 即可,注意与 pptpd-options 文件保持一致),第三列是密码,第四列是 IP 限制(不做限制用 * )。如创建一个名为test,密码为123,不限制登录IP的VPN账号:

test pptpd 123 *

修改好后保存行了。

最后重启pptpd服务,就可以生效了。

到了这一步,正常的话在XP里建立个VPN连接应该可以连接上了,但还不能访问外网,还需要另外的配置。但是如果连接不上VPN服务器的话,那就是碰上传说中的人品问题了,我就碰到过,明明所有步骤都做了,但是就是不能连接上,然后就胡乱折腾,看运气什么时候能折腾好了。

继续下一步,第四步:

修改/etc/sysctl.conf 这个文件,把ipv4 forward开启,方法是找到/etc/sysctl.conf这个文件里的这一行#net.ipv4.ip_forward=1后,去掉net.ipv4.ip_forward=1前面的#号,使他生效,然后保存,运行命令sysctl –p.

root@s:~# sysctl -p

运行命令后会显示这样的一行,那就表示修改生效了。

net.ipv4.ip_forward = 1

这样,vpn 服务器就算是搭建成功了。

重启pptpd后如果还不能访问外网,那么就要再来一步。

第五步:

使用iptables建立一个NAT, 用下面的命令:

apt-get install iptables (如果已经安装iptables,这一步就不用了)

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

上面的24表示子网掩码,代表24个1.

OK,到了这一步就应该可以用VPN了哈。如果不能,我也不知是哪里出问题了。

如果要防止重启服务器后iptables丢失,先运行

iptables-save > /etc/iptables-rules

然后修改/etc/network/interfaces 文件,在eth0 下面加入

pre-up iptables-restore < /etc/iptables-rules

这样,服务器重启后,就能自动挂载规则了。

好了,有了VPN,墙再高也不怕了哈。