├── README.md ├── Sel.sh └── install.sh /README.md: -------------------------------------------------------------------------------- 1 | ## IP scanner, Hidify and v2ray config, Warp Plus license cloner, cloudflare worker management,Free subscription link 2 | 3 | ## اسکنر آیپی و ساخت کانفیگ هیدیفای و v2ray ، کلونر لایسنس وارپ پلاس ، مدیریت ورکرهای کلودفلر ، ساب رایگان 4 | 5 | 6 | 7 | ## run 8 | ## اجرا 9 | 10 | ``` 11 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/Selector/main/Sel.sh) 12 | ``` 13 | --- 14 | ## Install, After the initial installation, use the kl command to run the script 15 | ## اسکربپت نصبی ، بعد از نصب اولیه از دستور kl برای اجرای اسکریپت استفاده کنید. 16 | 17 | ``` 18 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/Selector/main/install.sh) 19 | ``` 20 | --- 21 | ### آموزش کامل گزینه های اسکربپت 1 تا 6 : 22 | 23 | [آموزش کامل گزینه های اسکریپت](https://youtu.be/YWvv-ChtIXQ?si=XYjMQqxWWQfdzVcq) 24 | 25 | --- 26 | ### آموزش کامل گزینه ۷و۸ ، مدیریت ورکر : 27 | 28 | [آموزش آپدیت اول](https://youtu.be/nneZfJfOyOY?si=zxnLM6J3voVQ6X9x) 29 | [آموزش آپدیت دوم](https://youtu.be/NgkxvlKFfLU?si=3jV5bJtJ9c2TeMHE) 30 | 31 | --- 32 | 33 | ## Credits 34 | [Ptech](https://github.com/Ptechgithub) [soroush mirzaei](https://github.com/soroushmirzaei) 35 | -------------------------------------------------------------------------------- /Sel.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | clear 3 | 4 | # Define color codes 5 | red='\e[1;31m' 6 | green='\e[1;32m' 7 | yellow='\e[1;33m' 8 | purple='\e[1;34m' 9 | cyan='\e[1;36m' 10 | white='\e[1;37m' 11 | reset='\e[0m' 12 | 13 | clear 14 | if command -v figlet &>/dev/null; then 15 | figlet -f slant "KOLAND" 16 | fi 17 | echo -e "${cyan}*****************************************${reset}" 18 | echo -e "${cyan}*${reset} ${red}Y${green}O${yellow}U${purple}T${cyan}U${green}B${white}E${reset} : ${purple}KOLANDONE${reset} ${cyan}" 19 | echo -e "${cyan}*${reset} ${red}T${green}E${yellow}L${purple}E${cyan}G${green}R${white}A${red}M${reset} : ${purple}KOLANDJS${reset} ${cyan}" 20 | echo -e "${cyan}*${reset} ${red}G${green}I${yellow}T${purple}H${cyan}U${green}B${reset} : ${purple}https://github.com/Kolandone${reset} ${cyan}" 21 | echo -e "${cyan}*****************************************${reset}" 22 | echo -e "${cyan}* ${green}Date:${reset} $(date '+%Y-%m-%d %H:%M:%S') ${cyan}*${reset}" 23 | echo "" 24 | 25 | echo -e "${cyan}+----+---------------------------------------------+${reset}" 26 | echo -e "${green}| No | Option |${reset}" 27 | echo -e "${cyan}+----+---------------------------------------------+${reset}" 28 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "1" "IPv4 scan" 29 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "2" "IPv6 scan" 30 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "3" "V2ray and MahsaNG wireguard config" 31 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "4" "Hiddify config for 1.4.0 - 1.9.0 versions" 32 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "5" "Warp License Cloner" 33 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "6" "Hiddify config for 2.0 version or higher" 34 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "7" "Install Worker Creator" 35 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "8" "Run Worker Creator (install it first)" 36 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "9" "Free subscription link (Soroush Mirzaei)" 37 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "10" "Wireguard config for Hiddify and v2ray" 38 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "11" "CLEAN IP scanner" 39 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "12" "Fastly CLEAN IP scanner" 40 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "13" "Gcore CLEAN IP scanner" 41 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "14" "Telegram Proxy" 42 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "15" "SingBox installer (only for serv00)" 43 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "16" "Usque installer" 44 | printf "${cyan}| ${yellow}%-2s ${cyan}| ${yellow}%-43s ${cyan}|\n" "99" "Install Selector" 45 | echo -e "${cyan}+----+---------------------------------------------+${reset}" 46 | echo -en "${green}Enter your choice: ${reset}" 47 | read -r user_input 48 | 49 | 50 | measure_latency() { 51 | local ip_port=$1 52 | local ip=$(echo $ip_port | cut -d: -f1) 53 | local latency=$(ping -c 1 -W 1 $ip | grep 'time=' | awk -F'time=' '{ print $2 }' | cut -d' ' -f1) 54 | if [ -z "$latency" ]; then 55 | latency="N/A" 56 | fi 57 | printf "| %-21s | %-10s |\n" "$ip_port" "$latency" 58 | } 59 | 60 | measure_latency6() { 61 | local ip_port=$1 62 | local ip=$(echo $ip_port | cut -d'[' -f2 | cut -d']' -f1) 63 | local latency=$(ping6 -c 1 -W 1 $ip | grep 'time=' | awk -F'time=' '{ print $2 }' | cut -d' ' -f1) 64 | if [ -z "$latency" ]; then 65 | latency="N/A" 66 | fi 67 | printf "| %-45s | %-10s |\n" "$ip_port" "$latency" 68 | } 69 | 70 | display_table_ipv4() { 71 | printf "+-----------------------+------------+\n" 72 | printf "| IP:Port | Latency(ms) |\n" 73 | printf "+-----------------------+------------+\n" 74 | echo "$1" | head -n 10 | while read -r ip_port; do measure_latency "$ip_port"; done 75 | printf "+-----------------------+------------+\n" 76 | } 77 | 78 | display_table_ipv6() { 79 | printf "+---------------------------------------------+------------+\n" 80 | printf "| IP:Port | Latency(ms) |\n" 81 | printf "+---------------------------------------------+------------+\n" 82 | echo "$1" | head -n 10 | while read -r ip_port; do measure_latency6 "$ip_port"; done 83 | printf "+---------------------------------------------+------------+\n" 84 | } 85 | 86 | cloner() { 87 | 88 | if ! command -v wg &>/dev/null; then 89 | if [ -d "$PREFIX" ] && [ "$(uname -o)" = "Android" ]; then 90 | echo "Installing wireguard-tools" 91 | pkg install wireguard-tools -y 92 | pkg install jq -y 93 | elif [ -x "$(command -v apt)" ]; then 94 | echo "Installing wireguard-tools on Debian/Ubuntu" 95 | sudo apt update -y && sudo apt install wireguard-tools -y 96 | elif [ -x "$(command -v yum)" ]; then 97 | echo "Installing wireguard-tools on CentOS/RHEL" 98 | sudo yum install epel-release -y && sudo yum install kmod-wireguard wireguard-tools -y 99 | elif [ -x "$(command -v dnf)" ]; then 100 | echo "Installing wireguard-tools on Fedora" 101 | sudo dnf install wireguard-tools -y 102 | elif [ -x "$(command -v zypper)" ]; then 103 | echo "Installing wireguard-tools on openSUSE" 104 | sudo zypper install wireguard-tools -y 105 | fi 106 | fi 107 | 108 | licenses=( 109 | "0L156IFo-Xlou7509-cL0kj975" 110 | "1E987bRY-KI8167Rp-2cO3I5a0" 111 | "450sxY1P-0927yEPv-538cGDa0" 112 | "82gHq31I-785W3PSO-1rW35X9v" 113 | "BQ91v37L-s296aVH3-5p34vXS6" 114 | "8NP103zQ-u2T68YS3-b3Cy25H9" 115 | "6M10oEq7-HA0h5y92-F42KMv61" 116 | "Pi0n45K6-24ON7A1C-7Q18My2n" 117 | "q36pSa91-240vtF1s-F25r10gZ" 118 | "H9y510oc-PR53o01f-cW176f0y" 119 | "Y4v03C5u-Ad81i3z5-PQ30z45f" 120 | "8V2hX14D-D0SR78w3-2ule45m3" 121 | "7V9p34gb-9hlI5Y64-C35dO6l2" 122 | "MAa9251S-M19y53Hb-05cJ2hS4" 123 | "R7k0j3p4-5B14RK6p-C8F6vw72" 124 | "X16yb7g2-1P3fH56y-x8L7e1D0" 125 | "5hc0L42Z-f15su76j-r0N8ia43" 126 | "8wnc27d1-C5F3d2y9-45eKs3F9" 127 | "05skL7r1-d683ZSB0-7RrT964j" 128 | "iTP2I901-821KdD5h-2840MpQv" 129 | "14b68TNu-v801R2Mi-690t7vYu" 130 | "QPIE0458-1VDX92W5-70e2iNA3" 131 | "53RN8G7d-24J59kYR-08b4v9RU" 132 | "G438E2Ve-uH4sE653-Kn53fJ76" 133 | "21Ig0LE8-47emp59P-N190Vf5z" 134 | ) 135 | 136 | echo -e "${cyan}######################${reset}" 137 | echo -en "${green}Enter a license (${yellow}Press Enter to use a random license, may not work${green}): ${reset}" 138 | read -r input_license 139 | 140 | if [ -z "$input_license" ]; then 141 | license=$(shuf -n 1 -e "${licenses[@]}") 142 | else 143 | license="$input_license" 144 | fi 145 | echo -e "${cyan}######################${reset}" 146 | echo -e "${purple}🔑 Warp License cloner 🔑${reset}" 147 | echo -e "${green}Starting...${reset}" 148 | echo -e "${purple}-------------------------------------${reset}" 149 | while true; do 150 | if command -v wg &>/dev/null; then 151 | private_key=$(wg genkey) 152 | public_key=$(wg pubkey <<<"$private_key") 153 | else 154 | wg_api=$(curl -m5 -sSL https://wg-key.forvps.gq/) 155 | private_key=$(awk 'NR==2 {print $2}' <<<"$wg_api") 156 | public_key=$(awk 'NR==1 {print $2}' <<<"$wg_api") 157 | fi 158 | install_id=$(tr -dc 'A-Za-z0-9' warp-config.json 180 | id=$(jq -r '.id' /dev/null 2>&1) 237 | 238 | if [ "$(echo "$patch_two_response" | jq '.result')" != "null" ]; then 239 | license=$(jq -r '.account.license' >output.txt 243 | fi 244 | 245 | response=$(curl -s -o /dev/null -w "%{http_code}" -X DELETE "https://api.cloudflareclient.com/v0a${rand}/reg/${id}" \ 246 | --header "Authorization: Bearer ${token}" \ 247 | --header "Accept: application/json" \ 248 | --header "Accept-Encoding: gzip" \ 249 | --header "Cf-Client-Version: a-6.3-${rand}" \ 250 | --header "User-Agent: okhttp/3.12.1") 251 | 252 | if [ "$response" -ne 204 ]; then 253 | echo "Error: HTTP status code $response" 254 | fi 255 | rm warp-config.json >/dev/null 2>&1 256 | sleep 2 257 | done 258 | } 259 | 260 | 261 | if [ "$user_input" -eq 1 ]; then 262 | echo "Fetching IPv4 addresses from install.sh..." 263 | ip_list=$(echo "1" | bash <(curl -fsSL https://raw.githubusercontent.com/Ptechgithub/warp/main/endip/install.sh) | grep -oP '(\d{1,3}\.){3}\d{1,3}:\d+') 264 | clear 265 | echo "Top 10 IPv4 addresses with their latencies:" 266 | display_table_ipv4 "$ip_list" 267 | elif [ "$user_input" -eq 2 ]; then 268 | echo "Fetching IPv6 addresses from install.sh..." 269 | ip_list=$(echo "2" | bash <(curl -fsSL https://raw.githubusercontent.com/Ptechgithub/warp/main/endip/install.sh) | grep -oP '(\[?[a-fA-F\d:]+\]?\:\d+)') 270 | clear 271 | echo "Top 10 IPv6 addresses with their latencies:" 272 | display_table_ipv6 "$ip_list" 273 | elif [ "$user_input" -eq 3 ]; then 274 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/V2/main/koland.sh) 275 | elif [ "$user_input" -eq 4 ]; then 276 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/Hidify/main/install.sh) 277 | KOLAND 278 | elif [ "$user_input" -eq 5 ]; then 279 | cloner 280 | elif [ "$user_input" -eq 6 ]; then 281 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/Hidify/main/inst.sh) 282 | KOL 283 | elif [ "$user_input" -eq 7 ]; then 284 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/workercreator/main/install.sh) 285 | elif [ "$user_input" -eq 8 ]; then 286 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/workercreator/main/run.sh) 287 | elif [ "$user_input" -eq 9 ]; then 288 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/quick-sub/main/run.sh) 289 | elif [ "$user_input" -eq 10 ]; then 290 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/wireguard-v2hiddify/main/install.sh) 291 | elif [ "$user_input" -eq 11 ]; then 292 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/cfipscanner/main/ipscan.sh) 293 | elif [ "$user_input" -eq 12 ]; then 294 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/fastlyipscan/refs/heads/main/ipscan.sh) 295 | elif [ "$user_input" -eq 13 ]; then 296 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/gcorescanner/refs/heads/main/gcore.sh) 297 | elif [ "$user_input" -eq 14 ]; then 298 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/quick-sub/refs/heads/main/proxy.sh) 299 | elif [ "$user_input" -eq 15 ]; then 300 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/serv00/main/koland-serv00.sh) 301 | elif [ "$user_input" -eq 16 ]; then 302 | source <(curl -fsSL https://raw.githubusercontent.com/Kolandone/Usque-Installer/refs/heads/main/usque.sh) 303 | elif [ "$user_input" -eq 99 ]; then 304 | bash <(curl -fsSL https://raw.githubusercontent.com/Kolandone/Selector/main/install.sh) 305 | echo -e "${green}After this, you can run the Selector with ${cyan}kl ${green}command${reset}" 306 | else 307 | echo "Invalid input. Please enter between 1 and 16 or 99" 308 | fi 309 | -------------------------------------------------------------------------------- /install.sh: -------------------------------------------------------------------------------- 1 | apt update -y 2 | curl -o $PREFIX/bin/kl https://raw.githubusercontent.com/Kolandone/Selector/main/Sel.sh 3 | chmod +x $PREFIX/bin/kl 4 | --------------------------------------------------------------------------------