vpn.sh 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. #!/bin/bash
  2. # SL
  3. # ==========================================
  4. # Color
  5. RED='\033[0;31m'
  6. NC='\033[0m'
  7. GREEN='\033[0;32m'
  8. ORANGE='\033[0;33m'
  9. BLUE='\033[0;34m'
  10. PURPLE='\033[0;35m'
  11. CYAN='\033[0;36m'
  12. LIGHT='\033[0;37m'
  13. # ==========================================
  14. # Getting
  15. MYIP=$(wget -qO- ipinfo.io/ip);
  16. echo "Checking VPS"
  17. IZIN=$( curl ipinfo.io/ip | grep $MYIP )
  18. if [ $MYIP = $MYIP ]; then
  19. echo -e "${NC}${GREEN}Permission Accepted...${NC}"
  20. else
  21. echo -e "${NC}${RED}Permission Denied!${NC}";
  22. echo -e "${NC}${LIGHT}Fuck You!!"
  23. exit 0
  24. fi
  25. # Mod By SL
  26. # ==================================================
  27. # Link Hosting Kalian
  28. akbarvpn="raw.githubusercontent.com/senowahyu62/scriptvps/main/ssh"
  29. # initialisasi var
  30. export DEBIAN_FRONTEND=noninteractive
  31. OS=`uname -m`;
  32. MYIP=$(wget -qO- ipinfo.io/ip);
  33. MYIP2="s/xxxxxxxxx/$MYIP/g";
  34. ANU=$(ip -o $ANU -4 route show to default | awk '{print $5}');
  35. # Install OpenVPN dan Easy-RSA
  36. apt install openvpn easy-rsa unzip -y
  37. apt install openssl iptables iptables-persistent -y
  38. mkdir -p /etc/openvpn/server/easy-rsa/
  39. cd /etc/openvpn/
  40. wget https://${akbarvpn}/vpn.zip
  41. unzip vpn.zip
  42. rm -f vpn.zip
  43. chown -R root:root /etc/openvpn/server/easy-rsa/
  44. cd
  45. mkdir -p /usr/lib/openvpn/
  46. cp /usr/lib/x86_64-linux-gnu/openvpn/plugins/openvpn-plugin-auth-pam.so /usr/lib/openvpn/openvpn-plugin-auth-pam.so
  47. # nano /etc/default/openvpn
  48. sed -i 's/#AUTOSTART="all"/AUTOSTART="all"/g' /etc/default/openvpn
  49. # restart openvpn dan cek status openvpn
  50. systemctl enable --now openvpn-server@server-tcp
  51. systemctl enable --now openvpn-server@server-udp
  52. /etc/init.d/openvpn restart
  53. /etc/init.d/openvpn status
  54. # aktifkan ip4 forwarding
  55. echo 1 > /proc/sys/net/ipv4/ip_forward
  56. sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf
  57. # Buat config client TCP 1194
  58. cat > /etc/openvpn/tcp.ovpn <<-END
  59. client
  60. dev tun
  61. proto tcp
  62. remote xxxxxxxxx 1194
  63. resolv-retry infinite
  64. route-method exe
  65. nobind
  66. persist-key
  67. persist-tun
  68. auth-user-pass
  69. comp-lzo
  70. verb 3
  71. END
  72. sed -i $MYIP2 /etc/openvpn/tcp.ovpn;
  73. # Buat config client UDP 2200
  74. cat > /etc/openvpn/udp.ovpn <<-END
  75. client
  76. dev tun
  77. proto udp
  78. remote xxxxxxxxx 2200
  79. resolv-retry infinite
  80. route-method exe
  81. nobind
  82. persist-key
  83. persist-tun
  84. auth-user-pass
  85. comp-lzo
  86. verb 3
  87. END
  88. sed -i $MYIP2 /etc/openvpn/udp.ovpn;
  89. # Buat config client SSL
  90. cat > /etc/openvpn/ssl.ovpn <<-END
  91. client
  92. dev tun
  93. proto tcp
  94. remote xxxxxxxxx 990
  95. resolv-retry infinite
  96. route-method exe
  97. nobind
  98. persist-key
  99. persist-tun
  100. auth-user-pass
  101. comp-lzo
  102. verb 3
  103. END
  104. sed -i $MYIP2 /etc/openvpn/ssl.ovpn;
  105. cd
  106. # pada tulisan xxx ganti dengan alamat ip address VPS anda
  107. /etc/init.d/openvpn restart
  108. # masukkan certificatenya ke dalam config client TCP 1194
  109. echo '<ca>' >> /etc/openvpn/tcp.ovpn
  110. cat /etc/openvpn/server/ca.crt >> /etc/openvpn/tcp.ovpn
  111. echo '</ca>' >> /etc/openvpn/tcp.ovpn
  112. # Copy config OpenVPN client ke home directory root agar mudah didownload ( TCP 1194 )
  113. cp /etc/openvpn/tcp.ovpn /home/vps/public_html/tcp.ovpn
  114. # masukkan certificatenya ke dalam config client UDP 2200
  115. echo '<ca>' >> /etc/openvpn/udp.ovpn
  116. cat /etc/openvpn/server/ca.crt >> /etc/openvpn/udp.ovpn
  117. echo '</ca>' >> /etc/openvpn/udp.ovpn
  118. # Copy config OpenVPN client ke home directory root agar mudah didownload ( UDP 2200 )
  119. cp /etc/openvpn/udp.ovpn /home/vps/public_html/udp.ovpn
  120. # masukkan certificatenya ke dalam config client SSL
  121. echo '<ca>' >> /etc/openvpn/ssl.ovpn
  122. cat /etc/openvpn/server/ca.crt >> /etc/openvpn/ssl.ovpn
  123. echo '</ca>' >> /etc/openvpn/ssl.ovpn
  124. # Copy config OpenVPN client ke home directory root agar mudah didownload ( SSL )
  125. cp /etc/openvpn/ssl.ovpn /home/vps/public_html/ssl.ovpn
  126. #firewall untuk memperbolehkan akses UDP dan akses jalur TCP
  127. iptables -t nat -I POSTROUTING -s 10.6.0.0/24 -o $ANU -j MASQUERADE
  128. iptables -t nat -I POSTROUTING -s 10.7.0.0/24 -o $ANU -j MASQUERADE
  129. iptables-save > /etc/iptables.up.rules
  130. chmod +x /etc/iptables.up.rules
  131. iptables-restore -t < /etc/iptables.up.rules
  132. netfilter-persistent save
  133. netfilter-persistent reload
  134. # Restart service openvpn
  135. systemctl enable openvpn
  136. systemctl start openvpn
  137. /etc/init.d/openvpn restart
  138. # Delete script
  139. history -c
  140. rm -f /root/vpn.sh