setup-proxy.sh 3.1 KB

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