add-ssr.sh 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #!/bin/bash
  2. red='\e[1;31m'
  3. green='\e[0;32m'
  4. NC='\e[0m'
  5. MYIP=$(wget -qO- ifconfig.me/ip);
  6. echo "Checking VPS"
  7. clear
  8. IP=$(wget -qO- ifconfig.me/ip);
  9. echo "Name : Create ShadowsocksR Account"
  10. echo "============================================" | lolcat
  11. echo "Please enter the username you want to set (do not repeat, does not support Chinese, will be reported incorrect!)"
  12. read -e -p "(Default: ):" ssr_user
  13. CLIENT_EXISTS=$(grep -w $ssr_user /usr/local/shadowsocksr/akun.conf | wc -l)
  14. if [[ ${CLIENT_EXISTS} == '1' ]]; then
  15. echo ""
  16. echo "A client with the specified name was already created, please choose another name." | lolcat
  17. exit 1
  18. fi
  19. read -p "Expired (days): " masaaktif
  20. exp=`date -d "$masaaktif days" +"%Y-%m-%d"`
  21. lastport=$(cat /usr/local/shadowsocksr/mudb.json | grep '"port": ' | tail -n1 | awk '{print $2}' | cut -d "," -f 1 | cut -d ":" -f 1 )
  22. if [[ $lastport == '' ]]; then
  23. ssr_port=1443
  24. else
  25. ssr_port=$((lastport+1))
  26. fi
  27. ssr_password="$ssr_user"
  28. ssr_method="aes-256-cfb"
  29. ssr_protocol="origin"
  30. ssr_obfs="tls1.2_ticket_auth_compatible"
  31. ssr_protocol_param="2"
  32. ssr_speed_limit_per_con=0
  33. ssr_speed_limit_per_user=0
  34. ssr_transfer="838868"
  35. ssr_forbid="bittorrent"
  36. cd /usr/local/shadowsocksr
  37. match_add=$(python mujson_mgr.py -a -u "${ssr_user}" -p "${ssr_port}" -k "${ssr_password}" -m "${ssr_method}" -O "${ssr_protocol}" -G "${ssr_protocol_param}" -o "${ssr_obfs}" -s "${ssr_speed_limit_per_con}" -S "${ssr_speed_limit_per_user}" -t "${ssr_transfer}" -f "${ssr_forbid}"|grep -w "add user info")
  38. cd
  39. echo -e "${Info} Penambahan user berhasil [username: ${ssr_user}]"
  40. echo -e "### $ssr_user $exp" >> /usr/local/shadowsocksr/akun.conf
  41. tmp1=$(echo -n "${ssr_password}" | base64 -w0 | sed 's/=//g;s/\//_/g;s/+/-/g')
  42. SSRobfs=$(echo ${ssr_obfs} | sed 's/_compatible//g')
  43. tmp2=$(echo -n "$IP:${ssr_port}:${ssr_protocol}:${ssr_method}:${SSRobfs}:${tmp1}/obfsparam=" | base64 -w0)
  44. ssr_link="ssr://${tmp2}"
  45. /etc/init.d/ssrmu restart
  46. service cron restart
  47. IP=$(wget -qO- ifconfig.me/ip);
  48. echo -e ""
  49. echo -e " ShadowsocksR"
  50. clear && echo && echo "===================================================" && echo | lolcat
  51. echo -e " User [${ssr_user}] configuration info:" | lolcat
  52. echo -e " IP : ${IP}"
  53. echo -e " Port : ${ssr_port}"
  54. echo -e " Password : ${ssr_password}"
  55. echo -e " Encryption : ${ssr_method}"
  56. echo -e " Protocol : ${Red_font_prefix}${ssr_protocol}"
  57. echo -e " Obfs : ${Red_font_prefix}${ssr_obfs}"
  58. echo -e " Device limit : ${ssr_protocol_param}"
  59. echo -e " ===================================================" | lolcat
  60. echo -e " Link SSR : ${ssr_link}"
  61. echo -e " ===================================================" | lolcat
  62. echo -e " Expired On : ${exp}"