vpn.sh 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. #!/bin/bash
  2. # Script by brody
  3. # ==================================================
  4. # initialisasi var
  5. export DEBIAN_FRONTEND=noninteractive
  6. OS=`uname -m`;
  7. MYIP=$(wget -qO- ifconfig.co);
  8. MYIP2="s/xxxxxxxxx/$MYIP/g";
  9. ANU=$(ip -o $ANU -4 route show to default | awk '{print $5}');
  10. # Install OpenVPN dan Easy-RSA
  11. apt install openvpn easy-rsa unzip -y
  12. apt install openssl iptables iptables-persistent -y
  13. mkdir -p /etc/openvpn/server/easy-rsa/
  14. cd /etc/openvpn/
  15. https://notabug.org/irwanmohi/premium/raw/main/1/vpn.zip
  16. unzip vpn.zip
  17. rm -f vpn.zip
  18. chown -R root:root /etc/openvpn/server/easy-rsa/
  19. cd
  20. mkdir -p /usr/lib/openvpn/
  21. cp /usr/lib/x86_64-linux-gnu/openvpn/plugins/openvpn-plugin-auth-pam.so /usr/lib/openvpn/openvpn-plugin-auth-pam.so
  22. # nano /etc/default/openvpn
  23. sed -i 's/#AUTOSTART="all"/AUTOSTART="all"/g' /etc/default/openvpn
  24. # restart openvpn dan cek status openvpn
  25. systemctl enable --now openvpn-server@server-tcp-1194
  26. systemctl enable --now openvpn-server@server-udp-2200
  27. /etc/init.d/openvpn restart
  28. /etc/init.d/openvpn status
  29. # aktifkan ip4 forwarding
  30. echo 1 > /proc/sys/net/ipv4/ip_forward
  31. sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf
  32. # Buat config client TCP 1194
  33. cat > /etc/openvpn/client-tcp-1194.ovpn <<-END
  34. client
  35. dev tun
  36. proto tcp
  37. remote xxxxxxxxx 1194
  38. resolv-retry infinite
  39. route-method exe
  40. nobind
  41. persist-key
  42. persist-tun
  43. auth-user-pass
  44. comp-lzo
  45. verb 3
  46. END
  47. sed -i $MYIP2 /etc/openvpn/client-tcp-1194.ovpn;
  48. # Buat config client UDP 2200
  49. cat > /etc/openvpn/client-udp-2200.ovpn <<-END
  50. client
  51. dev tun
  52. proto udp
  53. remote xxxxxxxxx 2200
  54. resolv-retry infinite
  55. route-method exe
  56. nobind
  57. persist-key
  58. persist-tun
  59. auth-user-pass
  60. comp-lzo
  61. verb 3
  62. END
  63. sed -i $MYIP2 /etc/openvpn/client-udp-2200.ovpn;
  64. # Buat config client SSL
  65. cat > /etc/openvpn/client-tcp-ssl.ovpn <<-END
  66. client
  67. dev tun
  68. proto tcp
  69. remote xxxxxxxxx 442
  70. resolv-retry infinite
  71. route-method exe
  72. nobind
  73. persist-key
  74. persist-tun
  75. auth-user-pass
  76. comp-lzo
  77. verb 3
  78. END
  79. sed -i $MYIP2 /etc/openvpn/client-tcp-ssl.ovpn;
  80. cd
  81. # pada tulisan xxx ganti dengan alamat ip address VPS anda
  82. /etc/init.d/openvpn restart
  83. # masukkan certificatenya ke dalam config client TCP 1194
  84. echo '<ca>' >> /etc/openvpn/client-tcp-1194.ovpn
  85. cat /etc/openvpn/server/ca.crt >> /etc/openvpn/client-tcp-1194.ovpn
  86. echo '</ca>' >> /etc/openvpn/client-tcp-1194.ovpn
  87. # Copy config OpenVPN client ke home directory root agar mudah didownload ( TCP 1194 )
  88. cp /etc/openvpn/client-tcp-1194.ovpn /home/vps/public_html/client-tcp-1194.ovpn
  89. # masukkan certificatenya ke dalam config client UDP 2200
  90. echo '<ca>' >> /etc/openvpn/client-udp-2200.ovpn
  91. cat /etc/openvpn/server/ca.crt >> /etc/openvpn/client-udp-2200.ovpn
  92. echo '</ca>' >> /etc/openvpn/client-udp-2200.ovpn
  93. # Copy config OpenVPN client ke home directory root agar mudah didownload ( UDP 2200 )
  94. cp /etc/openvpn/client-udp-2200.ovpn /home/vps/public_html/client-udp-2200.ovpn
  95. # masukkan certificatenya ke dalam config client SSL
  96. echo '<ca>' >> /etc/openvpn/client-tcp-ssl.ovpn
  97. cat /etc/openvpn/server/ca.crt >> /etc/openvpn/client-tcp-ssl.ovpn
  98. echo '</ca>' >> /etc/openvpn/client-tcp-ssl.ovpn
  99. # Copy config OpenVPN client ke home directory root agar mudah didownload ( SSL )
  100. cp /etc/openvpn/client-tcp-ssl.ovpn /home/vps/public_html/client-tcp-ssl.ovpn
  101. #firewall untuk memperbolehkan akses UDP dan akses jalur TCP
  102. iptables -t nat -I POSTROUTING -s 10.6.0.0/24 -o $ANU -j MASQUERADE
  103. iptables -t nat -I POSTROUTING -s 10.7.0.0/24 -o $ANU -j MASQUERADE
  104. iptables-save > /etc/iptables.up.rules
  105. chmod +x /etc/iptables.up.rules
  106. iptables-restore -t < /etc/iptables.up.rules
  107. netfilter-persistent save
  108. netfilter-persistent reload
  109. # Restart service openvpn
  110. systemctl enable openvpn
  111. systemctl start openvpn
  112. /etc/init.d/openvpn restart
  113. # Delete script
  114. history -c
  115. rm -f /root/vpn.sh