v2ray.sh 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. #!/bin/bash
  2. clear
  3. TEXT='\033[30;107;2m'
  4. INFO='\033[97;44m'
  5. WARNING='\033[97;43m'
  6. ERROR='\033[97;41m'
  7. SUCCESS='\033[97;42m'
  8. GREEN='\033[92m'
  9. YELLOW='\033[93m'
  10. RESET='\033[0m'
  11. if [ "${EUID}" -ne 0 ]; then
  12. echo -e "${ERROR} RALAT ${RESET}${TEXT} Anda tiada kebenaran untuk menjalankan skrip ini! ${RESET}"
  13. exit 1
  14. fi
  15. function installPkg {
  16. read -p "Teruskan dengan pemasangan semula? [Y/n] " _yesno
  17. if [[ "$_yesno" =~ ^[Yy]$ ]]; then
  18. if [[ ! -d /usr/local/etc/v2ray ]]; then
  19. wget -q -O - https://raw.githubusercontent.com/cybertize/debian/buster/packages/v2ray.sh | bash
  20. fi
  21. apt-get -y -qq --purge remove v2ray &>/dev/null
  22. apt-get -y -qq autoremove &>/dev/null
  23. apt-get -qq autoclean &>/dev/null
  24. clear
  25. sleep 3
  26. wget -q -O - https://raw.githubusercontent.com/cybertize/debian/buster/packages/v2ray.sh | bash
  27. else
  28. echo -e "${ERROR} RALAT ${RESET}${TEXT} Membatalkan pemasangan semula ${RESET}"
  29. exit 1
  30. fi
  31. }
  32. function uninstallPkg {
  33. if systemctl list-unit-files | grep -qw 'v2ray'; then
  34. if [[ -n "$(pidof v2ray)" ]]; then
  35. systemctl stop v2ray@trojan*
  36. systemctl stop v2ray@vless*
  37. systemctl stop v2ray@vmess*
  38. fi
  39. if ! ("rm" -r '/usr/local/bin/v2ray' \
  40. '/usr/local/bin/v2ctl' \
  41. "$DAT_PATH" \
  42. '/etc/systemd/system/v2ray.service' \
  43. '/etc/systemd/system/v2ray@.service' \
  44. '/etc/systemd/system/v2ray.service.d' \
  45. '/etc/systemd/system/v2ray@.service.d'); then
  46. echo 'error: Failed to remove V2Ray.'
  47. exit 1
  48. else
  49. echo 'removed: /usr/local/bin/v2ray'
  50. echo 'removed: /usr/local/bin/v2ctl'
  51. echo "removed: $DAT_PATH"
  52. echo 'removed: /etc/systemd/system/v2ray.service'
  53. echo 'removed: /etc/systemd/system/v2ray@.service'
  54. echo 'removed: /etc/systemd/system/v2ray.service.d'
  55. echo 'removed: /etc/systemd/system/v2ray@.service.d'
  56. echo 'Please execute the command: systemctl disable v2ray'
  57. echo "You may need to execute a command to remove dependent software: $PACKAGE_MANAGEMENT_REMOVE curl unzip"
  58. echo 'info: V2Ray has been removed.'
  59. echo 'info: If necessary, manually delete the configuration and log files.'
  60. if [[ -n "$JSONS_PATH" ]]; then
  61. echo "info: e.g., $JSONS_PATH and /var/log/v2ray/ ..."
  62. else
  63. echo "info: e.g., $JSON_PATH and /var/log/v2ray/ ..."
  64. fi
  65. exit 0
  66. fi
  67. else
  68. echo 'error: V2Ray is not installed.'
  69. exit 1
  70. fi
  71. }
  72. function configurePkg {
  73. }
  74. function detailPkg {
  75. }
  76. function v2rayMenu {
  77. echo
  78. echo -e "${TEXT} ========================================================== ${RESET}"
  79. echo -e "${TEXT} MENU V2RAY ${RESET}"
  80. echo -e "${TEXT} ---------------------------------------------------------- ${RESET}"
  81. echo
  82. echo -e "[01] ${GREEN}reinstall${RESET} - ${YELLOW}Reinstall v2ray package${RESET}"
  83. echo -e "[02] ${GREEN}uninstall${RESET} - ${YELLOW}Uninstall v2ray package${RESET}"
  84. echo -e "[03] ${GREEN}configure${RESET} - ${YELLOW}Configure v2ray package${RESET}"
  85. echo -e "[04] ${GREEN}detail ${RESET} - ${YELLOW}Show v2ray detail & status${RESET}"
  86. echo -e "[00] ${GREEN}quit ${RESET} - ${YELLOW}Exit from menu${RESET}"
  87. echo
  88. echo -e "${TEXT} ---------------------------------------------------------- ${RESET}"
  89. echo -e "${TEXT} Dicipta oleh Doctype, Dikuasakan oleh Cybertize. ${RESET}"
  90. echo -e "${TEXT} ========================================================== ${RESET}"
  91. echo
  92. while true; do
  93. read -p "Masukkan pilihan anda: " _choice
  94. case "$_choice" in
  95. 01 | reinstall)
  96. installPkg && break
  97. ;;
  98. 02 | uninstall)
  99. uninstallPkg && break
  100. ;;
  101. 03 | configure)
  102. configurePkg && break
  103. ;;
  104. 04 | detail)
  105. detailPkg && break
  106. ;;
  107. 00 | quit)
  108. exit 0
  109. ;;
  110. *)
  111. echo -e "${ERROR} RALAT ${RESET}${TEXT} Pilihan tidak sah ${RESET}"
  112. v2rayMenu
  113. ;;
  114. esac
  115. done
  116. }
  117. if [[ -f /etc/stunnel/stunnel.conf ]]; then
  118. v2rayMenu
  119. elif [[ ! -f /etc/stunnel/stunnel.conf ]]; then
  120. installPkg
  121. fi