આજકાલ, VPN ટેકનોલોજી વધુ લોકપ્રિય બની રહી છે. સામાન્ય વપરાશકર્તાઓ ઇન્ટરનેટને સુરક્ષિત રીતે ઍક્સેસ કરવા માટે VPN નો ઉપયોગ કરે છે. તે સ્થાનિક રીતે અવરોધિત વેબસાઇટ્સ અને સેવાઓને ફરવા અને શક્ય બાહ્ય દૂષિત વર્તન સામે રક્ષણ આપવામાં પણ મદદ કરે છે. જ્યારે તમે VPN સર્વર સાથે કનેક્ટ થાઓ છો, ત્યારે તમારા કમ્પ્યુટર અને સર્વર વચ્ચે એક સુરક્ષિત ટનલ હોય છે જેને બહારથી ઍક્સેસ કરી શકાતી નથી, તેથી VPN સર્વર તમારું ઇન્ટરનેટ ઍક્સેસ પોઇન્ટ બની જાય છે. ત્યાં ઘણી બધી VPN સેવાઓ છે, મફત અને ચૂકવણી કરેલ બંને, પરંતુ જો તે કોઈ કારણોસર તમારા માટે કામ ન કરે, તો તમે હંમેશા તમારા પોતાના VPN સર્વરને ગોઠવી શકો છો.
તમારા oun VPN ચલાવવા માટે, તમારે VPS સર્વર ભાડે લો. VPN કનેક્શન બનાવવા માટે વિવિધ સોફ્ટવેર છે. તે સપોર્ટેડ ઓપરેટિંગ સિસ્ટમ્સ અને ઉપયોગમાં લેવાતા અલ્ગોરિધમ્સ દ્વારા એકબીજાથી અલગ પડે છે. VPN સર્વર સેટ કરવા માટે આપણે બે સ્વતંત્ર અભિગમો પર એક નજર નાખીશું. પહેલો એક PPTP પ્રોટોકોલ પર આધારિત છે જે પહેલાથી જ જૂનો અને સુરક્ષિત નથી માનવામાં આવે છે પરંતુ તેને ગોઠવવા માટે ખરેખર સરળ છે. બીજો એક આધુનિક અને સુરક્ષિત સોફ્ટવેર OpenVPN નો ઉપયોગ કરે છે પરંતુ તેને તૃતીય-પક્ષ ક્લાયંટ એપ્લિકેશન ઇન્સ્ટોલ કરવાની અને વધુ સંપૂર્ણ સેટઅપ પ્રક્રિયાની જરૂર છે.
અમારા પરીક્ષણ વાતાવરણમાં, અમે ઉબુન્ટુ સર્વર 18.04 દ્વારા સંચાલિત વર્ચ્યુઅલ સર્વરનો ઉપયોગ કરવા જઈ રહ્યા છીએ. સર્વર પર ફાયરવોલ બંધ કરવામાં આવશે કારણ કે તેનું રૂપરેખાંકન એક અલગ લેખને પાત્ર છે. અમે Windows 10 પર સેટઅપ પ્રક્રિયાનું વર્ણન કરીશું.
તૈયારી
તમે ગમે તે VPN સર્વર પસંદ કરો, ઇન્ટરનેટ ઍક્સેસ ઓપરેટિંગ સિસ્ટમના સંકલિત માધ્યમો દ્વારા સેટ કરવામાં આવશે. બાહ્ય સેવા ઇન્ટરફેસ દ્વારા ઇન્ટરનેટ ઍક્સેસ ખોલવા માટે તમારે ઇન્ટરફેસ વચ્ચે પેકેટ ફોરવર્ડિંગને મંજૂરી આપવી પડશે અને નેટવર્ક સરનામાં અનુવાદ ગોઠવવો પડશે.
પેકેટ ફોરવર્ડિંગ ચાલુ કરવા માટે ફાઇલ ખોલો "/etc/sysctl.conf" અને બદલો “નેટ.આઈપીવી૪.આઈપી_ફોરવર્ડ” પરિમાણ મૂલ્ય માં 1.
કમ્પ્યુટર રીબૂટ કર્યા વિના ફેરફારો લાગુ કરવા માટે, આદેશ ચલાવો
sudo sysctl -p /etc/sysctl.conf
નેટવર્ક સરનામાં અનુવાદ આના માધ્યમથી ગોઠવેલ છે iptables. સૌ પ્રથમ, આદેશ ચલાવતા તમારા બાહ્ય નેટવર્ક ઇન્ટરફેસનું નામ તપાસો. "આઈપી લિંક શો" - આગલા પગલા પર તમને તેની જરૂર પડશે. અમારું નામ છે "ens3".
બધા સ્થાનિક નેટવર્ક નોડ્સ માટે તમારા બાહ્ય ઇન્ટરફેસ પર નેટવર્ક સરનામાં અનુવાદ સક્ષમ કરો.
sudo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
નોંધ કરો કે તમારે તમારા સર્વરના ઇન્ટરફેસનું સાચું નામ સ્પષ્ટ કરવાની જરૂર છે, તે આપણા કરતા અલગ હોઈ શકે છે.
ડિફૉલ્ટ રૂપે, iptables દ્વારા બનાવેલા બધા નિયમો સર્વર પુનઃપ્રારંભ થયા પછી રીસેટ થાય છે. તેને રોકવા માટે, ઉપયોગ કરો "iptables-સતત" ઉપયોગિતા. નીચેનું પેકેટ ઇન્સ્ટોલ કરો:
sudo apt install iptables-persistent
ઇન્સ્ટોલેશન પ્રક્રિયા દરમિયાન કોઈક સમયે, તમને એક રૂપરેખાંકન વિન્ડો દેખાશે જે તમને વર્તમાન iptables નિયમો સાચવવાનું સૂચન કરશે. નિયમો પહેલાથી જ વ્યાખ્યાયિત હોવાથી, ફક્ત પુષ્ટિ કરો અને ક્લિક કરો "હા" બે વાર. હવેથી સર્વર રીસ્ટાર્ટ થયા પછી નિયમો આપમેળે લાગુ થશે.
PPTP સર્વર
સર્વર રૂપરેખાંકન
પેકેટ ઇન્સ્ટોલ કરો:
sudo apt install pptpd
ઇન્સ્ટોલેશન પૂર્ણ થયા પછી, ફાઇલ ખોલો "/etc/pptpd.conf" કોઈપણ ટેક્સ્ટ એડિટરમાં અને તેને આ રીતે સંપાદિત કરો:
option /etc/ppp/pptpd-options #path to the settings file
logwtmp #client connections logging mechanism
connections 100 #number of simultaneous connections
localip 172.16.0.1 #the address that will serve as a client gateway
remoteip 172.16.0.2-200 #range of addresses
તે પછી, ફાઇલને સંપાદિત કરો "/etc/ppp/pptpd-વિકલ્પો"મોટાભાગના પરિમાણો ડિફોલ્ટ રૂપે સેટ કરેલા હોય છે.
#name of the service for new client records
name pptpd
#restrict obsolete authentication methods
refuse-pap
refuse-chap
refuse-mschap
#allow a more secure authentication method
require-mschap-v2
#enable encryption
require-mppe-128
#specify dns servers for clients (use any available servers)
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
nodefaultroute
lock
nobsdcomp
novj
novjccomp
nologfd
આગળના તબક્કે, તમારે ક્લાયંટ કનેક્શન્સ માટે એક રેકોર્ડ બનાવવાની જરૂર પડશે. ધારો કે તમે એક વપરાશકર્તા ઉમેરવા માંગો છો "vpnuser" પાસવર્ડ સાથે "1" અને તેના માટે ગતિશીલ સરનામાંને મંજૂરી આપો. ફાઇલ ખોલો "/etc/ppp/chap-secrets" અને ફાઇલના અંતે વપરાશકર્તાના પરિમાણો સાથે નીચેની લાઇન ઉમેરો:
vpnuser pptpd 1 *
"પીપીટીપીડી" value એ સેવાનું નામ છે જે આપણે ફાઇલમાં ઉલ્લેખિત કરીએ છીએ "pptpd-વિકલ્પો". ની બદલે "*" તમે નિશ્ચિત IP સરનામું સ્પષ્ટ કરી શકો છો. પરિણામે, ફાઇલ "પ્રકરણ-રહસ્યો" આના જેવું દેખાવું જોઈએ:
સેટિંગ્સ લાગુ કરવા માટે રીસેટ કરો pptpd સેવા અને તેને ઓટોલોડિંગમાં ઉમેરો.
sudo systemctl restart pptpd
sudo systemctl enable pptpd
સર્વર ગોઠવણી પૂર્ણ થઈ ગઈ છે.
ક્લાઈન્ટ રૂપરેખાંકન
ઓપન "પ્રારંભ કરો" - "સેટિંગ્સ" - નેટવર્ક અને ઇન્ટરનેટ - "વી.પી.એન." અને ક્લિક કરો "VPN કનેક્શન ઉમેરો"
ખુલતી વિંડોમાં કનેક્શન પરિમાણો દાખલ કરો અને ક્લિક કરો “સાચવો”
- VPN પ્રદાતા: “વિન્ડોઝ (બિલ્ટ-ઇન)”
- કનેક્શન નામ: “vpn_connect” (તમે કોઈપણ નામ પસંદ કરી શકો છો)
- સર્વરનું નામ અથવા સરનામું: (સર્વરનું બાહ્ય IP સરનામું સ્પષ્ટ કરો)
- VPN પ્રકાર: "ઓટો"
- સાઇન-ઇન માહિતીનો પ્રકાર: "વપરાશકર્તા નામ અને પાસવર્ડ"
- વપરાશકર્તા નામ: vpnuser દ્વારા વધુ (સર્વર પર "ચેપ-સિક્રેટ્સ" ફાઇલમાં ઉલ્લેખિત નામ)
- પાસવર્ડ: 1 ("ચેપ-સિક્રેટ્સ" ફાઇલમાંની જેમ)
પરિમાણો સાચવ્યા પછી, તમને વિન્ડોમાં નવું VPN કનેક્શન દેખાશે. કનેક્શન પર ડાબું-ક્લિક કરો અને પસંદ કરો "જોડાવા". સફળ જોડાણના કિસ્સામાં, તમે જોશો "કનેક્ટેડ" સ્થિતિ
વિકલ્પોમાં, તમને ક્લાયંટ અને સર્વરના આંતરિક સરનામાં મળશે. ફીલ્ડ "ગંતવ્ય સરનામું" બાહ્ય સર્વર સરનામું દર્શાવે છે.
જ્યારે કનેક્ટ થાય છે, ત્યારે સર્વરનું આંતરિક IP સરનામું, 172.16.0.1 આપણા કિસ્સામાં, બધા આઉટગોઇંગ પેકેટો માટે ડિફોલ્ટ ગેટવે બને છે.
કોઈપણ ઓનલાઈન સેવાનો ઉપયોગ કરીને તમે ખાતરી કરી શકો છો કે કમ્પ્યુટરનો બાહ્ય IP સરનામું હવે તમારા VPN સર્વરના IP સરનામા જેવો જ છે.
ઓપનવીપીએન સર્વર
સર્વર રૂપરેખાંકન
ચાલો વર્તમાન વપરાશકર્તાના પરવાનગી સ્તરને પ્રોત્સાહન આપીએ કારણ કે આપણા આગળના રૂપરેખાંકન માટે આપણને રૂટ એક્સેસની જરૂર પડશે.
sudo -s
બધા જરૂરી પેકેટ્સ ઇન્સ્ટોલ કરો. આપણને જરૂર પડશે "ઇઝી-આરએસએ" એન્ક્રિપ્શન કીઓનું સંચાલન કરવા માટેનું પેકેટ.
apt install openvpn easy-rsa iptables-persistent
UDP પ્રોટોકોલ દ્વારા પોર્ટ 1194 પર ઇનકમિંગ કનેક્શન્સને મંજૂરી આપો અને iptables નિયમો લાગુ કરો.
sudo iptables -I INPUT -p udp --dport 1194 -j ACCEPT
sudo netfilter-persistent save
"Easy-RSA" પેકેજમાંથી કોપી કરેલી ફાઇલો સાથે ડિરેક્ટરી બનાવો અને તેમાં નેવિગેટ કરો.
make-cadir ~/openvpn
cd ~/openvpn
પબ્લિક કી ઇન્ફ્રાસ્ટ્રક્ચર (PKI) જનરેટ કરો.
./easyrsa init-pki
સર્ટિફિકેટ ઓથોરિટી (CA) રુટ સર્ટિફિકેટ જનરેટ કરો.
./easyrsa build-ca
બનાવટ પ્રક્રિયા દરમિયાન, તમને પાસવર્ડ સેટ કરવા અને યાદ રાખવા માટે કહેવામાં આવશે. તમારે પ્રશ્નોના જવાબ આપવા અને કી માલિક વિશે માહિતી દાખલ કરવાની પણ જરૂર પડશે. તમે ચોરસ કૌંસમાં આપેલા ડિફોલ્ટ મૂલ્યો છોડી શકો છો. ઇનપુટને અંતિમ સ્વરૂપ આપવા માટે "એન્ટર" દબાવો.
એક ખાનગી કી અને પ્રમાણપત્ર વિનંતી જનરેટ કરો. દલીલ તરીકે, એક મનસ્વી નામ સ્પષ્ટ કરો; અમારા કિસ્સામાં, તે "vpn-server" છે.
./easyrsa gen-req vpn-server nopass
કોમન નેમ વેલ્યુને ડિફોલ્ટ તરીકે છોડી દો.
જનરેટ થયેલ સર્વર પ્રમાણપત્ર વિનંતી પર સહી કરો.
./easyrsa sign-req server vpn-server
આ પગલા પર, સહીની પુષ્ટિ કરવા માટે "હા" નો જવાબ આપો, પછી રૂટ પ્રમાણપત્ર બનાવટ દરમિયાન બનાવેલ પાસવર્ડ દાખલ કરો.
ડિફી-હેલમેન પરિમાણો જનરેટ કરો. આ પરિમાણોનો ઉપયોગ સર્વર અને ક્લાયંટ વચ્ચે સુરક્ષિત કી વિનિમય માટે થાય છે.
./easyrsa gen-dh
બધી જરૂરી ફાઇલો જનરેટ થઈ ગઈ છે. ચાલો OpenVPN વર્કિંગ ડિરેક્ટરીમાં "કીઝ" ફોલ્ડર બનાવીએ જ્યાં કી સ્ટોર થાય અને ત્યાં બનાવેલી ફાઇલોની નકલ થાય.
mkdir /etc/openvpn/keys
sudo cp pki/ca.crt pki/issued/vpn-server.crt pki/private/vpn-server.key pki/dh.pem /etc/openvpn/keys
નો ઉપયોગ કરીને NAT ને ગોઠવો iptables નિયમો. નામની ફાઇલ બનાવો nat અને તેને સંપાદન માટે ખોલો /etc/openvpn/ ડિરેક્ટરી.
#!/bin/sh
# Reset firewall settings
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
# (eth0 in our case, may vary)
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# (eth0 in our case, may vary)
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
# Allow OpenVPN connections (eth0 in our case, may vary)
iptables -A INPUT -i eth0 -p udp --dport 1194 -j ACCEPT
iptables -A INPUT -i tun0 -j ACCEPT
# (eth0 in our case, may vary):
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
# (eth0 in our case, may vary)
iptables -A FORWARD -i eth0 -o tun0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Enable masquerading for the local network (eth0 in our case, may vary)
iptables -t nat -A POSTROUTING -o eth0 -s 10.8.0.0/24 -j MASQUERADE
# Deny incoming connections from outside
iptables -A INPUT -i eth0 -j DROP
# Deny transit traffic from outside (eth0 in our case, may vary)
iptables -A FORWARD -i eth0 -o tun0 -j DROP
sudo netfilter-persistent save
ફાઇલને સાચવો અને તેને એક્ઝેક્યુટેબલ બનાવો.
sudo chmod 755 /etc/openvpn/nat
સર્વર રૂપરેખાંકન નમૂનાની નકલ કરો.
cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/
ફાઇલ ખોલો "/etc/openvpn/server.conf" સંપાદન માટે, ખાતરી કરો કે તેમાં નીચેની લીટીઓ છે, અને જો જરૂરી હોય તો તેમને સંપાદિત કરો:
#Port, protocol, and interface
port 1194
proto udp
dev tun
#Path to the encryption keys
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/vpn-server.crt
key /etc/openvpn/keys/vpn-server.key
dh /etc/openvpn/keys/dh.pem
#SHA256 Hashing Algorithm
auth SHA256
#Switching off additional encryption
#tls-auth ta.key 0
#Network parameters
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist /var/log/openvpn/ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
#Ping every 10 seconds to check the connection.
keepalive 10 120
#Set up AES-256 encryption for the tunnel.
cipher AES-256-GCM
#Demoting the service OpenVPN after launch
user nobody
group nogroup
#Switching on parameters saving after reboot
persist-key
persist-tun
#Set log verbosity
verb 3
#Redirecting logs
log-append /var/log/openvpn/openvpn.log
#Script the rule installation launch.
up /etc/openvpn/nat
સર્વર પર ટ્રાફિક ફોરવર્ડિંગ સક્ષમ કરો.
sudo sysctl -w net.ipv4.ip_forward=1
echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf
ગોઠવણી લાગુ કરવા માટે OpenVPN શરૂ કરો.
systemctl restart openvpn@server
સર્વર ગોઠવણી પૂર્ણ થઈ ગઈ છે!
ક્લાઈન્ટ રૂપરેખાંકન
OpenVPN ની સત્તાવાર વેબસાઇટ પર જાઓ “https://openvpn.net”, પર જાઓ "સમુદાય" વિભાગ.
નીચે સ્ક્રોલ કરો અને તમારા ઓપરેટિંગ સિસ્ટમ વર્ઝન માટે ઇન્સ્ટોલર ડાઉનલોડ કરો. અમારા કિસ્સામાં, તે Windows 11 ARM64 છે.
બધા પરિમાણોને ડિફોલ્ટ રૂપે છોડીને એપ્લિકેશન ઇન્સ્ટોલ કરો.
આગળના તબક્કે તમારે સર્વર પર નીચેની ફાઇલ તૈયાર કરવાની અને તેને ક્લાયંટ કમ્પ્યુટર પર ટ્રાન્સફર કરવાની જરૂર પડશે:
- જાહેર અને ખાનગી કીઓ;
- પ્રમાણપત્ર કેન્દ્ર કીની નકલ;
- રૂપરેખા ફાઇલ ટેમ્પલેટ.
સર્વર સાથે કનેક્ટ થાઓ, વિશેષાધિકારો વધારો, અને અમારી બનાવેલી ડિરેક્ટરી પર નેવિગેટ કરો. "~/openvpn".
sudo -s
cd ~/openvpn
ક્લાયન્ટ માટે એક ખાનગી કી અને પ્રમાણપત્ર વિનંતી જનરેટ કરો. દલીલ તરીકે, એક મનસ્વી નામ સ્પષ્ટ કરો; અમારા કિસ્સામાં, તે "ક્લાયન્ટ1" છે.
./easyrsa gen-req client1 nopass
રૂટ સર્ટિફિકેટ બનાવતી વખતે આપણે સેટ કરેલો પાસવર્ડ દાખલ કરો અને કોમન નેમ વેલ્યુને ડિફોલ્ટ તરીકે છોડી દો.
જનરેટ કરેલ ક્લાયંટ પ્રમાણપત્ર વિનંતી પર સહી કરો.
./easyrsa sign-req client client1
આ પગલા પર, સહીની પુષ્ટિ કરવા માટે "હા" નો જવાબ આપો, પછી રૂટ પ્રમાણપત્ર બનાવટ દરમિયાન બનાવેલ પાસવર્ડ દાખલ કરો.
સુવિધા માટે, ચાલો હોમ ડિરેક્ટરીમાં 'client1' નામનું ફોલ્ડર બનાવીએ અને ક્લાયંટ કમ્પ્યુટરમાં ટ્રાન્સફર કરવા માટેની બધી ફાઇલોને તેમાં કોપી કરીએ.
mkdir ~/client1
cp pki/issued/client1.crt pki/private/client1.key pki/ca.crt ~/client1/
ક્લાયંટ રૂપરેખા ફાઇલ ટેમ્પ્લેટને તે જ ડિરેક્ટરીમાં કોપી કરો. ફાઇલ એક્સ્ટેંશનને આમાં બદલો ".ovpn" નકલ કરતી વખતે.
cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/client1/client.ovpn
ડિરેક્ટરી અને બધી ફાઇલોના માલિક બદલો. “~/ક્લાયન્ટ1/” ક્લાયન્ટને વિતરિત કરવા માટે સક્ષમ થવા માટે. ચાલો બનાવીએ "મિહાઇલ" અમારા કિસ્સામાં માલિક.
chown -R mihail:mihail ~/client1
ક્લાયંટ કમ્પ્યુટર પર જાઓ અને ની સામગ્રીની નકલ કરો “~/ક્લાયન્ટ1/” ફોલ્ડર. તમે તે ની મદદથી કરી શકો છો "પીએસસીપી" ઉપયોગિતા, જે પુટ્ટી સાથે જાય છે.
PSCP -r mihail@[IP_сервера]:/home/mihail/client1 c:\client1
તમે કી ફાઇલો સ્ટોર કરી શકો છો "ca.crt", “ક્લાયન્ટ1.crt”, “ક્લાયંટ1.કી” તમે જ્યાં ઇચ્છો ત્યાં. અમારા કિસ્સામાં, તેઓ આ ફોલ્ડરમાં છે "c:\Program Files\OpenVPN\keys", અને આપણે રૂપરેખા ફાઇલને મોડ કરીએ છીએ "ક્લાયન્ટ.ઓવીપીએન" ની અંદર "c:\Program Files\OpenVPN\config" ડિરેક્ટરી.
હવે ચાલો ક્લાયંટને ગોઠવવા તરફ આગળ વધીએ. ફાઇલ ખોલો. “c:\Program Files\OpenVPN\config\client.ovpn” ટેક્સ્ટ એડિટરમાં અને નીચેની લીટીઓ સંપાદિત કરો:
#announce that this is the client
client
#interface and protocol just like on the server
dev tun
proto udp
#IP address of the server and port
remote ip_address 1194
#saving parameters after reload
persist-key
persist-tun
#key paths
ca “c:\\Program Files\\OpenVPN\\keys\\ca.cert”
cert “c:\\Program Files\\OpenVPN\\keys\\client1.crt”
key “c:\\Program Files\\OpenVPN\\keys\\client1.key”
#enable server verification
remote-cert-tls server
#disable extra encryption
#tls-auth ta.key 1
cipher AES-256-CBC
auth-nocache
verb 3
બાકીનાને અસ્પૃશ્ય રહેવા દો.
ફાઇલ સાચવો અને ક્લાયંટ એપ્લિકેશન શરૂ કરો. "ઓપનવીપીએન જીયુઆઈ".
ટાસ્કબારમાં એપ્લિકેશન આઇકોન પર જમણું-ક્લિક કરો અને પસંદ કરો "જોડાવા". જો કનેક્શન સફળ થશે તો આઇકન લીલો થઈ જશે.
તમારું સાર્વજનિક IP સરનામું બદલાઈ ગયું છે અને હવે તે સર્વરના IP સરનામા જેવું જ છે તેની ખાતરી કરવા માટે કોઈપણ ઑનલાઇન સેવાનો ઉપયોગ કરો.