setup-proxy.sh 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. TRANSLATED CONTENT:
  2. #!/bin/bash
  3. # Proxychains 快速配置脚本
  4. # 自动配置代理指向 127.0.0.1:9910
  5. set -e
  6. echo "=========================================="
  7. echo "Proxychains 快速配置脚本"
  8. echo "=========================================="
  9. echo
  10. # 检查 proxychains4 是否安装
  11. if ! command -v proxychains4 &> /dev/null; then
  12. echo "❌ proxychains4 未安装"
  13. echo
  14. echo "请先安装 proxychains4:"
  15. echo
  16. echo " Ubuntu/Debian:"
  17. echo " sudo apt install proxychains4"
  18. echo
  19. echo " CentOS/RHEL:"
  20. echo " sudo yum install epel-release"
  21. echo " sudo yum install proxychains-ng"
  22. echo
  23. echo " macOS:"
  24. echo " brew install proxychains-ng"
  25. echo
  26. exit 1
  27. fi
  28. echo "✅ proxychains4 已安装"
  29. echo
  30. # 创建配置目录
  31. echo "📁 创建配置目录..."
  32. mkdir -p ~/.proxychains
  33. # 创建配置文件
  34. echo "📝 创建配置文件..."
  35. cat > ~/.proxychains/proxychains.conf << 'EOF'
  36. # Proxychains 配置文件
  37. # 代理地址:127.0.0.1:9910
  38. # 代理链模式(严格按顺序使用所有代理)
  39. strict_chain
  40. # 代理 DNS 请求(避免 DNS 泄漏)
  41. proxy_dns
  42. # DNS 设置
  43. remote_dns_subnet 224
  44. # 超时设置(毫秒)
  45. tcp_read_time_out 15000
  46. tcp_connect_time_out 8000
  47. # 代理列表
  48. [ProxyList]
  49. # HTTP 代理:127.0.0.1:9910
  50. http 127.0.0.1 9910
  51. # 备用代理(取消注释以启用)
  52. #http 127.0.0.1 8080
  53. #socks5 127.0.0.1 1080
  54. EOF
  55. # 设置权限
  56. chmod 644 ~/.proxychains/proxychains.conf
  57. echo "✅ 配置文件已创建: ~/.proxychains/proxychains.conf"
  58. echo
  59. # 测试代理服务
  60. echo "🔍 检查代理服务..."
  61. if curl -s -x http://127.0.0.1:9910 --connect-timeout 3 https://www.google.com > /dev/null 2>&1; then
  62. echo "✅ 代理服务 127.0.0.1:9910 可用"
  63. echo
  64. # 测试 proxychains
  65. echo "🧪 测试 proxychains..."
  66. if proxychains4 curl -s --connect-timeout 5 https://ipinfo.io/json > /dev/null 2>&1; then
  67. echo "✅ Proxychains 配置成功!"
  68. echo
  69. echo "🎉 配置完成!可以开始使用了。"
  70. else
  71. echo "⚠️ Proxychains 测试失败"
  72. echo " 但配置文件已创建,请检查代理服务是否正常"
  73. fi
  74. else
  75. echo "⚠️ 代理服务 127.0.0.1:9910 无法连接"
  76. echo
  77. echo "请检查:"
  78. echo " 1. 代理服务是否运行"
  79. echo " 2. 代理端口是否正确(127.0.0.1:9910)"
  80. echo " 3. 防火墙设置"
  81. echo
  82. echo "检查代理端口:"
  83. echo " netstat -tunlp | grep 9910"
  84. echo " ss -tunlp | grep 9910"
  85. echo
  86. echo "配置文件已创建,代理服务就绪后即可使用。"
  87. fi
  88. echo
  89. echo "=========================================="
  90. echo "使用方法:"
  91. echo "=========================================="
  92. echo
  93. echo " proxychains4 curl https://github.com"
  94. echo " proxychains4 git clone https://github.com/user/repo.git"
  95. echo " proxychains4 pip install package-name"
  96. echo " proxychains4 npm install package-name"
  97. echo
  98. echo "配置文件位置:"
  99. echo " ~/.proxychains/proxychains.conf"
  100. echo
  101. echo "查看配置:"
  102. echo " cat ~/.proxychains/proxychains.conf"
  103. echo
  104. echo "修改代理地址:"
  105. echo " nano ~/.proxychains/proxychains.conf"
  106. echo "=========================================="