博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mac命令行终端下使用s
阅读量:5739 次
发布时间:2019-06-18

本文共 1927 字,大约阅读时间需要 6 分钟。

配置好ss服务器端后,安装对应系统的客户端,浏览器安装相应插件就可以上外网了,这都很简单。

问题是对于经常在命令行终端下工作的码农们,SS无法正常工作。因为在终端下不支持socks5代理,只支持http代理,这就很尴尬了。wget、curl、git、brew等命令行工具都会变得很慢。

Linux系统就简单一些,安装proxychains-NG等软件就可以解决了,但是在Mac下有点麻烦。OS X 10.11之前的系统海好说,都还比较顺利,但是OS X 10.11之后较新的系统默认设置下不会安装成功。

因为苹果在新系统中加入了SIP安全机制,他会阻止第三方程序向系统目录内(/System,/bin,/sbin,/usr(除了/usr/local))进行写操作,sudo也不行。办法是先把SIP关了,等装好软件配置好后再打开SIP。或者改用其他软件。

我懒得去把SIP关了开开了关了,找了另外一个软件privoxy,它刚好就是安装在/usr/local内,不需要关闭SIP也可以正常使用。

1、privoxy安装

安装很简单用brew安装:

brew install privoxy

2、privoxy配置

打开配置文件 /usr/local/etc/privoxy/config

vim /usr/local/etc/privoxy/config

加入下面这两项配置项

listen-address 0.0.0.0:8118forward-socks5 / localhost:1080 .

第一行设置privoxy监听任意IP地址的8118端口。第二行设置本地socks5代理客户端端口,注意不要忘了最后有一个空格和点号。

3、启动privoxy

因为没有安装在系统目录内,所以启动的时候需要打全路径。

sudo /usr/local/sbin/privoxy /usr/local/etc/privoxy/config

4、查看是否启动成功

netstat -na | grep 8118

看到有类似如下信息就表示启动成功了

tcp4       0      0  *.8118                 *.*                    LISTEN

如果没有,可以查看日志信息,判断哪里出了问题。打开配置文件找到 logdir 配置项,查看log文件。

5、privoxy使用

在命令行终端中输入如下命令后,该终端即可上外网了。

export http_proxy='http://localhost:8118'export https_proxy='http://localhost:8118'

他的原理是讲socks5代理转化成http代理给命令行终端使用。

如果不想用了取消即可

unset http_proxyunset https_proxy

如果关闭终端窗口,功能就会失效,如果需要代理一直生效,则可以把上述两行代码添加到 ~/.bash_profile 文件最后。

vim ~/.bash_profile-----------------------------------------------------export http_proxy='http://localhost:8118'export https_proxy='http://localhost:8118'-----------------------------------------------------

使配置立即生效

source  ~/.bash_profile

还可以在 ~/.bash_profile 里加入开关函数,使用起来更方便

function proxy_off(){    unset http_proxy        unset https_proxy        echo -e "已关闭代理"}        function proxy_on() {    export no_proxy="localhost,127.0.0.1,localaddress,.localdomain.com"    export http_proxy="http://127.0.0.1:8118"    export https_proxy=$http_proxy    echo -e "已开启代理"}

6、更多设置

privoxy更多设置项可以参考这篇文章:

参考文章

1、http://ian.wang/270.htm

2、http://www.yinqisen.cn/blog-707.html

转载自:

你可能感兴趣的文章
Android 手机应用开发经验之手势识别Gesture的
查看>>
Longest Palindromic Substring
查看>>
ibooks 3d 翻转效果 flip 3d
查看>>
URAL 1992 CVS 可持久化链栈
查看>>
eclipse 列编辑
查看>>
文件方式实现完整的英文词频统计实例
查看>>
Oracle活动会话历史(ASH)及报告解读
查看>>
Project Euler Problem 7: 10001st prime
查看>>
HDU1113 POJ1318 UVA642 ZOJ1181 UVALive5328 Word Amalgamation【MAP+排序】
查看>>
python制作验证码
查看>>
Java Thread(一) Outline
查看>>
谈一谈AGP
查看>>
Xamarin安装和跳坑指南
查看>>
MVVM架构~knockoutjs系列之文本框数符长度动态统计功能
查看>>
MVC3+EF4.1开发之一
查看>>
SQL 递归查询,意淫CTE递归的执行步骤
查看>>
CentOS的软件安装方法rpm和yum
查看>>
Java之JSP和Servlet基础知识
查看>>
IPV4/IPV6网络地址相关知识
查看>>
关于发布WP 8.1应用信息不匹配问题的解决办法
查看>>