VPN පිටුපස QGIS PostGIS වෙත සම්බන්ධ කිරීම: පියවරෙන් පියවර
VPN පිටුපස ඇති PostGIS හෝ WMS වෙත QGIS යොමු කරන්න: ටනලය සේවා අන්ත ලක්ෂ්යයෙන් වෙන් කරන්න, verify-full TLS රඳවා ගන්න සහ සෑම මායිමක්ම පිළිවෙලට පරීක්ෂා කරන්න.
QGIS එහි දත්ත සපයන්නන්ට ළඟා විය හැකි ඕනෑම මාර්ගයක් කියවයි, එබැවින් ක්රියාත්මක VPN යනු සැකසුමෙන් අඩක් පමණි. ටනලය ඩෙස්ක්ටොපයට මාර්ගයක් සහ නාම විභේදන ප්රතිපත්තියක් ලබා දෙයි; ව්යාපෘතියට තවමත් සේවා අන්ත ලක්ෂ්යය, සපයන්නාගේ ප්රොටෝකෝලය සහ සේවාව පිළිගන්නා අක්තපත්ර අවශ්ය වේ. මේවා වෙනස් සටහන් තුනකි, VPN හි පොදු ශ්රෝතෘව ලබා දත්ත සටහනක ටයිප් කිරීම ඒ කිසිවක් නොවේ. මෙම මාර්ගෝපදේශය QGIS පෝරමයේ සිට ආපසු ලැබුණු පේළිය දක්වා එක් PostGIS ස්ථරයක් අනුගමනය කර සෑම පියවරක්ම සාධනය කරන මායිම නම් කරයි.
VPN වෙතින් නොව, ස්ථරයෙන් ආරම්භ කරන්න
සෑම ස්ථර වර්ගයක්ම වෙනස් ආකාරයේ අන්ත ලක්ෂ්යයකට ළඟා වේ. PostGIS ස්ථරයක් සත්කාරකය, තොටුපොළ, දත්ත සටහන සහ භූමිකාව සමඟ PostgreSQL සම්බන්ධතාවක් විවෘත කරයි. WMS හෝ WFS ස්ථරයක් සේවා URL එකක් ගෙන ඉන්පසු හැකියා ලේඛනයක් විශ්ලේෂණය කරයි. ජාල බෙදාගැනීමක ඇති shapefile එකකට මෙහෙයුම් පද්ධතියට විවෘත කළ හැකි ගොනු මාර්ගයක් පමණක් අවශ්ය වේ. මේවා වෙනස් යාන්ත්රණ තුනක් බැවින්, කුමක් නිදොස් කරන්නේදැයි දැනගන්නා තෙක් හිස් ව්යාපෘතියක් ඔබට කිසිවක් නොකියයි.
GIS ක්රියාකරුගෙන් අන්ත ලක්ෂ්යය, තොටුපොළ, අවශ්ය අනන්යතාව සහ ඔබේ ගිණුමට අදාළ ප්රවේශ ප්රතිපත්තිය අසන්න. යෙදවීම පෞද්ගලික DNS හෝ සහතිකයේ නම් පරීක්ෂාව මත රඳා පවතින විට සේවා සත්කාරක නාමය නිකුත් කළ ආකාරයටම තබා ගන්න. වෙනත් පරිශීලකයෙකුගේ සුරකින ලද සම්බන්ධතාවයෙන් පිටපත් කළ සත්කාරක ලිපිනය නැවත භාවිත කිරීම පිළිතුරු දෙන නමුත් පැරණි දත්ත සටහනක් රඳවා ගන්නා යන්ත්රයකට ළඟා වීමේ වේගවත්ම මාර්ගයයි.
මාර්ග, අවසර ලත් සම්පත් සහ නාම විභේදනය VPN ක්රියාත්මක කරන්නාට අයත් වේ. දත්ත මූල පෝරමයකට ටනල පැතිකඩ කිසිදා තල්ලු නොකළ මාර්ගයක් ස්ථාපනය කළ නොහැක, සහ ගේට්වේ ප්රතිපත්තියක් පළල් කළ නොහැක. සත්කාරකය විභේදනය වී තොටුපොළ පිළිතුරු දුන් විට, ගැටලුවේ ජාල පැත්ත අවසන් වේ.
ක්රියාකරු නිකුත් කළ පෞද්ගලික අන්ත ලක්ෂ්යය ඇතුළත් කරන්න
QGIS හි PostgreSQL පෝරමය libpq අපේක්ෂා කරන ක්ෂේත්ර පිළිබිඹු කරයි, එබැවින් විධාන රේඛා සම්බන්ධතාවයක් පිරවන අනුපිළිවෙලටම එය පුරවන්න. සේවාව සහ සත්කාරකය දත්ත සටහන් යන්ත්රය ගනී, තොටුපොළ සේවාදායකය සැබවින්ම විවෘත කරන ශ්රෝතෘව ගනී, දත්ත සටහන සේවාදායකයේ පෙරනිමිය වෙනුවට නිශ්චිත නාමාවලිය ගනී. මුරපදය ව්යාපෘති ගොනුවේ නොව, සත්යාපන වින්යාසයේ තබන්න, බෙදාගත් ව්යාපෘතියක් අක්තපත්ර රැගෙන නොයන පරිදි.
කිසිවක් ටයිප් කිරීමට පෙර නම් දෙක වෙන් කරන්න. ගේට්වේ නාමය VPN සේවාලාභියාට සහ දත්ත සටහන් නාමය QGIS වෙත අයත් වන අතර ඒවා බොහෝ විට එකම සත්කාරකය නොවේ.
VPN gateway: vpn.gis.lab.example (profile only, not a data source)
Database host: db.gis.lab.example:5432 (PostGIS service)
Database name: gis_prod
TLS mode: verify-full
දත්ත සටහන ගේට්වේ පිටුපස තවත් යන්ත්රයක ඇත්නම්, පෝරමයේ නම එම යන්ත්රයම විය යුතුය. ටනලය හරහා පෞද්ගලික DNS එකම නම ක්රියා කරවයි, සහ සම්බන්ධ වී සිටින විට පමණක් විභේදනය වන ව්යාපෘතියක් නරක cache කිරීම වෙනුවට නිවැරදිව හැසිරේ.
දත්ත සටහනේ TLS මාදිලිය ටනලයෙන් වෙන් කර තබන්න
VPN නිෂ්පාදන නාමයේ SSL ටනලය විස්තර කරයි, දත්ත සටහන් සැසිය නොවේ. QGIS PostgreSQL SSL මාදිලිය libpq වෙත ලබා දෙයි, සහ එම මාදිලිය සේවාලාභියා සේවාදායකයේ සහතිකය සත්යාපනය කරන්නේද සහ එහි ඇති සත්කාරක නාමය පරීක්ෂා කරන්නේද යන්න පාලනය කරයි. verify-fullදෙකම කරයි, එබැවින් සහතිකය සේවා නාමය දරන විට රඳවා ගැනීම වටී වන මාදිලිය එයයි.
ටනලය දැනටමත් සංකේතනය වී ඇති බැවින් මාදිලිය disable දක්වා පහත හෙළීම, ඔබ ළඟා වූ සේවාදායකය ඔබ ඉල්ලූ සේවාදායකය බවට වන පරීක්ෂාව ඉවත් කරයි. සත්යාපනය අසාර්ථක වන විට සුපුරුදු හේතුව නාම නොගැලපීම හෝ මූල සහතිකය නොමැති වීමයි, දෙකම සම්බන්ධතාවය දුර්වල නොකර නිවැරදි කළ හැක. sslrootcert ක්රියාකරු ප්රකාශයට පත් කරන CA වෙත යොමු කරන්න සහ පෝරමයේ සත්කාරක නාමය සහතිකයේ නාමයට සමානව තබන්න.
පෞද්ගලික මාර්ගයක් සහිත ටනලයක් සහ වලංගු සහතිකයක් සහිත දත්ත සටහනක් තවමත් භූමිකාව මත අසාර්ථක විය හැක. යෙදුම් අක්තපත්ර VPN අක්තපත්රවලින් වෙන් වේ, ගේට්වේහි සත්යාපනය වන ගිණුමකට PostgreSQL හි කිසිදු ව්යංග අයිතියක් නැත.
සෑම මායිමක්ම පිළිවෙලට පරීක්ෂා කර පළමු අසාර්ථකත්වය කියවන්න
සේවාලාභියාගේ සිට පිටතට නිශ්චිත අනුපිළිවෙලකට වැඩ කරන්න: නාම විභේදනය, TCP ළඟා වීම, TLS, සත්යාපනය සහ පසුව ප්රශ්නයම. පළමුව අසාර්ථක වන පියවර පමණක් වාර්තා කිරීම වටී, ඉදිරියට පනින විට ඔබ තවම ළඟා නොවූ මායිමක දෝෂ පණිවිඩ ලැබේ. විධාන හතරක් පළමු පියවර හතර ආවරණය කරයි.
getent hosts db.gis.lab.example
nc -vz db.gis.lab.example 5432
psql "host=db.gis.lab.example port=5432 dbname=gis_prod sslmode=verify-full" -c 'select 1'
curl -sS 'https://wms.gis.lab.example/ows?service=WMS&request=GetCapabilities' | head -c 200
getent සිට හිස් පිළිතුර නාම විභේදන ගැටලුවකි, දත්ත සටහන් ගැටලුවක් නොවේ. ප්රතික්ෂේප වූ හෝ කල් ඉකුත් වූ nc යන්නෙන් අදහස් වන්නේ මාර්ගයක් හෝ firewall නියමයක් නොමැති බවයි, එය ගේට්වේ පැත්තේ නිවැරදි කිරීමකි. psql සිට TLS දෝෂය යනු සහතිකය හෝ නාමය වැරදි බවයි, නමුත් password authentication failed යනු ඔබ PostgreSQL වෙත ළඟා වූ බවත් ගැටලුව අක්තපත්රයේ බවත්ය. WMS ස්ථරයක් සඳහා, curl ඇමතුම QGIS විශ්ලේෂණය කරන හැකියා XML එක ලබා දෙයි, එබැවින් එම ප්රතිදානයේ HTML පිවිසුම් පිටුවක් හිස් ස්ථරය වහාම පැහැදිලි කරයි.
කල් ඉකුත් වීමට සාපේක්ෂව PostgreSQL දෝෂයක් හොඳ පුවතකි. එය ගමනාන්තය පිළිතුරු දුන් බව සාධනය කරයි, එය ප්රවේශ පත්රය ජාල කණ්ඩායමේ සිට දත්ත සටහන් හෝ GIS පරිපාලක වෙත මාරු කරයි. වාර්තාවේ එම වෙනස රඳවා ගැනීමෙන් එක් වටයක් ඉතිරි වේ.
ව්යාපෘතිය හිස් ස්ථර සමඟ විවෘත වන විට
QGIS තුළ, කිසිවක් නැවත ඇතුළත් කිරීමට පෙර ස්ථරයේ සුරකින ලද මූලාශ්රය පරීක්ෂා කරන්න. ස්ථර ගුණාංග ව්යාපෘතිය සුරකින ලද නිශ්චිත සම්බන්ධතා තන්තුව පෙන්වයි, පැරණි සත්කාරකයක් සහිත දෙගුණ සම්බන්ධතා සටහනක් පෙර කාර්යාල ජාලයක සුලභ ඉතිරියකි. සම්බන්ධතාවයක් නිවැරදි කිරීමෙන් පසු ව්යාපෘතිය නැවත පූරණය කිරීම සැපයන්නා නැවත කියවන්නේ සැමවිටම නොවේ, එබැවින් ස්ථරය ඉවත් කර නිවැරදි කළ සම්බන්ධතාවයෙන් නැවත එක් කරන්න.
ඉන්පසු සත්යාපන වින්යාසය ලැයිස්තුවේ ඇති එකක් පමණක් නොව ස්ථරයට සම්බන්ධ එකම බව තහවුරු කරන්න. වෙනත් සත්යාපන වින්යාසයක් සමඟ සුරකින ලද ස්ථරයක් බ්රවුසර පැනලයේ නිහඬව අසාර්ථක වේ, ස්වාධීන psql පරීක්ෂණය සමත් වන අතර.
ස්ථරය පූරණය වූ විට, ව්යාපෘතිය ගොනු සඳහා පමණක් සාපේක්ෂ මාර්ග සමඟ සුරකින්න සහ සේවා සම්බන්ධතා ඒවායේ අන්ත ලක්ෂ්යයෙන් නම් කර තබන්න. ව්යාපෘතිය උරුම වන ඊළඟ පුද්ගලයාට ප්රවේශ පත්රයක් නොවිවෘතව කැඩුණු ස්ථරයක් අපේක්ෂා කළ සත්කාරකය කුමක්දැයි පැවසිය හැක.