====== OpenVPN Windows instalācijas ar gatavu konfigurāciju izveide ======
Šajā rakstā tiek aprakstīts OpenVPN instalatora izveide, kur jau ir pievienota gatava VPN pieslēgšanās konfigurācija.
Lejupielādējam instalatora veidotāju [[http://nsis.sourceforge.net/Download|NSIS]] un instalējam.
Izveidojam katalogu, kur tiks savākti visi instalēšanai paredzētie komponenti.
Lejupielādējam [[http://openvpn.se/download.html|OpenVPN GUI]]
===== Kataloga struktūra =====
./openvpn.nsi
./source/openvpn-x.x.x-install.exe
./config/ca.crt
./config/client.crt
./config/client.key
./config/client.ovpn
''config'' katalogā atrodas VPN pieslēguma konfigurācijas faili un sertifikāti.
Windows reģistra fails, kas nepieciešams, lai Windows 7 programma laistos ar administratora prvilēģijām.
''openvpn-gui-x.x.x.exe'' - jānorāda atbilstošā gui instalējamā versija.
!ifndef CONFIG_DIR
!define CONFIG_DIR "config"
!endif
# Ar kādu faila nosaukumu būs gatavā instalācija
!ifndef OUTPUT_EXE
!define OUTPUT_EXE "vpn-install.exe"
!endif
BrandingText "VPN Installer"
Caption "VPN Installer"
CompletedText "VPN Installation Complete"
InstProgressFlags colored smooth
Name "VPN Installer"
OutFile ${OUTPUT_EXE}
RequestExecutionLevel admin
# Nekad nerādīt instalēšanas detaļas
ShowInstDetails nevershow
XPStyle off
Section ""
# Var /GLOBAL targetdir
# Maybe warn that directory is not here?
# @todo check for OpenVPN Dir in Registry
DetailPrint "VPN"
IfFileExists "$PROGRAMFILES32\OpenVPN\bin\openvpn-gui-X.X.X.exe" goodVPN failVPN
failVPN:
SetOutPath $EXEDIR
DetailPrint "Extracting OpenVPN $OUTDIR"
# Bundle OpenVPN Installer
File source\openvpn-x.x.x-install.exe
# /S - instalēt klusā režīmā. Neuzdot nekādus jautājumus lietotājam
ExecWait "$EXEDIR\openvpn-2.1.1-install.exe /S" $0
# Zero == Success, One == Fail, handle
IntCmp $0 0 goodInstall
DetailPrint "Failed to Install: $0"
MessageBox MB_OK|MB_ICONSTOP "Failed to install OpenVPN, this is required to continue. Installation aborted."
Quit
goodInstall:
Goto doneVPN
goodVPN:
DetailPrint "OpenVPN Already Installed"
doneVPN:
#
WriteRegStr HKCU "Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" "$PROGRAMFILES32\OpenVPN\bin\openvpn-gui-x.x.x.exe" "RUNASADMIN"
# @todo read registry for install values?
# @todo find the registry entries for the OpenVPN configuration
# ReadRegStr $0 HKLM Software\
# SetOutPath $0
SetOutPath "$PROGRAMFILES32\OpenVPN"
# Full contents of Config
File /r /x .svn ${CONFIG_DIR}
SectionEnd
===== NSIS =====
Palaižam un izvēlamies ''Compile NSI scripts''.
''File -> Load Script'', atrodam katalogu un izvēlamies ''.nsi'' failu. Uzreiz pēc faila atvēršanas tiks sākts instalatora kompilācijas process. Ja viss kārtībā, tad tanī pat katalogā parādīsies fails ar nosaukumu ''vpn-install.exe''.
===== Papildinformācija =====
* [[http://nsis.sourceforge.net/Docs/Contents.html|NSIS Lietotāja rokasgrāmata]]
* [[http://kiberblog.clan.su/blog/2009-07-07-16|Инсталятор OPENVPN]]
* [[http://openvpn.se/files/howto/openvpn-howto_roll_your_own_installation_package-Rev1.1.html|HowTo Roll Your Own OpenVPN Windows Installation Package]]
{{tag>"windows 7" "windows xp" windows OpenVPN}}