PowerShell ایک ٹاسک پر مبنی کمانڈ لائن شیل اور اسکرپٹنگ ماحول ہے جو مائیکروسافٹ نے تیار کیا ہے جو ونڈوز آپریٹنگ سسٹم پر متعدد سرگرمیوں کو کنٹرول کرنے کے لئے ڈیزائن کیا گیا ہے۔ اس کے بنیادی کاموں میں سے ایک پراکسی ترتیب انجام دینے کی صلاحیت ہے۔ کمانڈ لائن اور اس طرح کے کاموں کو چلانے کی اس کی صلاحیت سے ڈومین پر آلات کی نیٹ ورک کی ترتیبات کی مرکزی انتظام میں آٹومیشن اور آسانی میں اضافہ ہوتا ہے۔
دوسرے عام طریقوں کے مقابلے میں PowerShell کا استعمال کرتے ہوئے پراکسی سرور کی تشکیل کا بنیادی فائدہ یہ ہے کہ اسے گرافیکل انٹرفیس کی ضرورت نہیں ہے کیونکہ یہ براہ راست انٹرنیٹ کنیکشن کی ترتیبات کو تبدیل کرتا ہے۔ یہ خصوصیت خاص طور پر سسٹم کے منتظمین کے لئے مفید ہے جنھیں مختلف آلات پر پراکسی سرور کی ترتیبات کی نگرانی کرنے کی ضرورت ہے کیونکہ وہ ترتیبات کو جلدی سے تبدیل کرسکیں گے اور انہیں دوسرے اسکرپٹ میں شامل کرسکیں گے جو پہلے سے زیادہ کارکردگی کے لئے خودکار ہیں۔
PowerShell کا استعمال کرتے ہوئے سسٹم وائیڈ پراکسی سرورز کی کنفیگریشن کے لیے دو اہم طریقے ہیں: `netsh` کمانڈ کا استعمال کرکے WinHTTP سروس کو کنٹرول کرنا اور Set-ItemProperty کمانڈ کے ساتھ رجسٹری کیز کو ایڈٹ کرنا۔ خاص طور پر، یہ سیکشن ان دو طریقوں پر مرکوز ہے اور پورے سسٹم کے لیے مؤثر پراکسی سیٹنگز کی کچھ عملی مثالیں فراہم کرتا ہے، اور اس کی ایپلیکیشنز کو بیان کرتا ہے۔ یہ دوہری طریقہ کار ایڈمنسٹریٹرز کو مختلف سطحوں پر نیٹ ورک سیٹنگز کے ساتھ زیادہ مؤثر طریقے سے کام کرنے کی اجازت دیتا ہے۔
netsh کمانڈ ونڈوز آپریٹنگ سسٹم میں انبیڈڈ ہوتی ہے اور بہت سے مقاصد کے لیے استعمال کی جاتی ہے۔ اس کمانڈ کے ذریعے کی جانے والی ایک فعالیت پراکسی سیٹنگز کو WinHTTP سروس سے متعلق ترتیب دینا ہے۔ اس سے صارف کو سسٹم سروسز کے چلنے کے طریقے کو تبدیل کرنے کی اجازت ملتی ہے، بجائے اس کے کہ ایپلیکیشنز یا براؤزرز میں پراکسیز کو تبدیل کیا جائے جو مختلف قسم کے نیٹ ورکس کو سپورٹ کرتے ہیں۔
یہ بات اہم ہے کہ netsh کمانڈ کا استعمال صرف ان پراکسیز کے لیے محدود ہے جو IP اجازت کے ساتھ کام کرتی ہیں، نہ کہ ان پراکسیز کے لیے جو لاگ ان اسناد کی ضرورت ہوتی ہیں۔
یہاں یہ ہے کہ آپ PowerShell کا استعمال کرتے ہوئے پراکسی سیٹنگز کو کس طرح کنفیگر کر سکتے ہیں:
netsh winhttp set proxy IP-address:port
موجودہ پراکسی ترتیبات جیسے پتہ اور بندرگاہ کے استعمال کو دیکھنے کے لئے:
netsh winhttp show proxy
پراکسی کی ترتیبات کو دور کرنے کے لئے:
netsh winhttp reset proxy
پراکسی کی ترتیبات کو رجسٹری سسٹم کو دستی طور پر تشکیل دے کر PowerShell میں مرکزی طور پر انتظام کیا جاسکتا ہے۔ اس طریقہ کار سے کسی بھی پروگراموں پر اثر پڑتا ہے جو ونڈوز سسٹم کو اپنے نیٹ ورک کی ترتیبات کو سنبھالنے کے لئے استعمال کرتے ہیں ، جس میں تقریبا تمام ویب براؤزر شامل ہیں۔
پراکسی کی ترتیبات کو شامل کرنے کے لئے جس میں کسی اجازت کی ضرورت نہیں ہے ، آپ مندرجہ ذیل پاورشیل کمانڈوں کا اطلاق کرسکتے ہیں:
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer -Value "IP address:port"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 1
اگر آپ نجی پراکسی استعمال کررہے ہیں جس میں لاگ ان معلومات کی ضرورت ہے تو ، یہاں آگے بڑھنے کا طریقہ یہ ہے کہ:
$proxyAddress = "http://IP address:port"
# Here we specify the address of the required proxy server
$credentials = Get-Credential
# You will be prompted to input the username and password with this command
[system.net.webrequest]::DefaultWebProxy = New-Object system.net.webproxy($proxyAddress)
# Creates a new proxy object with the specified address
[system.net.webrequest]::DefaultWebProxy.Credentials = $credentials
# Apply the credentials previously input to the proxy
اگر آپ پراکسی کی ترتیبات کو بند کرنا چاہتے ہیں تو مندرجہ ذیل کمانڈ کا استعمال کریں:
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 0
بہت سارے اقدامات ہیں جن کا اطلاق اس وقت کیا جاسکتا ہے جب پراکسی کی ترتیبات کو انجام دینے میں دشواریوں کا سامنا کرنا پڑتا ہے۔ ذیل میں دشواریوں کا ازالہ کرنے کے لئے اہم احکامات اور تکنیک ہیں۔
پراکسی کے لئے آپ کی موجودہ ترتیبات کو کمانڈ کو مندرجہ ذیل استعمال کرکے آسانی سے جانچ پڑتال کی جاسکتی ہے:
Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | Select-Object ProxyServer, ProxyEnable
اس بات کا تعین کرنے کے لیے کہ آیا پراکسی کسی بھی موقع پر آپ کی نیٹ ورک درخواستوں کو فارورڈ کر رہا ہے، مندرجہ ذیل کمانڈ کو استعمال کیا جا سکتا ہے تاکہ ایک معروف سائٹ، جیسے example.com، کو معیاری HTTP پورٹ پر پنگ کیا جا سکے۔
Test-NetConnection -ComputerName "example.com" -Port 80
اگر ضرورت ہو تو "example.com" کی جگہ آپ اپنی پسند کی کسی بھی ویب سائٹ کو ڈال سکتے ہیں۔
اگر آپ کو ابھی بھی پراکسی کے ذریعے جڑنے والے مسائل کا سامنا کرنا پڑتا ہے تو ، آپ کو ایک بار پھر تمام ترتیبات کی جانچ کرنی چاہئے۔ اس بات کو یقینی بنائیں کہ آپ کے پراکسی فراہم کنندہ کے ذریعہ دی گئی تفصیلات درست ہیں اور پراکسی خود کام کر رہی ہے۔
تبصرے: 0