cekws.sh 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #!/bin/bash
  2. echo -n > /tmp/other.txt
  3. data=( `cat /etc/v2ray/config.json | grep '^###' | cut -d ' ' -f 2`);
  4. echo "-------------------------------";
  5. echo "-----=[ Vmess User Login ]=-----";
  6. echo "-------------------------------";
  7. for akun in "${data[@]}"
  8. do
  9. if [[ -z "$akun" ]]; then
  10. akun="tidakada"
  11. fi
  12. echo -n > /tmp/ipvmess.txt
  13. data2=( `netstat -anp | grep ESTABLISHED | grep tcp6 | grep v2ray | awk '{print $5}' | cut -d: -f1 | sort | uniq`);
  14. for ip in "${data2[@]}"
  15. do
  16. jum=$(cat /var/log/v2ray/access.log | grep -w $akun | awk '{print $3}' | cut -d: -f1 | grep -w $ip | sort | uniq)
  17. if [[ "$jum" = "$ip" ]]; then
  18. echo "$jum" >> /tmp/ipvmess.txt
  19. else
  20. echo "$ip" >> /tmp/other.txt
  21. fi
  22. jum2=$(cat /tmp/ipvmess.txt)
  23. sed -i "/$jum2/d" /tmp/other.txt > /dev/null 2>&1
  24. done
  25. jum=$(cat /tmp/ipvmess.txt)
  26. if [[ -z "$jum" ]]; then
  27. echo > /dev/null
  28. else
  29. jum2=$(cat /tmp/ipvmess.txt | nl)
  30. echo "user : $akun";
  31. echo "$jum2";
  32. echo "-------------------------------"
  33. fi
  34. rm -rf /tmp/ipvmess.txt
  35. done
  36. oth=$(cat /tmp/other.txt | sort | uniq | nl)
  37. echo "other";
  38. echo "$oth";
  39. echo "-------------------------------"
  40. rm -rf /tmp/other.txt