Advertisement
Guest User

Untitled

a guest
Mar 9th, 2017
256
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.36 KB | None | 0 0
  1. @ECHO OFF
  2. FOR /F %%I IN ("%0") DO SET BATDIR=%%~dpI ::Set run-location.
  3. mode con cols=150 lines=50 >nul
  4.  
  5. openfiles > NUL 2>&1
  6. if %ERRORLEVEL% EQU 0 goto choice
  7. echo You need to run this script as Administrator.
  8. pause
  9. exit
  10.  
  11. :choice
  12. echo MENU:
  13. echo [1] INSTALL EVERYTHING
  14. echo.
  15. echo [2] INSTALL FIREWALL RULES
  16. echo [3] REMOVE FIREWALL RULES
  17. echo [4] SHOW INSTALLED FIREWALL RULES
  18. echo [5] CHANGE NETWORK LOCATION TO PRIVATE
  19. echo [6] SHOW NETWORK LOCATION
  20. echo.
  21. echo [7] OPENVPN - AUTOSTART SERVICE
  22. echo [8] OPENVPN - DOWNLOAD SERVER CONFIG
  23. echo.
  24. echo [9] INFO
  25. echo [10] EXIT
  26. echo ==========================
  27. echo Enter selection and press ENTER key:
  28. set /P c=
  29. if /I "%c%" EQU "1" goto :changenetworklocation
  30. if /I "%c%" EQU "2" goto :install
  31. if /I "%c%" EQU "3" goto :remove
  32. if /I "%c%" EQU "4" goto :installedrules
  33. if /I "%c%" EQU "5" goto :changenetworklocation
  34. if /I "%c%" EQU "6" goto :shownetworklocation
  35. if /I "%c%" EQU "7" goto :openvpnauto
  36. if /I "%c%" EQU "8" goto :downlserverconf
  37. if /I "%c%" EQU "9" goto :info
  38. if /I "%c%" EQU "10" goto :exit
  39. pause
  40. cls
  41. goto :choice
  42.  
  43. :install
  44. set /p Torrentpath= Input path to torrentclient (example: C:\Program Files (x86)\uTorrent\uTorrent.exe)
  45. netsh advfirewall firewall show rule name="Torrentclient - Block incoming (Without vpn)" >nul
  46. if %errorlevel%== 0 (
  47. echo Rules already installed.
  48. echo.
  49. ) ELSE (
  50. netsh advfirewall firewall add rule name="Torrentclient - Block incoming (Without vpn)" dir=in action=block program="%Torrentpath%" profile=private,domain >nul
  51. netsh advfirewall firewall add rule name="Torrentclient - Block outgoing (Without vpn)" dir=out action=block program="%Torrentpath%" profile=private,domain >nul
  52. echo Rules installed.
  53. )
  54. for /f "delims=" %%a in ('reg query "HKEY_LOCAL_MACHINE\software\microsoft\windows nt\currentversion\networklist\Profiles" ^| FIND "{"') do set var=%%~nxa&goto :done
  55. :done
  56. reg query "HKEY_LOCAL_MACHINE\software\microsoft\windows nt\currentversion\networklist\Profiles\%var%" /v Category | find "0x1">nul
  57. if %ERRORLEVEL% EQU 0 echo Your network is set to Private. >nul
  58. if %ERRORLEVEL% EQU 1 echo Your network is set to Domain or public. The vpn-rules requires a private network.
  59. if "%c%"=="1" goto :downlserverconf
  60. pause
  61. cls
  62. goto :choice
  63.  
  64.  
  65. :remove
  66. netsh advfirewall firewall show rule name="Torrentclient - Block incoming (Without vpn)" >nul
  67. if %errorlevel%== 1 (
  68. echo Rules already removed.
  69. echo.
  70. ) ELSE (
  71. netsh advfirewall firewall delete rule name="Torrentclient - Block incoming (Without vpn)" >nul
  72. netsh advfirewall firewall delete rule name="Torrentclient - Block outgoing (Without vpn)" >nul
  73. echo Rules removed.
  74. )
  75. pause
  76. cls
  77. goto :choice
  78.  
  79.  
  80. :installedrules
  81. netsh advfirewall firewall show rule name="Torrentclient - Block incoming (Without vpn)"
  82. netsh advfirewall firewall show rule name="Torrentclient - Block outgoing (Without vpn)"
  83. pause
  84. cls
  85. goto :choice
  86.  
  87.  
  88. :shownetworklocation
  89. for /f "delims=" %%a in ('reg query "HKEY_LOCAL_MACHINE\software\microsoft\windows nt\currentversion\networklist\Profiles" ^| FIND "{"') do set var=%%~nxa&goto :done
  90. :done
  91. reg query "HKEY_LOCAL_MACHINE\software\microsoft\windows nt\currentversion\networklist\Profiles\%var%" /v Category | find "0x1">nul
  92. if %ERRORLEVEL% EQU 0 echo Your network is set to Private.
  93. if %ERRORLEVEL% EQU 1 echo Your network is set to Domain or public.
  94. pause
  95. cls
  96. goto :choice
  97.  
  98.  
  99. :changenetworklocation
  100. for /f "delims=" %%a in ('reg query "HKEY_LOCAL_MACHINE\software\microsoft\windows nt\currentversion\networklist\Profiles" ^| FIND "{"') do set var=%%~nxa&goto :done >nul
  101. :done
  102. Reg Add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles\%var%" /V Category /t REG_DWORD /d 1 /f >nul
  103. if "%c%"=="1" goto :install
  104. echo Your network is set to Private, restart your computer.
  105. pause
  106. cls
  107. goto :choice
  108.  
  109.  
  110. :openvpnauto
  111. SC QUERY Openvpnservice > NUL
  112. IF ERRORLEVEL 1060 (
  113. ECHO OPENVPN SERVICE IS NOT INSTALLED.
  114. pause
  115. exit
  116. ) ELSE (
  117. SC Config "Openvpnservice" start= AUTO > NUL
  118. )
  119.  
  120.  
  121. IF EXIST "%ProgramFiles%\OpenVPN\config\" (
  122. echo EXISTS > NUL
  123. ) ELSE (
  124. ECHO ERROR CAN'T FIND OPENVPN-DIRECTORY
  125. pause
  126. exit
  127. )
  128.  
  129.  
  130. IF EXIST "%ProgramFiles%\OpenVPN\config\*.ovpn" (
  131. GOTO MAKEAUTH
  132. ) ELSE (
  133. ECHO ERROR NO OPENVPN CONFIGURATION FILES.
  134. pause
  135. exit
  136. )
  137.  
  138.  
  139. :MAKEAUTH
  140. cls
  141. set /p usern= Input your vpn username:
  142. set /p passw= input your vpn password:
  143. cls
  144. echo Username:%usern% Password:%passw% is this correct? [Y] [N]
  145. set /P m=
  146. if /I "%m%" EQU "Y" goto :MAKEFILEA
  147. if /I "%m%" EQU "N" goto :MAKEAUTH
  148. cls
  149.  
  150. :MAKEFILEA
  151. cls
  152. cd %~dp0 >nul
  153. echo %usern%>auth.txt
  154. echo %passw%>>auth.txt
  155. icacls "auth.txt" /setowner %username% /T /C >nul
  156. copy auth.txt "%ProgramFiles%\OpenVPN\config" >nul
  157. del auth.txt >nul
  158. set ThisScriptsDirectory=%~dp0
  159. set PowerShellScriptPath=%ThisScriptsDirectory%ovpn_auth.ps1
  160. PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {Start-Process PowerShell -ArgumentList '-NoProfile -ExecutionPolicy Bypass -File ""%PowerShellScriptPath%""' -Verb RunAs}";
  161. echo Installing...
  162. timeout 10 >nul
  163. cls
  164. if "%c%"=="1" echo FIREWALL RULES ARE INSTALLED, OPENVPN IS RUNNING AS AUTOSTART SERVICE. RESTART YOUR COMPUTER. & pause & exit
  165. echo OPENVPN is now running as autostart service. Restart your computer.
  166. pause
  167. cls
  168. goto :choice
  169.  
  170. :DOWNLSERVERCONF
  171. IF NOT EXIST "%ProgramFiles%\OpenVPN\config" echo OPENVPN NOT INSTALLED & pause & exit
  172. cls
  173. echo [1] Sweden servers UDP
  174. echo [2] Sweden servers TCP
  175. echo [3] Germany servers UDP
  176. echo [4] Germany servers TCP
  177. echo [5] Netherland servers UDP
  178. echo [6] Netherland servers TCP
  179. echo [7] Canada servers UDP
  180. echo [8] Canada servers TCP
  181.  
  182. echo Select serverconfig and press ENTER key:
  183. set /P d=
  184. if /I "%d%" EQU "1" set addr=https://files.ovpn.se/windows/ovpn-se.ovpn & set addrfile=ovpn-se.ovpn & GOTO :INSTALLSERVERCONFIG >nul
  185. if /I "%d%" EQU "2" set addr=https://files.ovpn.se/windows/ovpn-se-tcp.ovpn & set addrfile=ovpn-se-tcp.ovpn & GOTO :INSTALLSERVERCONFIG >nul
  186.  
  187. if /I "%d%" EQU "3" set addr=https://files.ovpn.se/windows/ovpn-de.ovpn & set addrfile=ovpn-de.ovpn & GOTO :INSTALLSERVERCONFIG >nul
  188. if /I "%d%" EQU "4" set addr=https://files.ovpn.se/windows/ovpn-de-tcp.ovpn & set addrfile=ovpn-de-tcp.ovpn & GOTO :INSTALLSERVERCONFIG >nul
  189.  
  190. if /I "%d%" EQU "5" set addr=https://files.ovpn.se/windows/ovpn-nl.ovpn & set addrfile=ovpn-nl.ovpn & GOTO :INSTALLSERVERCONFIG >nul
  191. if /I "%d%" EQU "6" set addr=https://files.ovpn.se/windows/ovpn-nl-tcp.ovpn & set addrfile=ovpn-nl-tcp.ovpn & GOTO :INSTALLSERVERCONFIG >nul
  192.  
  193. if /I "%d%" EQU "7" set addr=https://files.ovpn.se/windows/ovpn-ca.ovpn & set addrfile=ovpn-ca.ovpn & GOTO :INSTALLSERVERCONFIG >nul
  194. if /I "%d%" EQU "8" set addr=https://files.ovpn.se/windows/ovpn-ca-tcp.ovpn & set addrfile=ovpn-ca-tcp.ovpn & GOTO :INSTALLSERVERCONFIG >nul
  195.  
  196.  
  197. :installserverconfig
  198. cls
  199. echo Installing server configuration wait...
  200. bitsadmin.exe /transfer "ovpndowload" %addr% "%userprofile%\desktop\%addrfile%" >nul
  201. cd %userprofile%\desktop\ >nul
  202. icacls "*.ovpn" /setowner %username% /T /C >nul
  203. copy *.ovpn "%ProgramFiles%\OpenVPN\config" >nul
  204. del *.ovpn >nul
  205.  
  206. if "%c%"=="1" goto :openvpnauto
  207. pause
  208. cls
  209. goto :choice
  210.  
  211. :info
  212. cls
  213. echo INSTALL EVERYTHING
  214. echo Sets network to private
  215. echo Installs firewall rules
  216. echo Download OVPN-config files.
  217. echo Sets up OPENVPN client as autostart service with autologin.
  218. echo.
  219. echo.
  220. echo INSTALL FIREWALL RULES.
  221. echo Installs two Windows firewall rules.
  222. echo Which prevents torrent client to send and receive traffic if vpn-client connection drops.
  223. echo.
  224. echo.
  225. echo REMOVE FIREWALL RULES
  226. echo Removes installed rules.
  227. echo.
  228. echo.
  229. echo SHOW INSTALLED FIREWALL RULES
  230. echo Show installed rules settings.
  231. echo.
  232. echo.
  233. echo CHANGE NETWORK LOCATION TO PRIVATE
  234. echo Change your network ethernet adapter from Public/domain to Private.
  235. echo The firewall "kill-switch" only works if your regular ethernet adapter is set to Private.
  236. echo and your tap-adapter (Vpn-connection) is set to Public.
  237. echo.
  238. echo.
  239. echo SHOW NETWORK LOCATION
  240. echo Show your network location.
  241. echo.
  242. echo.
  243. echo OPENVPN - AUTOSTART SERVICE
  244. echo Set up OPENVPN client as autostart service
  245. echo Auto login OpenVPN without prompt for username and password.
  246. echo.
  247. echo.
  248. echo OPENVPN - DOWNLOAD SERVER CONFIG
  249. echo Download server configuration files (.ovpn) from ovnp.se
  250. echo.
  251. pause
  252. cls
  253. goto :choice
  254.  
  255.  
  256. :exit
  257. exit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement