123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501 |
- #!/bin/bash
- ### 🔰 COPYRIGHT © 2021 OnePieceVPN, Inc 🔰 ###
- # Mod by PrinceNewbie
- # ==================================================
- # initialisasi var
- export DEBIAN_FRONTEND=noninteractive
- OS=`uname -m`;
- MYIP=$(wget -qO- ipv4.icanhazip.com);
- MYIP2="s/xxxxxxxxx/$MYIP/g";
- ANU=$(ip -o $ANU -4 route show to default | awk '{print $5}');
- apt-get -y install apt-transport-https lsb-release ca-certificates curl
- curl -sSL -o /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
- sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
- apt update
- # install webserver
- cd
- rm /etc/nginx/sites-enabled/default
- rm /etc/nginx/sites-available/default
- wget -O /etc/nginx/nginx.conf "https://raw.githubusercontent.com/irwanmohi/test/master/simpleocs/nginx.conf"
- wget -O /etc/nginx/conf.d/vps.conf "https://raw.githubusercontent.com/irwanmohi/test/master/simpleocs/vps.conf"
- wget -O /etc/nginx/conf.d/monitoring.conf "https://raw.githubusercontent.com/irwanmohi/test/master/simpleocs/monitoring.conf"
- mkdir -p /home/vps/public_html
- wget -O /home/vps/public_html/index.php "https://raw.githubusercontent.com/irwanmohi/test/master/simpleocs/index.php"
- sed -i 's/listen = \/run\/php\/php7.3-fpm.sock/listen = 127.0.0.1:9000/g' /etc/php/7.3/fpm/pool.d/www.conf
- sed -i $MYIP2 /home/vps/public_html/index.php;
- service php7.3-fpm restart
- service nginx restart
- # OpenVPN monitoring
- apt-get install -y gcc libgeoip-dev python-virtualenv python-dev geoip-database-extra uwsgi uwsgi-plugin-python
- wget -O /srv/openvpn-monitor.tar "https://raw.githubusercontent.com/irwanmohi/test/master/simpleocs/openvpn-monitor.tar"
- cd /srv
- tar xf openvpn-monitor.tar
- cd openvpn-monitor
- virtualenv .
- . bin/activate
- pip install -r requirements.txt
- wget -O /etc/uwsgi/apps-available/openvpn-monitor.ini "https://raw.githubusercontent.com/irwanmohi/test/master/simpleocs/openvpn-monitor.ini"
- ln -s /etc/uwsgi/apps-available/openvpn-monitor.ini /etc/uwsgi/apps-enabled/
- # GeoIP For OpenVPN Monitor
- mkdir -p /var/lib/GeoIP
- wget -O /var/lib/GeoIP/GeoLite2-City.mmdb.gz "https://raw.githubusercontent.com/irwanmohi/test/master/simpleocs/GeoLite2-City.mmdb.gz"
- gzip -d /var/lib/GeoIP/GeoLite2-City.mmdb.gz
- # install vnstat gui
- cd /home/vps/public_html/
- wget https://raw.githubusercontent.com/daybreakersx/premscript/master/vnstat_php_frontend-1.5.1.tar.gz
- tar xf vnstat_php_frontend-1.5.1.tar.gz
- rm vnstat_php_frontend-1.5.1.tar.gz
- mv vnstat_php_frontend-1.5.1 vnstat
- cd vnstat
- sed -i "s/\$iface_list = array('eth0', 'sixxs');/\$iface_list = array('eth0');/g" config.php
- sed -i "s/\$language = 'nl';/\$language = 'en';/g" config.php
- sed -i 's/Internal/Internet/g' config.php
- sed -i '/SixXS IPv6/d' config.php
- cd
- # install mrtg
- wget -O /etc/snmp/snmpd.conf "https://raw.githubusercontent.com/daybreakersx/premscript/master/snmpd.conf"
- wget -O /root/mrtg-mem.sh "https://raw.githubusercontent.com/daybreakersx/premscript/master/mrtg-mem.sh"
- chmod +x /root/mrtg-mem.sh
- cd /etc/snmp/
- sed -i 's/TRAPDRUN=no/TRAPDRUN=yes/g' /etc/default/snmpd
- service snmpd restart
- snmpwalk -v 1 -c public localhost 1.3.6.1.4.1.2021.10.1.3.1
- mkdir -p /home/vps/public_html/mrtg
- cfgmaker --zero-speed 100000000 --global 'WorkDir: /home/vps/public_html/mrtg' --output /etc/mrtg.cfg public@localhost
- curl "https://raw.githubusercontent.com/daybreakersx/premscript/master/mrtg.conf" >> /etc/mrtg.cfg
- sed -i 's/WorkDir: \/var\/www\/mrtg/# WorkDir: \/var\/www\/mrtg/g' /etc/mrtg.cfg
- sed -i 's/# Options\[_\]: growright, bits/Options\[_\]: growright/g' /etc/mrtg.cfg
- indexmaker --output=/home/vps/public_html/mrtg/index.html /etc/mrtg.cfg
- if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; then mkdir -p /var/log/mrtg ; env LANG=C /usr/bin/mrtg /etc/mrtg.cfg 2>&1 | tee -a /var/log/mrtg/mrtg.log ; fi
- if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; then mkdir -p /var/log/mrtg ; env LANG=C /usr/bin/mrtg /etc/mrtg.cfg 2>&1 | tee -a /var/log/mrtg/mrtg.log ; fi
- if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; then mkdir -p /var/log/mrtg ; env LANG=C /usr/bin/mrtg /etc/mrtg.cfg 2>&1 | tee -a /var/log/mrtg/mrtg.log ; fi
- cd
- # Install OpenVPN dan Easy-RSA
- apt install -y openvpn easy-rsa openssl apache2 ufw
- apt install -y iptables iptables-persistent
- -
- # install openvpn
- # wget -O /etc/openvpn/vpn.zip "https://github.com/raw/main/vpn.zip"
- # cd /etc/openvpn/
- # unzip vpn.zip
- # rm -f vpn.zip
- cd
- # Buat config server TCP 1194
- cd /etc/openvpn
- cat > /etc/openvpn/server-tcp-1194.conf <<-END
- port 1194
- proto tcp
- dev tun
- ca /etc/openvpn/ca.crt
- cert /etc/openvpn/server.crt
- key /etc/openvpn/server.key
- dh /etc/openvpn/dh2048.pem
- plugin /usr/lib/openvpn/openvpn-plugin-auth-pam.so login
- verify-client-cert none
- username-as-common-name
- server 10.6.0.0 255.255.255.0
- ifconfig-pool-persist ipp.txt
- push "redirect-gateway def1 bypass-dhcp"
- push "dhcp-option DNS 8.8.8.8"
- push "dhcp-option DNS 8.8.4.4"
- keepalive 5 30
- comp-lzo
- persist-key
- persist-tun
- status server-tcp-1194.log
- verb 3
- END
- # Buat config server TCP 1197
- cd /etc/openvpn
- cat > /etc/openvpn/server-tcp-1197.conf <<-END
- port 1197
- proto tcp
- dev tun
- ca /etc/openvpn/ca.crt
- cert /etc/openvpn/server.crt
- key /etc/openvpn/server.key
- dh /etc/openvpn/dh2048.pem
- plugin /usr/lib/openvpn/openvpn-plugin-auth-pam.so login
- verify-client-cert none
- username-as-common-name
- server 10.6.0.0 255.255.255.0
- ifconfig-pool-persist ipp.txt
- push "redirect-gateway def1 bypass-dhcp"
- push "dhcp-option DNS 8.8.8.8"
- push "dhcp-option DNS 8.8.4.4"
- push "route-method exe"
- push "route-delay 2"
- keepalive 10 120
- comp-lzo
- user nobody
- group nogroup
- persist-key
- persist-tun
- status server-tcp-1197.log
- verb 3
- END
- # Buat config server UDP 2200
- cat > /etc/openvpn/server-udp-2200.conf <<-END
- port 2200
- proto udp
- dev tun
- ca /etc/openvpn/ca.crt
- cert /etc/openvpn/server.crt
- key /etc/openvpn/server.key
- dh /etc/openvpn/dh2048.pem
- plugin /usr/lib/openvpn/openvpn-plugin-auth-pam.so login
- verify-client-cert none
- username-as-common-name
- server 10.7.0.0 255.255.255.0
- ifconfig-pool-persist ipp.txt
- push "redirect-gateway def1 bypass-dhcp"
- push "dhcp-option DNS 8.8.8.8"
- push "dhcp-option DNS 8.8.4.4"
- push "route-method exe"
- push "route-delay 2"
- keepalive 10 120
- comp-lzo
- user nobody
- group nogroup
- persist-key
- persist-tun
- status server-udp-2200.log
- verb 3
- END
- cd
- mkdir -p /usr/lib/openvpn/
- cp /usr/lib/x86_64-linux-gnu/openvpn/plugins/openvpn-plugin-auth-pam.so /usr/lib/openvpn/openvpn-plugin-auth-pam.so
- # nano /etc/default/openvpn
- sed -i 's/#AUTOSTART="all"/AUTOSTART="all"/g' /etc/default/openvpn
- # Cari pada baris #AUTOSTART=”all” hilangkan tanda pagar # didepannya sehingga menjadi AUTOSTART=”all”. Save dan keluar dari editor
- # restart openvpn dan cek status openvpn
- /etc/init.d/openvpn restart
- /etc/init.d/openvpn status
- # aktifkan ip4 forwarding
- echo 1 > /proc/sys/net/ipv4/ip_forward
- sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf
- # edit file sysctl.conf
- # nano /etc/sysctl.conf
- # Uncomment hilangkan tanda pagar pada #net.ipv4.ip_forward=1
- # Konfigurasi dan Setting untuk Client
- mkdir clientconfig
- cp /etc/openvpn/{server.crt,server.key,ca.crt,ta.key} clientconfig/
- cd clientconfig
- # Buat config client TCP 1197
- cd /etc/openvpn
- cat > /etc/openvpn/client-tcp-1197.ovpn <<-END
- ############## WELCOME TO OnePieceVPN###############
- ### 🔰 COPYRIGHT © 2021 OnePieceVPN, Inc 🔰 ######
- ####### DONT FORGET TO SUPPORT US #######
- client
- dev tun
- proto tcp
- setenv FRIENDLY_NAME "OnePieceVPN Inc"
- remote xxxxxxxxx 1197
- remote-cert-tls server
- connect-retry infinite
- resolv-retry infinite
- nobind
- persist-key
- persist-tun
- auth-user-pass
- auth none
- auth-nocache
- cipher none
- comp-lzo
- redirect-gateway def1
- setenv CLIENT_CERT 0
- reneg-sec 0
- verb 3
- http-proxy $MYIP 8080
- http-proxy-option VERSION 1.1
- http-proxy-option AGENT Chrome/80.0.3987.87
- http-proxy-option CUSTOM-HEADER Host bug.com
- http-proxy-option CUSTOM-HEADER X-Forward-Host bug.com
- http-proxy-option CUSTOM-HEADER X-Forwarded-For bug.com
- http-proxy-option CUSTOM-HEADER Referrer bug.com
- dhcp-option DNS 8.8.8.8
- dhcp-option DNS 8.8.4.4
- END
- sed -i $MYIP2 /etc/openvpn/client-tcp-1194.ovpn;
- # Buat config client UDP 1194
- cd /etc/openvpn
- cat > /etc/openvpn/client-udp-1194.ovpn <<-END
- ############## WELCOME TO ###############
- ########## syapik96 ###########
- ####### DONT FORGET TO SUPPORT US #######
- client
- dev tun
- proto udp
- remote xxxxxxxxx 1194
- rremote-cert-tls server
- connect-retry infinite
- resolv-retry infinite
- nobind
- persist-key
- persist-tun
- auth-user-pass
- auth none
- auth-nocache
- cipher none
- comp-lzo
- redirect-gateway def1
- setenv CLIENT_CERT 0
- reneg-sec 0
- verb 3
- http-proxy $MYIP 8080
- http-proxy-option VERSION 1.1
- http-proxy-option AGENT Chrome/80.0.3987.87
- http-proxy-option CUSTOM-HEADER Host bug.com
- http-proxy-option CUSTOM-HEADER X-Forward-Host bug.com
- http-proxy-option CUSTOM-HEADER X-Forwarded-For bug.com
- http-proxy-option CUSTOM-HEADER Referrer bug.com
- END
- sed -i $MYIP2 /etc/openvpn/client-udp-1194.ovpn;
- # Buat config client TCP 1194
- cat > /etc/openvpn/client-tcp-1194.ovpn <<-END
- ############## WELCOME TO OnePieceVPN ###############
- ### 🔰 COPYRIGHT © 2021 OnePieceVPN, Inc 🔰 ######
- ####### DONT FORGET TO SUPPORT US #######
- client
- dev tun
- proto tcp
- remote xxxxxxxxx 1194
- rremote-cert-tls server
- connect-retry infinite
- resolv-retry infinite
- nobind
- persist-key
- persist-tun
- auth-user-pass
- auth none
- auth-nocache
- cipher none
- comp-lzo
- redirect-gateway def1
- setenv CLIENT_CERT 0
- reneg-sec 0
- verb 3
- http-proxy $MYIP 8080
- http-proxy-option VERSION 1.1
- http-proxy-option AGENT Chrome/80.0.3987.87
- http-proxy-option CUSTOM-HEADER Host bug.com
- http-proxy-option CUSTOM-HEADER X-Forward-Host bug.com
- http-proxy-option CUSTOM-HEADER X-Forwarded-For bug.com
- http-proxy-option CUSTOM-HEADER Referrer bug.com
- END
- sed -i $MYIP2 /etc/openvpn/client-tcp-1194.ovpn;
- # Buat config client UDP 2200
- cat > /etc/openvpn/client-udp-2200.ovpn <<-END
- ############## WELCOME TO OnePieceVPN ###############
- ### 🔰 COPYRIGHT © 2021 OnePieceVPN, Inc 🔰 ######
- ####### DONT FORGET TO SUPPORT US #######
- client
- dev tun
- proto udp
- remote xxxxxxxxx 2200
- resolv-retry infinite
- route-method exe
- nobind
- persist-key
- persist-tun
- auth-user-pass
- comp-lzo
- verb 3
- END
- sed -i $MYIP2 /etc/openvpn/client-udp-2200.ovpn;
- # Buat config client TCP 2200
- cat > /etc/openvpn/client-tcp-2200.ovpn <<-END
- ############## WELCOME TO OnePieceVPN ###############
- ### 🔰 COPYRIGHT © 2021 OnePieceVPN, Inc 🔰 ######
- ####### DONT FORGET TO SUPPORT US #######
- client
- dev tun
- proto tcp
- remote xxxxxxxxx 2200
- resolv-retry infinite
- route-method exe
- nobind
- persist-key
- persist-tun
- auth-user-pass
- comp-lzo
- verb 3
- END
- sed -i $MYIP2 /etc/openvpn/client-tcp-2200.ovpn;
- # Buat config client SSL
- cat > /etc/openvpn/client-tcp-ssl.ovpn <<-END
- ############## WELCOME TO OnePieceVPN ###############
- ### 🔰 COPYRIGHT © 2021 OnePieceVPN, Inc 🔰 ######
- ####### DONT FORGET TO SUPPORT US #######
- client
- dev tun
- proto tcp
- remote xxxxxxxxx 442
- resolv-retry infinite
- route-method exe
- nobind
- persist-key
- persist-tun
- auth-user-pass
- comp-lzo
- verb 3
- [openvpn]
- accept = 127.0.0.1:1194
- connect = $MYIP:443
- TIMEOUTclose = 0
- verify = 0
- sni = m.facebook.com
- END
- sed -i $MYIP2 /etc/openvpn/client-tcp-ssl.ovpn;
- cd
- # pada tulisan xxx ganti dengan alamat ip address VPS anda
- /etc/init.d/openvpn restart
- #1197
- # masukkan certificatenya ke dalam config client TCP 1197
- echo '<ca>' >> /etc/openvpn/client-tcp-1197.ovpn
- cat /etc/openvpn/ca.crt >> /etc/openvpn/client-tcp-1197.ovpn
- echo '</ca>' >> /etc/openvpn/client-tcp-1197.ovpn
- # Copy config OpenVPN client ke home directory root agar mudah didownload ( TCP 1197 )
- cp /etc/openvpn/client-tcp-1197.ovpn /home/vps/public_html/client-tcp-1197.ovpn
- #1194
- # masukkan certificatenya ke dalam config client TCP 1194
- echo '<ca>' >> /etc/openvpn/client-tcp-1194.ovpn
- cat /etc/openvpn/ca.crt >> /etc/openvpn/client-tcp-1194.ovpn
- echo '</ca>' >> /etc/openvpn/client-tcp-1194.ovpn
- # Copy config OpenVPN client ke home directory root agar mudah didownload ( TCP 1194 )
- cp /etc/openvpn/client-tcp-1194.ovpn /home/vps/public_html/client-tcp-1194.ovpn
- #2200
- # masukkan certificatenya ke dalam config client UDP 2200
- echo '<ca>' >> /etc/openvpn/client-udp-2200.ovpn
- cat /etc/openvpn/ca.crt >> /etc/openvpn/client-udp-2200.ovpn
- echo '</ca>' >> /etc/openvpn/client-udp-2200.ovpn
- # Copy config OpenVPN client ke home directory root agar mudah didownload ( UDP 2200 )
- cp /etc/openvpn/client-udp-2200.ovpn /home/vps/public_html/client-udp-2200.ovpn
- # masukkan certificatenya ke dalam config client SSL
- echo '<ca>' >> /etc/openvpn/client-tcp-ssl.ovpn
- cat /etc/openvpn/ca.crt >> /etc/openvpn/client-tcp-ssl.ovpn
- echo '</ca>' >> /etc/openvpn/client-tcp-ssl.ovpn
- # Copy config OpenVPN client ke home directory root agar mudah didownload ( SSL )
- cp /etc/openvpn/client-tcp-ssl.ovpn /home/vps/public_html/client-tcp-ssl.ovpn
- #firewall untuk memperbolehkan akses UDP dan akses jalur TCP
- iptables -t nat -I POSTROUTING -s 10.6.0.0/24 -o $ANU -j MASQUERADE
- iptables -t nat -I POSTROUTING -s 10.7.0.0/24 -o $ANU -j MASQUERADE
- iptables-save > /etc/iptables.up.rules
- chmod +x /etc/iptables.up.rules
- iptables-restore -t < /etc/iptables.up.rules
- # enable port for client connect server via config
- iptables -I INPUT 6 -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m tcp -p tcp --dport 1194 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m tcp -p tcp --dport 1197 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m tcp -p tcp --dport 2200 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m udp -p udp --dport 443 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m udp -p udp --dport 1194 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m udp -p udp --dport 1197 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m udp -p udp --dport 8080 -j ACCEPT
- iptables -I INPUT 6 -m state --state NEW -m udp -p udp --dport 2200 -j ACCEPT
- iptables-save > /etc/iptables.up.rules
- iptables-restore -t < /etc/iptables.up.rules
- netfilter-persistent save
- netfilter-persistent reload
- # add dns server ipv4
- echo "nameserver 8.8.8.8" > /etc/resolv.conf
- echo "nameserver 8.8.4.4" >> /etc/resolv.conf
- sed -i '$ i\echo "nameserver 8.8.8.8" > /etc/resolv.conf' /etc/rc.local
- sed -i '$ i\echo "nameserver 8.8.4.4" >> /etc/resolv.conf' /etc/rc.local
- # Restart service openvpn
- systemctl enable openvpn
- systemctl start openvpn
- /etc/init.d/openvpn restart
- # Restore iptables
- cat > /etc/network/if-up.d/iptables <<-END
- iptables-restore < /etc/iptables.up.rules
- iptables -t nat -A POSTROUTING -s 10.6.0.0/24 -o $ANU -j SNAT --to xxxxxxxxx
- iptables -t nat -A POSTROUTING -s 10.7.0.0/24 -o $ANU -j SNAT --to xxxxxxxxx
- END
- sed -i $MYIP2 /etc/network/if-up.d/iptables
- chmod +x /etc/network/if-up.d/iptables
- # restart opevpn
- /etc/init.d/openvpn restart
- # finishing
- cd
- chown -R www-data:www-data /home/vps/public_html
- /etc/init.d/nginx restart
- /etc/init.d/openvpn restart
- /etc/init.d/cron restart
- /etc/init.d/ssh restart
- /etc/init.d/dropbear restart
- /etc/init.d/fail2ban restart
- /etc/init.d/stunnel4 restart
- service php7.3-fpm restart
- service uwsgi restart
- systemctl daemon-reload
- service squid restart
- service pptpd restart
- /etc/init.d/webmin restart
- # clearing history
- rm -rf ~/.bash_history && history -c
- echo "unset HISTFILE" >> /etc/profile
- # remove unnecessary files
- apt -y autoremove
- apt -y autoclean
- apt -y clean
- # Delete script
- history -c
- rm -f /root/vpn.sh
|