Knowledgebase Profitserver سروس کے ساتھ کام کرنے کے لیے آسان ہدایات
مین Knowledgebase CentOS/ArchLinux پر 3 پراکسی کنفیگریشن

CentOS/ArchLinux پر 3 پراکسی کنفیگریشن


اس مضمون میں ہم ArchLinux/CentOS آپریٹنگ سسٹم کے ذریعے چلنے والے وقف سرور پر 3proxy کنفیگریشن دکھائیں گے۔ 3proxy سب سے زیادہ متعلقہ اور فعال ٹولز میں سے ایک ہے۔ یہ مختلف قسم کے پروٹوکولز کو سپورٹ کرتا ہے: HTTP، HTTPS، FTP، SOCKS، اور دیگر۔ یہ آپ کو چند منٹوں میں اپنا پراکسی سرور ترتیب دینے میں مدد کرے گا۔

مضمون میں یوٹیلیٹی کی تنصیب اور اس کی مزید ترتیب کے بارے میں مرحلہ وار رہنمائی شامل ہے۔ سرکاری ذرائع سے انسٹالیشن، کنفیگریشن فائلوں کو ترتیب دینے، غیر معیاری بندرگاہوں کو کھولنے جیسے مسائل پر غور کیا جاتا ہے، ساتھ ہی عام غلطیاں بیان کی جاتی ہیں اور ان کے حل کے لیے عملی سفارشات دی جاتی ہیں۔ لانچ کرنے سے پہلے، آپ کو ایک آرڈر کرنا ہوگا۔ VPS or سرشار سرور CentOS یا ArchLinux آپریٹنگ سسٹم کے ذریعے تقویت یافتہ۔ مثال میں موجود تمام کارروائیاں CentOS7 آپریٹنگ سسٹم کے ذریعے چلنے والے ایک سرشار سرور پر ایک وقف شدہ جامد عوامی IP ایڈریس کے ساتھ انجام دی جائیں گی۔

تنصیب

مرحلہ 1

3 پراکسی براہ راست ذرائع سے انسٹال کی گئی ہے۔ جی سی سی کمپائلر کے طور پر استعمال کیا جائے گا۔ ہم سرور سے جڑ (سپر یوزر) کے طور پر جڑتے ہیں اور کمپائلر انسٹال کرتے ہیں۔

yum install gcc

مرحلہ 2

اب 3 پراکسی سورس فائلوں کو ڈاؤن لوڈ کرنا ضروری ہے۔ آپ پر جا کر یہ کر سکتے ہیں۔ سرکاری ویب سائٹ اور موجودہ ورژن میں لنک کاپی کرنا:

یوٹیلائٹ انسٹال کرنا

اگر آرکائیو شدہ ورژن کی ضرورت ہو تو، آپ لنک کو براہ راست یہاں سے بھی ڈاؤن لوڈ کر سکتے ہیں۔ GitHub کے:

گیتھب سے 3 پراکسی انسٹال کرنا

اس مضمون کو لکھنے کے وقت، موجودہ ورژن 0.9.3 ہے۔ اسے ڈاؤن لوڈ کریں اور اسے فوری طور پر کھولیں:

wget https://github.com/z3APA3A/3proxy/archive/0.9.3.tar.gz
tar -xvzf 0.9.3.tar.gz

مرحلہ 3

غیر پیک شدہ پروجیکٹ کے ساتھ ڈائریکٹری میں جائیں اور مرتب کریں:

cd 3proxy-0.9.3/
make -f Makefile.Linux

مرحلہ 4

ہم ڈائریکٹریز بناتے ہیں اور 3 پراکسی فائل کو /usr/bin میں کاپی کرتے ہیں:

mkdir -p /var/log/3proxy
mkdir /etc/3proxy
cp bin/3proxy /usr/bin/

مرحلہ 5

ہم کیٹلاگ کے ساتھ کام کرنے کے لیے ایک صارف بناتے ہیں۔ اس معاملے میں صارف نام ہے۔ 3 پراکسیزر:

useradd -s /usr/sbin/nologin -U -M -r 3proxyuser

ہم تخلیق کردہ صارف کو ڈائریکٹریز کے ساتھ کام کرنے کے حقوق دیتے ہیں:

chown -R 3proxyuser:3proxyuser /etc/3proxy
chown -R 3proxyuser:3proxyuser /var/log/3proxy
chown -R 3proxyuser:3proxyuser /usr/bin/3proxy

اب کمانڈ کا استعمال کرتے ہوئے ایک کنفیگریشن فائل بنائیں:

touch /etc/3proxy/3proxy.cfg

اگر ضروری ہو تو، آپ روٹ صارف کے لیے کنفیگریشن فائل پر اجازتیں سیٹ کر سکتے ہیں۔ یہ مرحلہ واجب نہیں ہے، لیکن تحفظ میں اضافہ کرے گا:

chmod 600 /etc/3proxy/3proxy.cfg

3 پراکسی کنفیگریشن

مرحلہ 6

پہلے بنائی گئی کنفیگریشن فائل کو درست طریقے سے پُر کرنا ضروری ہے۔ پہلے، کمانڈ کے ذریعے صارف کی uid اور gid معلوم کریں:

id 3proxyuser

ہمارے معاملے میں یہ درج ذیل اقدار ہیں:

uid اور gid

کنفیگریشن فائل کو پُر کرنے کے لیے، آپ ریڈی میڈ کنفیگریشن لے سکتے ہیں یا استعمال کر سکتے ہیں۔ دستاویزات سرکاری ویب سائٹ پر۔ اس کے علاوہ ایک مثال کے ساتھ فائل پہلے سے ہی ڈیفالٹ کے طور پر پہلے سے انسٹال ہے؛ آپ اسے راستے میں تلاش کر سکتے ہیں: /cfg/3proxy.cfg.sample

مثال کے طور پر، ہم 2 اقسام کی ترتیب پر غور کریں گے: لاگنگ کے ساتھ اور بغیر. ہر لائن کے ساتھ تبصرے ہوں گے (وہ "#" علامت کے ساتھ نشان زد ہیں)۔

یہ ایک ریڈی میڈ ترتیب کی ایک مثال ہے۔ لاگنگ کے بغیر:

# We specify the user's data that we found out in the previous command
setgid 995
setuid 997

# Type the NS-servers. It is possible to clarify your own servers at /etc/resolv.conf
nserver 1.1.1.1
nserver 8.8.8.8

# Cache size
nscache 65536

# Timeouts
timeouts 1 5 30 60 180 1800 15 60

# Authorization of users by login/password (if required). You may not to use it or specify the path to the file in which authorization data is stored, for example, users $/etc/3proxy/.authfile

# If you insert a password in md5 format, replace “CL” with “CR”, as indicated in the example. You can use 2 methods at the same time.
auth cache strong
users "userproxy:CL:passwordproxy"
users "userproxy2:CR:b89097a7ad0b94f13b3c313ae76699d4 "

# Launch mode. Daemon only.
Daemon

# We write the port through which the http connection will take place. The example shows the standard one. To establish a socks connection, use the command specified in the second line, the port is also standard.
proxy -p3128			
socks -p1080

ہم نے لاگ ان کیے بغیر کنفیگریشن فائل کے آپشن پر غور کیا۔ اب ہم اس کے ساتھ ایک کنفیگریشن فائل بنائیں گے۔ لاگنگ اور صارف کی اجازت; اسے بعد میں سرور سیٹ اپ کے دوران استعمال کیا جائے گا۔.

یقینی بنائیں کہ آپ اجازت کی معلومات فراہم کرتے ہیں، کیونکہ غیر معیاری بندرگاہوں پر بھی سرور کا پتہ لگایا جا سکتا ہے۔.

# Configuring the server to launch from the userproxy user and the passwordproxy password.
users userproxy:CL:passwordproxy

# Specify the user's uid and gid
setgid 995
setuid 997

# Nameservers (NS-servers)
nserver 1.1.1.1
nserver 8.8.8.8

# Timeouts
timeouts 1 5 30 60 180 1800 15 60

# Cache size (standard)
nscache 65536

# Indicate the launch mode
daemon

# We install http proxy on a non-standard 50001 port. If there are several IP addresses on the server, be sure to specify a specific address for connecting the network. For example, "-e91.150.32.146". The argument "i" is a local address.
proxy –p50001	

# In a same way as socks proxy, we conduct the installation on a 50002 port.
socks –p50002			

# Path to the directory with logs, logs format and proxy rotation
Log /var/log/3proxy/3proxy.log D	
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
rotate 30

یہ مین کنفیگریشن فائل کا سیٹ اپ مکمل کرتا ہے۔ ہم آخری مرحلے کی طرف بڑھتے ہیں اور لانچ کرتے ہیں۔

مرحلہ 7

systemd کے لیے ایک ابتدائی فائل بنائیں:

touch /etc/systemd/system/3proxy.service

ضروری حقوق جاری کریں:

chmod 664 /etc/systemd/system/3proxy.service

فائل میں درج ذیل اقدار کو کاپی اور پیسٹ کریں اور محفوظ کریں:

[Unit]
Description=3proxy Proxy Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/3proxy /etc/3proxy/3proxy.cfg
ExecStop=/bin/kill `/usr/bin/pgrep 3proxyuser`
RemainAfterExit=yes
Restart=on-failure
[Install]
WantedBy=multi-user.target»

براہ مہربانی نوٹ کریں: "ExecStop" ویلیو میں آپ کو وہ صارف نام بتانا ہوگا جو مرحلہ نمبر 5 میں بنایا گیا تھا۔

جس کے بعد آپ کو کمانڈ کے ساتھ ڈیمون کنفیگریشن کو اپ ڈیٹ کرنے کی ضرورت ہے:

systemctl daemon-reload

مرحلہ 8

ہمیں صرف کنفیگر شدہ 3 پراکسی کو لانچ کرنے، اسے آٹو اسٹارٹ میں شامل کرنے اور فائر وال میں بندرگاہوں کو کھولنے کی ضرورت ہے۔

اسے آٹو اسٹارٹ میں شامل کریں، لانچ کریں اور اسٹیٹس چیک کریں:

systemctl enable 3proxy
systemctl start 3proxy
systemctl status 3proxy

اسٹیٹس چیک کرنے کے بعد، ہم یہ معلومات دیکھتے ہیں کہ 3 پراکسی کامیابی کے ساتھ لانچ کی گئی ہے:

پراکسی چل رہی ہے۔

بندرگاہوں کو کھولنے کے لئے صرف ایک چیز باقی ہے:

firewall-cmd --zone=public --add-port=50001/tcp
firewall-cmd --zone=public --add-port=50002/tcp
firewall-cmd –reload

اگر ضروری ہو تو، سرور کو دوبارہ شروع کریں. یہ چیک کرنا ممکن ہے کہ آیا بندرگاہیں کمانڈ کے ساتھ کھلی ہیں:

firewall-cmd --list-all

کیا ہونا چاہئے:

فائر وال پورٹس کھولیں۔

جیسا کہ ہم دیکھ سکتے ہیں، دونوں بندرگاہوں کو کامیابی کے ساتھ کھول دیا گیا ہے اور انہیں سنا جا رہا ہے۔ HTTP کنکشن پہلی بندرگاہ پر ہے، جرابیں دوسری بندرگاہ پر ہیں۔

کسی بھی آسان سروس کے ذریعے کنکشن چیک کریں:

کامیاب 3 پراکسی سیٹ اپ

سب کچھ کام کر رہا ہے۔ ہمارے حصے کے لیے، ہم لاگ ان/پاس ورڈ کی اجازت کے بغیر غیر محفوظ کنکشن کے ساتھ ساتھ بندرگاہوں کے معیاری سیٹ کے ساتھ استعمال کرنے کی سفارش نہیں کرتے ہیں۔. کنفیگریشن فائل ترتیب دیتے وقت، لاگ ان کی وضاحت کرنا اور ایک پیچیدہ پاس ورڈ بنانا یقینی بنائیں، اور بندرگاہوں کو بھی غیر معیاری میں تبدیل کریں۔. غیر معمولی معاملات میں، IP ایڈریس کی اجازت کا استعمال ممکن ہے۔

عام مسائل

کچھ غلط ہو گیا اور پراکسی کام نہیں کر رہی ہے؟ شاید 3 پراکسی کنفیگریشن غلط طریقے سے کی گئی تھی۔ آئیے یوٹیلیٹی کو انسٹال کرنے اور ترتیب دینے کے دوران سب سے عام مسائل اور ان کے حل پر غور کریں۔

کوئی رابطہ نہیں

بہت سے صارفین کے لیے سب سے عام مسئلہ ایک ناقابل رسائی کنکشن ہے جب لگتا ہے کہ کنفیگریشن فائلیں درست طریقے سے ترتیب دی گئی ہیں۔ اگر آپ کو یقین ہے کہ تمام ترتیبات درست طریقے سے ترتیب دی گئی ہیں، ہوسٹنگ فراہم کنندہ منتخب کردہ پورٹ کو محدود نہیں کرتا ہے اور تمام ڈیٹا کام کرنے والی سروس کی نشاندہی کرتا ہے، مسئلہ فائر وال میں ہو سکتا ہے، یا، زیادہ واضح طور پر، اس کی غلط ترتیب۔ مثال کے طور پر، سسٹم پر دو سے زیادہ پروگرام انسٹال ہو سکتے ہیں جو ایک دوسرے سے متصادم ہوں گے۔ مسئلہ کو حل کرنے کے لیے، ایک مخصوص فائر وال استعمال کرنا کافی ہے۔ ہم آپ کو مشورہ دیتے ہیں کہ صرف iptables یا firewall-cmd منتخب کریں۔

سروس شروع نہیں ہوتی

تمام ضروری کنفیگریشن فائلوں کو ترتیب دینے کے بعد سروس شروع نہیں ہوتی ہے۔ ایسا اس وقت ہوتا ہے جب کنفیگریشن سٹیپ چھوٹ جاتا ہے، مناسب حقوق نہیں دیے جاتے، یا کنفیگریشن فائلوں میں معمولی غلطی ہو جاتی ہے۔ ہم آپ کو مشورہ دیتے ہیں کہ آپ احتیاط سے ہدایات کا مرحلہ وار مطالعہ کریں، شاید آپ نے ان میں سے کوئی ایک مرحلہ چھوڑ دیا ہو۔ اگر کچھ مدد نہیں کرتا ہے تو، OS کو دوبارہ انسٹال کرنا اور شروع سے ہی تمام مراحل پر عمل کرنا اچھا خیال ہوگا۔ ہم استعمال کرنے کی سفارش کرتے ہیں۔ نمونہ /cfg/3proxy.cfg.sample پر واقع ہے، بطور ٹیسٹ کنفیگریشن، اور پہلے سے نصب firewall-cmd ایک فائر وال کے طور پر.

لاگنگ

حتمی، لیکن کوئی کم اہم مسئلہ فائل اسٹوریج سے متعلق نہیں ہے۔ 3proxy انسٹالیشن کے دوران کئی ایم بی لیتا ہے، لیکن وقت گزرنے کے ساتھ لاگنگ کے ذریعے ہی سائز میں نمایاں اضافہ کیا جا سکتا ہے۔ حقیقت یہ ہے کہ بہت سے صارفین الگ فائل میں لاگ ریکارڈنگ کو فعال کرتے ہیں، لیکن روٹیشن سیٹ نہیں کرتے اور غیر متعلقہ لاگز کو حذف نہیں کرتے۔ اس مسئلے کے حل کے لیے تین آپشنز استعمال کیے جا سکتے ہیں:

  1. لاگنگ کو فعال کریں؛
  2. وقفے وقفے سے غیر متعلقہ لاگز کو حذف کریں؛
  3. گردش کو فعال کریں، جیسا کہ اوپر کی ترتیب میں کیا گیا تھا۔ مثال کے طور پر، کنفیگریشن فائل میں "30 گھمائیں" کا مطلب ہے کہ 3proxy صرف جدید ترین 30 فائلوں کو اسٹور کرے گا۔

نتیجہ

CentOS اور ArchLinux آپریٹنگ سسٹمز پر 3proxy کو انسٹال اور کنفیگر کرنا کافی آسان ہے، لیکن ساتھ ہی موثر کام ہے۔ مضمون میں ضروری پیکجز کو انسٹال کرنے، کنفیگریشن فائلوں کو ترتیب دینے اور سروس شروع کرنے کے اقدامات کا احاطہ کیا گیا ہے۔ حاصل کردہ علم آپ کو بغیر کسی دقت کے اپنے پراکسی سرور کو خود انسٹال اور ترتیب دینے کی اجازت دے گا۔

❮ پچھلا مضمون ونڈوز OS پر ڈسک پارٹیشن کو کیسے بڑھایا جائے۔
اگلا مضمون ❯ ونڈوز پاس ورڈ کو دوبارہ ترتیب دینے کا طریقہ

ہم سے VPS کے بارے میں پوچھیں۔

ہم دن یا رات کے کسی بھی وقت آپ کے سوالات کا جواب دینے کے لیے ہمیشہ تیار ہیں۔