You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Kali Linux代理配置求助:终端工具不识别代理环境变量问题

Kali Linux代理配置求助:终端工具不识别代理环境变量问题

兄弟,我太懂你这种抓瞎的感觉了——Kali默认的网络配置逻辑确实和Mint这类桌面发行版不一样,终端工具不认代理的坑我也踩过好多次!结合你的情况,给你捋几个靠谱的解决方向:

1. 先给apt单独配置代理(最关键的一步)

apt是个“特立独行”的家伙,它不一定会读取系统的环境变量,得单独给它写配置文件:

  • 打开终端,编辑/etc/apt/apt.conf(如果文件不存在就直接创建):
    sudo nano /etc/apt/apt.conf
    
  • 把下面两行粘贴进去(替换成你的代理地址):
    Acquire::http::Proxy "http://192.168.49.1:8282/";
    Acquire::https::Proxy "http://192.168.49.1:8282/";
    
  • 保存退出后,直接试apt update,应该就能走代理了。

2. 修正终端环境变量的生效问题

你之前试过的export/etc/profile.d/etc/environment其实是对的,但有几个细节没注意:

  • 大小写都要设置:有些程序认小写的http_proxy,有些认大写的HTTP_PROXY,保险起见两个都设:
    临时生效(当前终端会话有效):
    export http_proxy=http://192.168.49.1:8282
    export https_proxy=http://192.168.49.1:8282
    export HTTP_PROXY=http://192.168.49.1:8282
    export HTTPS_PROXY=http://192.168.49.1:8282
    
  • 永久生效:Kali现在默认用zsh,所以编辑~/.zshrc文件,把上面的4行加进去;如果用bash就编辑~/.bashrc。保存后重启终端,或者执行source ~/.zshrc让配置立刻生效。
  • 别用ping测试代理!ping用的是ICMP协议,而HTTP/HTTPS代理只处理TCP协议的HTTP/HTTPS流量,所以ping不通是完全正常的!测试代理应该用curl -I http://example.com或者curl http://ifconfig.me,看返回的IP是不是代理服务器的IP。

3. Proxychains的正确打开方式

如果有些顽固程序还是不认环境变量,Proxychains确实是个好帮手,但得先改对配置:

  • 编辑/etc/proxychains.conf
    sudo nano /etc/proxychains.conf
    
  • 找到文件末尾的[ProxyList]区块,把默认的socks4 127.0.0.1 9050改成你的HTTP代理:
    http    192.168.49.1    8282
    
  • 用的时候给命令加前缀就行,比如:
    proxychains apt update
    proxychains curl http://ifconfig.me
    
    注意:如果用Proxychains跑apt,最好加上参数让apt别用自己的代理配置,避免冲突:
    proxychains apt update -o Acquire::http::Proxy="direct://"
    

4. 补个Kali图形界面代理的设置方法

你说找不到手动代理,Kali默认用GNOME的话,路径是:设置 → 网络 → 网络代理 → 选择“手动”,然后填入HTTP和HTTPS的代理地址和端口,记得勾选“对所有协议使用相同代理”。不过图形界面的代理设置,终端不一定会自动继承,还是得配合上面的环境变量配置。

按照这个步骤来,应该能解决大部分终端工具的代理问题了!

备注:内容来源于stack exchange,提问作者Logan

火山引擎 最新活动