VPS-এ AdGuard Home: ইনস্টলেশন ও বিজ্ঞাপন ব্লক করা

2 মিনিট পড়া
Tropic
VPS-এ AdGuard Home: ইনস্টলেশন ও বিজ্ঞাপন ব্লক করা

H1: VPS-এ AdGuard Home কীভাবে ইনস্টল ও কনফিগার করবেন

AdGuard Home একটি বিনামূল্যের DNS সার্ভার, যা বিজ্ঞাপনের ডোমেইন, ট্র্যাকার এবং অন্যান্য অনাকাঙ্ক্ষিত রিসোর্সে পাঠানো অনুরোধ ব্লক করে। কম্পিউটার, ফোন, টিভি এবং অন্যান্য ডিভাইসের DNS ক্যোয়ারি এর মাধ্যমে পাঠিয়ে একটি ড্যাশবোর্ড থেকেই ফিল্টারিং পরিচালনা করা যায়। এই নির্দেশিকায় Ubuntu বা Debian VPS-এ ইনস্টলেশন, প্রাথমিক কনফিগারেশন, ক্লায়েন্ট সংযোগ এবং পাবলিক সার্ভার সুরক্ষিত করার পদ্ধতি দেখানো হবে।

যা যা প্রয়োজন

ব্যক্তিগত ব্যবহারের জন্য সাধারণত 1 vCPU, 512 MB–1 GB RAM এবং কয়েক গিগাবাইট খালি স্টোরেজ যথেষ্ট। আপনার একটি স্ট্যাটিক IP ঠিকানা, SSH অ্যাক্সেস এবং root অথবা sudo অধিকারও প্রয়োজন হবে।

AdGuard Home ব্যবহার করে:

  • প্রাথমিক সেটআপ উইজার্ডের জন্য 3000/TCP;
  • নিয়মিত DNS-এর জন্য 53/UDP এবং 53/TCP;
  • ড্যাশবোর্ডে স্থায়ী অ্যাক্সেসের জন্য আপনার পছন্দের একটি পোর্ট।

কোনো সীমাবদ্ধতা ছাড়া পুরো ইন্টারনেটের জন্য পোর্ট 53 খুলে রাখা উচিত নয়। নিরাপদ কনফিগারেশন নিয়ে আলাদা অংশে আলোচনা করা হবে।

Ubuntu বা Debian-এ AdGuard Home ইনস্টল করা

SSH দিয়ে VPS-এ সংযোগ করুন এবং curl ইনস্টল করুন:

sudo apt update
sudo apt install -y curl

অফিশিয়াল ইনস্টলেশন স্ক্রিপ্ট চালান:

curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sudo sh -s -- -v

স্ক্রিপ্টটি সার্ভারের আর্কিটেকচার শনাক্ত করবে, স্থিতিশীল সংস্করণ ডাউনলোড করবে, সেটি /opt/AdGuardHome-এ ইনস্টল করবে এবং একটি সিস্টেম সার্ভিস তৈরি করবে। নিচের কমান্ড দিয়ে স্ট্যাটাস পরীক্ষা করতে পারেন:

sudo /opt/AdGuardHome/AdGuardHome -s status

এরপর ব্রাউজারে নিচের ঠিকানাটি খুলুন:

http://SERVER_IP:3000

পেজটি খোলা না গেলে সিস্টেম ফায়ারওয়াল এবং হোস্টিং প্রোভাইডারের কন্ট্রোল প্যানেলের নিয়মগুলো পরীক্ষা করুন।

প্রাথমিক কনফিগারেশন

সেটআপ উইজার্ডে অ্যাডমিনিস্ট্রেশন ড্যাশবোর্ড এবং DNS সার্ভারের জন্য ঠিকানা ও পোর্ট নির্বাচন করতে হবে।

ড্যাশবোর্ডের জন্য 3000 পোর্ট রাখা এবং VPS-এর IP ঠিকানাকে ইন্টারফেস হিসেবে নির্বাচন করা যায়। আলাদা একটি ইউজারনেম এবং শক্তিশালী পাসওয়ার্ড তৈরি করুন: ড্যাশবোর্ডে ক্যোয়ারি লগ, ফিল্টার এবং ক্লায়েন্ট সেটিংসের অ্যাক্সেস থাকে।

DNS-এর জন্য সার্ভারের IP এবং প্রচলিত 53 পোর্ট নির্বাচন করুন। এটি আগে থেকেই ব্যবহৃত হলে এলোমেলো কোনো পোর্ট বেছে নেবেন না—বেশিরভাগ ডিভাইস পোর্ট 53-এ নিয়মিত DNS প্রত্যাশা করে। এই দ্বন্দ্ব সমাধানের পদ্ধতি নিচে দেওয়া হয়েছে।

উইজার্ড শেষ হলে মূল পেজে ক্যোয়ারির পরিসংখ্যান, ব্লক করা অনুরোধের সংখ্যা, সক্রিয় ক্লায়েন্ট এবং বেশি ব্যবহৃত ডোমেইন দেখা যাবে।

DNS ফিল্টারিং কীভাবে কাজ করে

কোনো ওয়েবসাইট বা সার্ভিসে সংযোগ করার আগে একটি ডিভাইস সেই ডোমেইনের IP ঠিকানা জানতে চায়। AdGuard Home ডোমেইনটি তার নিয়মের তালিকার সঙ্গে মিলিয়ে দেখে। বিজ্ঞাপন নেটওয়ার্ক বা ট্র্যাকারকে করা অনুরোধ ব্লক করা হয়, আর অনুমোদিত অনুরোধ upstream DNS সার্ভারে পাঠানো হয়।

এই পদ্ধতিতে পুরো নেটওয়ার্কের জন্য কেন্দ্রীয় ফিল্টারিং পাওয়া যায়। এটি শুধু ব্রাউজারেই নয়, অনেক মোবাইল অ্যাপ্লিকেশন এবং Smart TV-তেও কাজ করে। অতিরিক্ত সুবিধার মধ্যে রয়েছে ক্যোয়ারি লগ, প্রতিটি ডিভাইসের জন্য আলাদা নিয়ম, Safe Search এবং নির্দিষ্ট সময়ে সার্ভিস ব্লক করার ব্যবস্থা।

AdGuard Home HTTPS ট্র্যাফিক ডিক্রিপ্ট করে না এবং পেজের কোডও পরিবর্তন করে না। তাই এটি ডোমেইনে পাঠানো অনুরোধ ব্লক করতে পারে, কিন্তু প্রতিটি বিজ্ঞাপনের উপাদান সরাতে পারে না।

ইনস্টলেশনের পর জরুরি সেটিংস

Upstream DNS সার্ভার

Settings → DNS settings খুলুন। এখানে AdGuard Home অনুমোদিত অনুরোধ যেসব সার্ভারে পাঠাবে, সেগুলো নির্দিষ্ট করা হয়। শুরুতে প্রস্তাবিত মানগুলো রাখা যায়; পরে DNS-over-HTTPS অথবা DNS-over-TLS সমর্থন করে এমন নির্ভরযোগ্য resolver বেছে নিন।

এনক্রিপ্ট করা upstream DNS VPS থেকে বাহ্যিক resolver পর্যন্ত সংযোগ সুরক্ষিত করে। ডিভাইস থেকে VPS পর্যন্ত সংযোগ আলাদাভাবে DoH, DoT অথবা VPN দিয়ে সুরক্ষিত করতে হবে।

ব্লকলিস্ট

মৌলিক ফিল্টার আগে থেকেই সক্রিয় থাকে। একসঙ্গে অনেক বড় তালিকা যোগ করবেন না: তালিকাগুলো পরস্পরের নিয়ম পুনরাবৃত্তি করতে পারে এবং ভুলভাবে বৈধ ডোমেইন ব্লক হওয়ার ঝুঁকি বাড়ায়। নির্দিষ্ট উদ্দেশ্যে একবারে একটি তালিকা যোগ করুন এবং ক্যোয়ারি লগ পর্যালোচনা করুন।

কোনো পরিবর্তনের পর কোনো ওয়েবসাইট বা অ্যাপ্লিকেশন কাজ করা বন্ধ করলে লগে ব্লক হওয়া ডোমেইনটি খুঁজে বের করে নির্দিষ্ট একটি ব্যতিক্রম যোগ করুন।

কাস্টম নিয়ম

কাস্টম নিয়মে একটি নির্দিষ্ট ডোমেইন ব্লক বা অনুমোদন করা যায়:

||ads.example.com^
@@||needed.example.com^

প্রথম লাইনটি ডোমেইন ব্লক করে, আর দ্বিতীয় লাইনটি একটি ব্যতিক্রম যোগ করে।

সার্ভিস, সময়সূচি এবং ক্লায়েন্ট

AdGuard Home নির্দিষ্ট সার্ভিস পুরোপুরি ব্লক করতে এবং সময়সূচি প্রয়োগ করতে পারে। ডিভাইসগুলোকে স্থায়ী ক্লায়েন্ট হিসেবে যোগ করলে কম্পিউটার, শিশুর ট্যাবলেট এবং টেলিভিশনের জন্য আলাদা নিয়ম নির্ধারণ করা যায়।

ডিভাইস কীভাবে সংযুক্ত করবেন

সার্ভার ইনস্টল করলেই আপনার ডিভাইসগুলোর DNS সেটিংস স্বয়ংক্রিয়ভাবে বদলে যায় না। রাউটারে অথবা প্রতিটি ক্লায়েন্টে AdGuard Home-এর ঠিকানা নির্দিষ্ট করতে হবে।

রাউটারের মাধ্যমে

রাউটারের সেটিংস খুলে DHCP, LAN অথবা DNS বিভাগ খুঁজুন। DNS সার্ভার হিসেবে AdGuard Home-এর IP ঠিকানা দিন, কনফিগারেশন সংরক্ষণ করুন এবং ডিভাইসগুলোকে নেটওয়ার্কে আবার সংযুক্ত করুন।

ফিল্টারিং বাধ্যতামূলক হলে দ্বিতীয় ঠিকানা হিসেবে কোনো পাবলিক DNS সার্ভার যোগ করবেন না। কিছু ডিভাইস দুই ঠিকানাই ব্যবহার করে AdGuard Home এড়িয়ে যেতে পারে। ত্রুটি সহনশীলতার জন্য দ্বিতীয় একটি ইনস্ট্যান্স চালু করা ভালো।

একটি ডিভাইসে

পরীক্ষার জন্য শুধু একটি কম্পিউটার বা ফোনে DNS পরিবর্তন করতে পারেন:

  • Windows — নেটওয়ার্ক অ্যাডাপ্টারের বৈশিষ্ট্য এবং IPv4/IPv6 সেটিংস;
  • macOS — সক্রিয় সংযোগের সেটিংস;
  • Android এবং iOS — বর্তমান Wi-Fi নেটওয়ার্কের সেটিংস;
  • Smart TV — ম্যানুয়াল নেটওয়ার্ক সেটিংস।

মোবাইল ডেটা ব্যবহার করলে সাধারণ Wi-Fi কনফিগারেশন কার্যকর হয় না। যেকোনো নেটওয়ার্কে ফিল্টারিং চালু রাখতে DoH, DoT অথবা VPN প্রয়োজন হবে।

নিচের কমান্ড দিয়ে সার্ভার পরীক্ষা করতে পারেন:

nslookup example.org SERVER_IP

অনুরোধটি AdGuard Home-এর ক্যোয়ারি লগে দেখা যাওয়ার কথা।

পাবলিক VPS-এ নিরাপদ কনফিগারেশন

স্বয়ংক্রিয় স্ক্যানারগুলো দ্রুত খোলা DNS resolver খুঁজে পায়। অননুমোদিত ক্লায়েন্ট এটি ব্যবহার করতে পারে অথবা DNS আক্রমণে যুক্ত করতে পারে। এতে অতিরিক্ত লোড তৈরি হয় এবং IP ঠিকানা নিয়ে অভিযোগ আসার ঝুঁকি থাকে।

পরীক্ষার সময় শুধু আপনার পাবলিক IP ঠিকানা থেকে অ্যাক্সেসের অনুমতি দিন। UFW ইনস্টল না থাকলে প্রথমে sudo apt install -y ufw দিয়ে এটি যোগ করুন।

sudo ufw allow OpenSSH
sudo ufw allow from YOUR_IP to any port 3000 proto tcp
sudo ufw allow from YOUR_IP to any port 53 proto udp
sudo ufw allow from YOUR_IP to any port 53 proto tcp
sudo ufw enable

প্রথমে SSH-এর অনুমতি দিন, না হলে VPS-এ অ্যাক্সেস হারাতে পারেন। আপনার IP ঠিকানা ঘন ঘন বদলালে WireGuard, Tailscale অথবা অন্য কোনো VPN-এর মাধ্যমে ডিভাইসগুলো সংযুক্ত করুন।

বিভিন্ন নেটওয়ার্ক থেকে স্থায়ী ব্যবহারের জন্য একটি ডোমেইন, TLS সার্টিফিকেট এবং নিরাপদ DNS কনফিগার করা ভালো:

  • DNS-over-HTTPS-এর জন্য 443/TCP;
  • DNS-over-TLS-এর জন্য 853/TCP;
  • AdGuard Home সেটিংসে ক্লায়েন্ট এবং ক্যোয়ারির হারের সীমা।

অ্যাডমিনিস্ট্রেশন ড্যাশবোর্ডকেও ফায়ারওয়াল বা VPN দিয়ে সুরক্ষিত করা উচিত। লগে ডিভাইসগুলো কোন কোন ডোমেইনে গেছে তা থাকে, তাই যতক্ষণ প্রয়োজন ততক্ষণই এটি সংরক্ষণ করুন।

“Port 53 is already in use” ত্রুটি

Ubuntu-তে পোর্ট 53 প্রায়ই systemd-resolved দখল করে রাখে। নিচের কমান্ড দিয়ে কোন প্রসেস পোর্টটি শুনছে তা পরীক্ষা করতে পারেন:

sudo ss -lntup | grep ':53'

সার্ভিসটি যদি শুধু 127.0.0.53-এ শুনতে থাকে, তাহলে প্রথমে সব ইন্টারফেসের বদলে নির্দিষ্ট VPS IP ঠিকানায় bind করার জন্য AdGuard Home কনফিগার করার চেষ্টা করুন।

দ্বন্দ্ব থেকে গেলে স্থানীয় DNS stub listener বন্ধ করুন:

sudo mkdir -p /etc/systemd/resolved.conf.d

printf '[Resolve]\nDNS=127.0.0.1\nDNSStubListener=no\n' | \
sudo tee /etc/systemd/resolved.conf.d/adguardhome.conf

sudo mv /etc/resolv.conf /etc/resolv.conf.backup
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
sudo systemctl reload-or-restart systemd-resolved
sudo /opt/AdGuardHome/AdGuardHome -s restart

সার্ভার আবার ডোমেইন resolve করতে পারছে এবং AdGuard Home চালু আছে—এটি নিশ্চিত না হওয়া পর্যন্ত SSH সেশন বন্ধ করবেন না।

আপডেট এবং ব্যাকআপ

ড্যাশবোর্ড থেকে অথবা নিচের কমান্ড দিয়ে আপডেট করতে পারেন:

cd /opt/AdGuardHome
sudo ./AdGuardHome --update

বড় পরিবর্তনের আগে /opt/AdGuardHome/AdGuardHome.yaml ফাইল এবং /opt/AdGuardHome/data/ ডিরেক্টরির ব্যাকআপ রাখুন। এগুলোতে সেটিংস, ক্লায়েন্ট, ফিল্টার এবং পরিচালনাগত ডেটা থাকে।

AdGuard Home-এর জন্য কোন VPS বেছে নেবেন

একটি পরিবার বা ছোট দলের জন্য 1 vCPU এবং 1 GB RAM সাধারণত যথেষ্ট। AdGuard Home-এর পাশাপাশি VPN, মনিটরিং সিস্টেম অথবা অন্য অ্যাপ্লিকেশন চালালে অতিরিক্ত মেমরি বরাদ্দ করুন।

tropic.host-এর VPS এই কাজের জন্য উপযোগী: Ubuntu বা Debian ইনস্টল করা যায়, একটি dedicated IP ঠিকানা পাওয়া যায় এবং বাড়ির কম্পিউটারের ওপর নির্ভর না করে DNS সার্ভারটি সারাক্ষণ চালু রাখা যায়। ইন্টারনেটে হোস্ট করার সময় সবসময় ফায়ারওয়াল, নিরাপদ DNS অথবা VPN ব্যবহার করুন।

AdGuard Home-এর সীমাবদ্ধতা

DNS ফিল্টারিং ব্রাউজারভিত্তিক ব্লকার, অ্যান্টিভাইরাস সফটওয়্যার অথবা ফায়ারওয়্যারের বিকল্প নয়। মূল কনটেন্টের একই ডোমেইন থেকে বিজ্ঞাপন সরবরাহ হলে এটি নির্ভরযোগ্যভাবে বিজ্ঞাপন সরাতে পারে না। তাই DNS-স্তরের ফিল্টারিং YouTube এবং Twitch-এর ভিডিও বিজ্ঞাপন, অথবা সামাজিক নেটওয়ার্কের ভেতরের স্পনসর্ড পোস্ট, সার্ভিস নষ্ট না করে নির্ভরযোগ্যভাবে সরাতে পারে না।

ব্লক করার পর কোনো পেজে খালি জায়গা থেকে যেতে পারে। ব্রাউজার এক্সটেনশন পেজের উপাদান লুকিয়ে দিতে পারে, তাই এটি AdGuard Home-এর সঙ্গে ব্যবহার করা যায়। কিছু অ্যাপ্লিকেশন নিজেদের এনক্রিপ্ট করা DNS ব্যবহার করে এবং সিস্টেমের সেটিংস এড়িয়ে যেতে পারে।

উপসংহার

AdGuard Home কম্পিউটার, ফোন এবং অন্যান্য ডিভাইসে উল্লেখযোগ্য পরিমাণ বিজ্ঞাপন ও ট্র্যাকার কেন্দ্রীয়ভাবে ব্লক করে। এটি কয়েক মিনিটে VPS-এ ইনস্টল করা যায় এবং বেশি রিসোর্সের প্রয়োজন হয় না।

ইনস্টলেশনের পর ক্লায়েন্ট ও ফিল্টার কনফিগার করুন, ড্যাশবোর্ড সুরক্ষিত রাখুন এবং পুরো ইন্টারনেটের জন্য পোর্ট 53 খোলা রাখবেন না। মোবাইল ও বাইরের নেটওয়ার্ক থেকে সংযোগের জন্য VPN, DNS-over-HTTPS অথবা DNS-over-TLS ব্যবহার করুন।

FAQ

AdGuard Home কি বিনামূল্যে?

হ্যাঁ। AdGuard Home বিনামূল্যে বিতরণ করা হয় এবং সাবস্ক্রিপশনের প্রয়োজন নেই। এটি যে ডিভাইস বা VPS-এ চালাবেন, শুধু তার খরচ দিতে হবে।

AdGuard Home কি YouTube-এর বিজ্ঞাপন ব্লক করে?

না। বিজ্ঞাপন ও ভিডিও একই ডোমেইন থেকে সরবরাহ হতে পারে, তাই DNS ব্লকিং করলে YouTube নিজেই ব্যাহত হবে।

মোবাইল ডেটাতেও কি ফিল্টারিং কাজ করে?

হ্যাঁ, যদি DNS-over-TLS, DNS-over-HTTPS, সমর্থিত কোনো প্রোফাইল অথবা VPN কনফিগার করেন। Wi-Fi সেটিংসে DNS পরিবর্তন করলে শুধু সেই নেটওয়ার্কে তা প্রযোজ্য হয়।

কত RAM প্রয়োজন?

ব্যক্তিগত ব্যবহারের জন্য সাধারণত 512 MB–1 GB RAM যথেষ্ট। অনেক ক্লায়েন্ট, বড় ফিল্টার অথবা অতিরিক্ত সার্ভিস থাকলে বেশি মেমরি লাগতে পারে।

ফিল্টারিং চালু করার পর কোনো ওয়েবসাইট খোলা বন্ধ হলে কী করব?

ক্যোয়ারি লগ খুলুন, যে কাজের সময় সমস্যা হয়েছে সেটি আবার করুন এবং ব্লক হওয়া ডোমেইন খুঁজে বের করুন। সব ফিল্টার বন্ধ না করে ওই ডোমেইনের জন্য নির্দিষ্ট একটি ব্যতিক্রম যোগ করুন।