Working around Ubuntu's Firewall

Working around Ubuntu's Firewall

"Git" is a great tool and does work behind proxy's / firewalls with a little help. There are many ways to do this however this section will only cover "corkscrew".


Corkscrew

Download "corkscrew" at Corkscrew and un-tar it.

cd corkscrew-2.0
./configure
make
cp corkscrew ~/bin/corkscrew

This can be placed anywhere as long as it is in PATH. Next create the following simple shell script called git-proxy in ~/bin directory (or some place listed in PATH).Replace items inbetween "<...> with the correct information.

#!/bin/sh
exec <path_to_corkscrew>/corkscrew <proxy_name> <proxy port> $*

Save the file and give it execute permissions

chmod u+x git-proxy

Run it to test it. It should give the usage statement for corkscrew.

Now tell git you want to use a proxy. Replace the stuff between the "<...>" and don't leave out the single quotes.

git config --global core.gitproxy '<path_to_proxy>/git-proxy'

This will setup "git" to always use the proxy for all git commands, with all git trees. To set the proxy for just a specific git tree execute instead something similar to the following. The below command configures "git" to use the proxy for all URLs with a kernel.org suffix.

git config --global core.gitproxy '"<path to proxy>/git-proxy"; for kernel.org' 'for kernel.org$'


Ubuntu's Firewall setting

Configure Ubuntu's "Network Proxy" appropriately to get access to source code

  • System-->Preferences-->Network Proxy
  • Set the following parameters:
  • Select: "Proxy Configuration"
  • Select: "Manual proxy configuration"
  • Check mark: "Use the same proxy for all protocols
  • Enter following data: HTTP proxy:<enter proxy address> Port: <enter port>
  • Close

Configure the Proxy for the package manager:

  • System -> Administrator -> Synaptic Package Manager
  • Login -> Settings -> Preferences
  • Network tab -> Add the HTTP proxy and port number in order to get the package manager to be able to get past the firewall.

Configure "http_proxy" and "ftp_proxy" environmental variable: If there is a need to use a proxy server to access the web set the environment variables "http_proxy" and "ftp_proxy". This will allow "apt-get" etc. to use this environment variable value. Below would be the ideal way of assigning values for "http_proxy":


export http_proxy=”<proxy-server>:<port>”  
export https_proxy="<proxy-server>:<port>"
export ftp_proxy="<proxy-server>:<port>"

Add this to ~/.bashrc so that everytime the machine is rebooted this variable does not have to be exported.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值