নিরাপত্তা

লিনাক্স সার্ভারে UFW দিয়ে সহজ ফায়ারওয়াল ব্যবস্থাপনা

  • 15 পড়তে মিনিট
  • Hostragons টিম
লিনাক্স সার্ভারে UFW দিয়ে সহজ ফায়ারওয়াল ব্যবস্থাপনা

লিনাক্স সার্ভারে UFW, জটিল iptables নিয়মগুলোকে সহজ করে SSH, HTTP, HTTPS এবং বিশেষ পোর্টের জন্য ফায়ারওয়াল ব্যবস্থাপনাকে দ্রুত এবং নিরাপদ করে তোলে। বিশেষ করে উবুন্টু এবং ডেবিয়ান ভিত্তিক সার্ভারগুলিতে UFW ব্যবহার করে ডিফল্টভাবে আসা ট্রাফিক বন্ধ করতে, প্রয়োজনীয় সার্ভিসগুলো খোলার, নির্দিষ্ট IP ঠিকানাগুলোকে অনুমতি দেওয়া এবং ভুল চেষ্টা সীমাবদ্ধ করতে পারেন। মৌলিক নিরাপত্তার শুরুতে সুপারিশকৃত পদ্ধতি হলো: SSH অ্যাক্সেস নিশ্চিত করুন, ডিফল্ট প্রবাহিত ট্রাফিক অস্বীকার করুন, প্রস্থান ট্রাফিকে অনুমতি দিন, শুধুমাত্র ব্যবহৃত সার্ভিস পোর্টগুলো খুলুন এবং UFW-এর অবস্থান নিয়মিতভাবে পরীক্ষা করুন।

একটি ওয়েব সার্ভার যখন ইন্টারনেটে খোলে, তখন এটি বট স্ক্যানিং, পাসওয়ার্ড চেষ্টা, দুর্বলতা স্ক্যানার এবং অপ্রয়োজনীয় পোর্টের জন্য অনুসন্ধানের সম্মুখীন হয়। এজন্য ফায়ারওয়াল, লিনাক্স সার্ভার নিরাপত্তার প্রথম স্তরগুলোর একটি। UFW, প্রযুক্তিগত দলের দৈনিক অপারেশনে ব্যবহারের জন্য একটি ব্যবহারিক টুল; কারণ এর কাছে পাঠযোগ্য কমান্ড রয়েছে, নিয়ম যোগ এবং মুছার প্রক্রিয়া দ্রুত, লগিং প্রদান করে এবং ভুল কনফিগারেশনের ঝুঁকি iptables কমান্ডগুলোর তুলনায় কমায়। এই নির্দেশিকায় UFW ইনস্টলেশন, মৌলিক কমান্ড, SSH লক আউট প্রতিরোধ, ওয়েব সার্ভার পোর্ট, IP ভিত্তিক অনুমতি, লগ পরীক্ষা, IPv6, Docker এর মতো বিশেষ পরিস্থিতি এবং 2026 স্ট্যান্ডার্ড অনুযায়ী নিরাপত্তা অনুশীলনগুলো ধাপে ধাপে আলোচনা করা হবে।

UFW কি এবং এটি কি কাজে আসে?

UFW, Uncomplicated Firewall এর সংক্ষিপ্ত রূপ। বাংলায় একে সহজ ফায়ারওয়াল বলা যেতে পারে। এটি পিছনের দিক থেকে লিনাক্স কোরের প্যাকেট ফিল্টারিং অবকাঠামো ব্যবহার করে; তবে সিস্টেম প্রশাসককে আরো সহজবোধ্য কমান্ড প্রদান করে। উদাহরণস্বরূপ, সরাসরি iptables বা nftables নিয়ম লেখার পরিবর্তে sudo ufw allow 443/tcp কমান্ডের মাধ্যমে HTTPS ট্রাফিকের জন্য অনুমতি দিতে পারেন।

UFW বিশেষত নিম্নলিখিত পরিস্থিতিতে উপকারী:

  • নতুন প্রতিষ্ঠিত VPS বা ডেডিকেটেড সার্ভারে মৌলিক নেটওয়ার্ক নিরাপত্তা দ্রুত স্থাপন করা।
  • ওয়েব সার্ভারে শুধুমাত্র 80 এবং 443 পোর্ট খোলা রাখা।
  • SSH অ্যাক্সেসকে শুধুমাত্র নির্দিষ্ট IP ঠিকানায় সীমাবদ্ধ করা।
  • ব্রুট ফোর্স চেষ্টা কমানোর জন্য SSH সংযোগগুলিকে সীমিত করে পরিচালনা করা।
  • টেস্ট, স্টেজিং এবং প্রশাসনিক প্যানেলগুলোকে পুরোপুরি ইন্টারনেটে খোলা না রাখা।
  • লগের মাধ্যমে সন্দেহজনক সংযোগগুলো ট্র্যাক করা।

UFW একা সমস্ত নিরাপত্তা সমস্যাগুলি সমাধান করে না; তবে এটি আক্রমণের পৃষ্ঠাকে ছোট করে। শক্তিশালী পাসওয়ার্ড, SSH কী দিয়ে অ্যাক্সেস, নিয়মিত আপডেট, SSL/TLS কনফিগারেশন এবং অ্যাপ্লিকেশন নিরাপত্তার সাথে মিলিত হলে এটি একটি খুব কার্যকর মৌলিক স্তর তৈরি করে। যদি আপনার সার্ভারে ওয়েবসাইট হোস্ট করা থাকে, তাহলে ফায়ারওয়াল ব্যবহার করার সাথে SSL সার্টিফিকেট ব্যবহারের বিষয়টিও উপেক্ষা করা উচিত নয় এসএসএল সার্টিফিকেট।

UFW, iptables এবং firewalld তুলনা

লিনাক্স ইকোসিস্টেমে ফায়ারওয়াল ব্যবস্থাপনার জন্য বিভিন্ন টুল রয়েছে। UFW, iptables এবং firewalld প্রায়শই একই প্রয়োজনের জন্য কাজ করে; তবে ব্যবহার সহজতা, বিতরণ সমর্থন এবং পরিচালনার পদ্ধতি আলাদা। নিচের টেবিলটি আপনার সিদ্ধান্ত নেওয়ার প্রক্রিয়াকে সহজ করে।

UFW, iptables এবং firewalld তুলনা
টুলপ্রধান বৈশিষ্ট্যকাদের জন্য উপযুক্ত?যা খেয়াল রাখতে হবে
UFWসহজ কমান্ড, দ্রুত ইনস্টলেশন, Ubuntu/Debian সামঞ্জস্যVPS ব্যবহারকারীরা, ওয়েব ডেভেলপাররা, ছোট এবং মাঝারি আকারের টিমজটিল নেটওয়ার্ক সেগমেন্টেশনের জন্য সীমিত হতে পারে
iptablesবিস্তৃত নিয়ম নিয়ন্ত্রণউন্নত স্তরের সিস্টেম প্রশাসকরাভুল নিয়ম লেখা অ্যাক্সেস বিচ্ছিন্ন করতে পারে
firewalldZone ধারণা, গতিশীল নিয়ম ব্যবস্থাপনাCentOS, AlmaLinux, Rocky Linux পরিবেশUFW-এর মতো সহজ নয়; zone স্ট্রাকচার শিখতে হবে

যদি আপনি উবুন্টু ভিত্তিক একটি ওয়েব সার্ভার পরিচালনা করেন, তাহলে লিনাক্স সার্ভারে UFW বেশিরভাগ প্রয়োজনের জন্য যথেষ্ট। বড় কর্পোরেট নেটওয়ার্কে বা বহু স্তরের নিরাপত্তা আর্কিটেকচারে UFW; ক্লাউড নিরাপত্তা গ্রুপ, WAF, IDS/IPS এবং কেন্দ্রীয় লগিং সমাধানের সাথে একসাথে ভাবা উচিত।

UFW ইনস্টলেশন এবং প্রথম চেক

UFW সাধারণত উবুন্টুর উপর উপলব্ধ আসে। তবে এটি ইনস্টল করা আছে কিনা তা পরীক্ষা করা ভাল শুরু। কমান্ড: sudo ufw status। যদি command not found এর মতো একটি আউটপুট আসে, তাহলে আপনাকে ইনস্টল করতে হবে।

উবুন্টু এবং ডেবিয়ান-এ ইনস্টলেশন

প্রথমে প্যাকেজের তালিকা আপডেট করুন: sudo apt update। তারপর UFW ইনস্টলেশন করুন: sudo apt install ufw -y। ইনস্টলেশনের পর সার্ভিসের অবস্থান পরীক্ষা করুন: sudo systemctl status ufw। আউটপুটে সক্রিয় না দেখালে এটি স্বাভাবিক হতে পারে; UFW নিয়মগুলি সক্রিয় না করা পর্যন্ত এটি নিষ্ক্রিয় থাকতে পারে।

সার্ভার ব্যবস্থাপনায় প্রথম নিয়মটি হলো তাড়াহুড়ো না করা। যদি আপনি একটি দূর VPS-এ কাজ করছেন তবে UFW সক্রিয় করার আগে SSH পোর্টে অনুমতি দেওয়ার বিষয়ে নিশ্চিত হন। অন্যথায়, আপনি আপনার সার্ভারের অ্যাক্সেস হারাতে পারেন। যদি আপনি Hostragons থেকে VPS ব্যবহার করেন, তবে প্রথম নিরাপত্তা কনফিগারেশন করার আগে প্যানেল অ্যাক্সেস এবং কনসোল বিকল্পগুলি নোট করা একটি ব্যবহারিক ব্যবস্থা ভিপিএস সার্ভার।

বর্তমান অবস্থা দেখা

UFW-এর অবস্থা দেখতে sudo ufw status verbose কমান্ড ব্যবহার করতে পারেন। আরো বিস্তারিত এবং নম্বরযুক্ত নিয়মের তালিকার জন্য sudo ufw status numbered কমান্ডটি গুরুত্বপূর্ণ। নিয়ম মুছার সময় নম্বরযুক্ত তালিকা বড় সুবিধা দেয়। উদাহরণস্বরূপ, ভুলভাবে খোলা একটি পোর্ট মুছতে, প্রথমে নম্বরটি দেখতে হবে, তারপর sudo ufw delete 3 এর মতো একটি কমান্ডের মাধ্যমে মুছতে হবে।

নিরাপদ শুরু: ডিফল্ট নিয়ম

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

ব্যবহৃত মৌলিক কমান্ডগুলো:

  • sudo ufw default deny incoming
  • sudo ufw default allow outgoing
  • sudo ufw allow OpenSSH অথবা sudo ufw allow 22/tcp
  • sudo ufw enable
  • sudo ufw status verbose

এখানে গুরুত্বপূর্ণ পয়েন্ট হলো SSH অ্যাক্সেস। যদি SSH অন্য একটি পোর্ট থেকে কাজ করে, যেমন 2222 ব্যবহার করছেন, তবে sudo ufw allow 2222/tcp কমান্ডটি চালানোর আগে UFW সক্রিয় করবেন না। সার্ভার নিরাপত্তায় স্ট্যান্ডার্ড 22 পোর্ট পরিবর্তন করা একা নিরাপত্তা প্রদান করে না; তবে এটি স্বয়ংক্রিয় বটের চেষ্টা কমাতে পারে। আরো গুরুত্বপূর্ণ হলো, SSH-এর জন্য পাসওয়ার্ড প্রবেশ বন্ধ করা এবং কী ভিত্তিক অ্যাক্সেস ব্যবহার করা।

SSH অ্যাক্সেসকে নিরাপদ করা

SSH হল আপনার সার্ভারের প্রশাসনিক দরজা। তাই UFW কনফিগারেশনে এটি সবচেয়ে সতর্কভাবে বিবেচনার বিষয়। যদি প্রতিটি IP ঠিকানা থেকে SSH অ্যাক্সেস খোলা থাকে, তবে ইন্টারনেটে স্বয়ংক্রিয় স্ক্যানারগুলি দ্রুত আপনার সার্ভারটিতে চেষ্টা করতে শুরু করতে পারে।

SSH পোর্টে অনুমতি দেওয়া

যদি স্ট্যান্ডার্ড পোর্ট ব্যবহার করা হয়, তাহলে কমান্ডটি সহজ: sudo ufw allow 22/tcp। উবুন্টু অ্যাপ্লিকেশন প্রোফাইল বিদ্যমান থাকলে sudo ufw allow OpenSSH ও ব্যবহার করা যেতে পারে। যদি ভিন্ন পোর্ট ব্যবহার করেন, উদাহরণস্বরূপ 2222-এ sudo ufw allow 2222/tcp কমান্ডটি প্রয়োজন।

SSH অ্যাক্সেসকে নির্দিষ্ট IP-এর সাথে সীমাবদ্ধ করা

সবচেয়ে নিরাপদ পদ্ধতিগুলোর একটি হলো SSH অ্যাক্সেসকে শুধুমাত্র স্থির প্রশাসক IP ঠিকানায় খোলার। উদাহরণস্বরূপ, আপনার অফিসের IP ঠিকানা 203.0.113.10 হলে, আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন: sudo ufw allow from 203.0.113.10 to any port 22 proto tcp। এর ফলে SSH পোর্ট সাধারণত ইন্টারনেটে খোলা থাকবে না।

যদি একাধিক প্রশাসক থাকে, তবে প্রতিটি IP-এর জন্য আলাদা নিয়ম যোগ করুন। যদি আপনি ডাইনামিক IP ব্যবহার করেন, তবে এই পদ্ধতিটি সতর্কতার সাথে বিবেচনা করুন; IP পরিবর্তিত হলে আপনার অ্যাক্সেস বিচ্ছিন্ন হতে পারে। এমন পরিস্থিতিতে VPN-এর মাধ্যমে প্রশাসন, ব্যাশন হোস্ট অথবা সরবরাহকারীর প্যানেল থেকে জরুরি কনসোল অ্যাক্সেস আরও পেশাদার সমাধান।

ব্রুট ফোর্স চেষ্টার বিরুদ্ধে সীমা ব্যবহার

UFW, ঘন সংযোগের চেষ্টা কমানোর জন্য সীমা কমান্ড সরবরাহ করে। কমান্ড: sudo ufw limit 22/tcp। এই নিয়মটি নির্দিষ্ট সময়ে অতিরিক্ত সংযোগের প্রচেষ্টা সীমাবদ্ধ করতে সহায়ক। তবে এটি fail2ban-এর মতো টুলগুলোর সম্পূর্ণ বিকল্প নয়। উৎপাদন পরিবেশে SSH নিরাপত্তার জন্য UFW সীমা, fail2ban, কী ভিত্তিক অ্যাক্সেস এবং শক্তিশালী ব্যবহারকারী নীতিগুলো একসাথে ব্যবহার করা উচিত।

ওয়েব সার্ভার পোর্ট খোলা: HTTP এবং HTTPS

একটি ওয়েবসাইট প্রকাশ করার জন্য সাধারণত 80/tcp এবং 443/tcp পোর্ট প্রয়োজন। 80 পোর্ট HTTP, 443 পোর্ট HTTPS ট্রাফিকের জন্য। আধুনিক SEO, ব্রাউজার নিরাপত্তা এবং ব্যবহারকারীর বিশ্বাসের দৃষ্টিকোণ থেকে HTTPS এখন স্ট্যান্ডার্ড। SSL সার্টিফিকেট ছাড়া সাইটগুলো নিরাপত্তা সতর্কতা পায় এবং রূপান্তর হারেও ক্ষতি হতে পারে এসএসএল সার্টিফিকেট।

Nginx অথবা Apache-এর জন্য মৌলিক নিয়ম

HTTP-এর জন্য কমান্ড: sudo ufw allow 80/tcp। HTTPS-এর জন্য কমান্ড: sudo ufw allow 443/tcp। উভয় একসাথে খোলার জন্য sudo ufw allow 80,443/tcp কমান্ডের পরিবর্তে আলাদাভাবে লেখা অনেক প্রশাসকের জন্য আরো পাঠযোগ্য একটি পছন্দ।

UFW অ্যাপ্লিকেশন প্রোফাইলও ব্যবহার করা যেতে পারে। Nginx-এর জন্য sudo ufw app list কমান্ডের মাধ্যমে প্রোফাইলগুলো দেখতে পারেন। উদাহরণস্বরূপ, Nginx Full প্রোফাইল HTTP এবং HTTPS উভয় অ্যাক্সেসের অনুমতি দেয়। কমান্ড: sudo ufw allow Nginx Full। Apache-এর ক্ষেত্রে, একইভাবে Apache Full প্রোফাইল ব্যবহার করা যেতে পারে।

শুধুমাত্র HTTPS ব্যবহার করা কি যথেষ্ট?

প্রযুক্তিগতভাবে আপনার সাইট শুধুমাত্র HTTPS-এর মাধ্যমে প্রকাশিত হতে পারে; তবে Let’s Encrypt-এর মতো সার্টিফিকেট নবায়ন প্রক্রিয়া এবং HTTP থেকে HTTPS-এ রিডাইরেক্টের জন্য 80 পোর্ট খোলা থাকা বেশিরভাগ পরিস্থিতিতে প্রয়োজনীয়। তাই ওয়েব সার্ভারে 80 এবং 443 পোর্টগুলো একসাথে পরিচালনা করা বেশি ব্যবহারিক। অ্যাপ্লিকেশন স্তরে সমস্ত HTTP অনুরোধগুলোকে 301 দিয়ে HTTPS-এ রিডাইরেক্ট করা সবচেয়ে সঠিক পদ্ধতি।

বিশেষ পোর্ট, ডেটাবেস এবং প্রশাসনিক প্যানেল

প্রত্যেকটি পোর্ট খোলা সহজ; আসল দক্ষতা হলো কোন পোর্ট খোলা উচিত নয় তা জানা। MySQL এর জন্য 3306, PostgreSQL এর জন্য 5432, Redis এর জন্য 6379, Elasticsearch এর জন্য 9200 এর মতো পোর্টগুলো ইন্টারনেটে খোলা রাখা হলে গুরুতর নিরাপত্তা ঝুঁকি সৃষ্টি করতে পারে। এই সার্ভিসগুলো সম্ভব হলে শুধুমাত্র লোকালহোস্টের উপর শোনানো অথবা বিশেষ নেটওয়ার্কের মাধ্যমে অ্যাক্সেসযোগ্য হওয়া উচিত।

নির্দিষ্ট একটি IP-এর জন্য বিশেষ পোর্ট খোলা

যদি আপনি চান শুধুমাত্র আপনার অ্যাপ্লিকেশন সার্ভারের ডেটাবেস সার্ভারে অ্যাক্সেস করতে, তাহলে IP ভিত্তিক নিয়ম ব্যবহার করতে হবে। কমান্ড: sudo ufw allow from 198.51.100.25 to any port 5432 proto tcp। এই নিয়মটি, PostgreSQL অ্যাক্সেস শুধুমাত্র নির্দিষ্ট IP-এর জন্য খোলে।

ভুল উদাহরণ হলো sudo ufw allow 5432/tcp কমান্ডটি উৎপাদন ডেটাবেসে সবার জন্য খোলা রাখা। এটি অপ্রয়োজনীয় একটি আক্রমণের পৃষ্ঠ তৈরি করে। ডেটাবেস সার্ভার, প্রশাসনিক প্যানেল এবং অভ্যন্তরীণ সার্ভিসগুলোর জন্য সবসময় উৎস IP সীমাবদ্ধতা বিবেচনা করা উচিত।

cPanel, Plesk এবং প্রশাসনিক প্যানেলগুলিতে সতর্কতা

হোস্টিং নিয়ন্ত্রণ প্যানেলগুলো একাধিক পোর্ট ব্যবহার করতে পারে। Plesk, cPanel অথবা বিশেষ প্রশাসনিক প্যানেল ব্যবহার করছেন তবে অফিসিয়াল পোর্টের তালিকা চেক না করে UFW সক্রিয় করবেন না। অন্যথায় ইমেইল, DNS, FTP অথবা প্যানেল অ্যাক্সেস বিচ্ছিন্ন হতে পারে। পরিচালিত হোস্টিং পছন্দ করেন এমন ব্যবহারকারীদের জন্য এই জটিলতা সাধারণত সরবরাহকারীর দ্বারা মোকাবেলা করা হয় ওয়েব হোস্টিং।

নিয়ম মুছা, সম্পাদনা এবং ক্রমের যুক্তি

UFW-এর সাথে নিয়ম ব্যবস্থাপনা সহজ; তবে উৎপাদন পরিবেশে পরিবর্তন করার সময় রেকর্ড রাখা গুরুত্বপূর্ণ। প্রথমে বিদ্যমান নিয়মগুলোকে নম্বরযুক্তভাবে দেখুন: sudo ufw status numbered। মুছতে চান এমন নিয়মের নম্বর খুঁজে বের করুন এবং sudo ufw delete 5 এর মতো একটি কমান্ডের মাধ্যমে মুছুন।

সরাসরি নিয়মের বিবৃতির মাধ্যমে মুছা সম্ভব। উদাহরণস্বরূপ sudo ufw delete allow 8080/tcp কমান্ডটি 8080 পোর্টের জন্য অনুমতি নিয়ম মুছে ফেলবে। তবে জটিল IP ভিত্তিক নিয়মগুলোর ক্ষেত্রে নম্বরযুক্ত মুছা বেশি নিরাপদ।

নিয়মের ক্রম বিশেষভাবে allow এবং deny নিয়মগুলো একসাথে ব্যবহার করা হলে গুরুত্ব পায়। সাধারণ অনুমতি নিয়মের আগে বিশেষ একটি অস্বীকার নিয়ম যোগ করতে চাইলে insert কমান্ডটি বিবেচনা করতে পারেন। উদাহরণস্বরূপ, একটি নির্দিষ্ট IP-কে সবচেয়ে উপরে অস্বীকার করতে sudo ufw insert 1 deny from 203.0.113.55 ব্যবহার করা যেতে পারে। এই পদ্ধতি আক্রমণকারী বা অপব্যবহারকারী IP ঠিকানাগুলিকে দ্রুত ব্লক করতে কার্যকর।

UFW লগের মাধ্যমে ট্রাফিক ট্র্যাকিং

ফায়ারওয়াল শুধুমাত্র পোর্ট খুলতে এবং বন্ধ করার জন্য নয়, নেটওয়ার্কের আচরণ বোঝার জন্যও মূল্যবান। UFW লগগুলি খুলতে sudo ufw logging on কমান্ড ব্যবহার করা হয়। লগের স্তর প্রয়োজন হলে low, medium, high অথবা full হিসাবে সেট করা যেতে পারে। বেশিরভাগ সার্ভারের জন্য শুরুর জন্য low যথেষ্ট।

লগগুলি পরীক্ষা করতে /var/log/ufw.log ফাইলটি চেক করতে পারেন। উদাহরণস্বরূপ কমান্ড: sudo tail -f /var/log/ufw.log। এখানে অস্বীকার করা সংযোগগুলো, উৎস IP ঠিকানাগুলো, লক্ষ্য পোর্ট এবং প্রোটোকল তথ্য দেখা যায়। উদাহরণস্বরূপ, যদি দ্রুত শত শত বিভিন্ন IP থেকে 22 পোর্টের জন্য চেষ্টা আসে, তবে SSH নিরাপত্তা ব্যবস্থা আরও কঠোর করা প্রয়োজন।

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

IPv6 এবং UFW সেটিংস

2026 সালের মধ্যে IPv6 সমর্থন অনেক ডেটা কেন্দ্রে স্ট্যান্ডার্ড হয়ে উঠেছে। তবে কিছু প্রশাসক শুধুমাত্র IPv4 নিয়মগুলি ভাবলে নিরাপত্তার ফাঁক রেখে যেতে পারেন। আপনার সার্ভার IPv6 ঠিকানা পেলে UFW-এর IPv6 ট্রাফিকও পরিচালনা করছে কিনা তা নিশ্চিত করতে হবে।

পরীক্ষার জন্য /etc/default/ufw ফাইলে IPV6=yes লাইনটি থাকতে হবে। পরিবর্তন করার পর UFW পুনরায় শুরু করা যেতে পারে: sudo ufw disable এবং তারপর sudo ufw enable। UFW স্ট্যাটাস আউটপুটে v6 শব্দযুক্ত নিয়মগুলি দেখা গেলে IPv6 দিকটিও পরিচালিত হচ্ছে তা বোঝায়।

যদি আপনি IPv6 ব্যবহার না করেন তবে সম্পূর্ণরূপে নিষ্ক্রিয় করার পরিবর্তে প্রথমে সরবরাহকারী এবং অ্যাপ্লিকেশন প্রয়োজনীয়তা পরীক্ষা করুন। ভুল IPv6 কনফিগারেশন, IPv4 দিক থেকে আপনি যে সার্ভিসটি বন্ধ করেছেন সেটি IPv6 এর মাধ্যমে অ্যাক্সেসযোগ্য থাকার কারণ হতে পারে। এটি একটি সাধারণ কিন্তু উপেক্ষিত নিরাপত্তার ত্রুটি।

Docker ব্যবহার করার সময় UFW কেন ভিন্নভাবে আচরণ করতে পারে?

Docker, কনটেইনার পোর্টগুলি প্রকাশ করার সময় iptables নিয়মগুলোকে সরাসরি পরিবর্তন করতে পারে। এই পরিস্থিতি UFW ব্যবহারকারী প্রশাসকদের জন্য বিস্ময়কর হতে পারে; কারণ UFW-তে বন্ধ দেখানো একটি পোর্ট Docker publish সেটিংয়ের কারণে বাইরের অ্যাক্সেসযোগ্য হয়ে যেতে পারে। উদাহরণস্বরূপ docker run -p 8080:80 কমান্ডটি কনটেইনারের ভিতরে 80 পোর্টকে হোস্টে 8080 হিসাবে প্রকাশ করে।

Docker ব্যবহারকারী সার্ভারগুলিতে নিম্নলিখিত চেক করতে হবে:

  • docker ps আউটপুটে কোন পোর্টগুলি বাইরের দিকে খোলা তা পরীক্ষা করুন।
  • অপ্রয়োজনীয় -p অথবা ports সংজ্ঞাগুলো মুছুন।
  • সার্ভিসগুলো শুধুমাত্র 127.0.0.1-এর উপর প্রকাশ করার বিষয়ে বিবেচনা করুন।
  • ক্লাউড নিরাপত্তা গ্রুপ এবং UFW নিয়মগুলো একসাথে পরীক্ষা করুন।
  • উৎপাদন পরিবেশে রিভার্স প্রক্সির মাধ্যমে নিয়ন্ত্রিত প্রকাশ করুন।

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

UFW-এর জন্য প্রযোজ্য নিরাপত্তা চেকলিস্ট

নিচের চেকলিস্টটি একটি নতুন প্রতিষ্ঠিত লিনাক্স সার্ভারে একটি ব্যবহারিক শুরু মানদণ্ড হিসাবে ব্যবহার করা যেতে পারে। বিশেষ করে ওয়েব প্রকল্প, API, ই-কমার্স সাইট বা গ্রাহক প্যানেল প্রকাশ করার আগে এই বিষয়গুলো পর্যালোচনা করা ব্যাঘাত এবং নিরাপত্তার ঝুঁকি কমায়।

  • সার্ভার আপডেট করুন: sudo apt update && sudo apt upgrade -y।
  • SSH অ্যাক্সেস পরীক্ষা করুন এবং সম্ভব হলে দ্বিতীয় একটি টার্মিনাল সেশন খোলা রাখুন।
  • ডিফল্ট আসা ট্রাফিক অস্বীকার করুন: sudo ufw default deny incoming।
  • ডিফল্ট বের হওয়া ট্রাফিকে অনুমতি দিন: sudo ufw default allow outgoing।
  • SSH পোর্টে অনুমতি দিন অথবা IP ভিত্তিক সীমাবদ্ধতা প্রয়োগ করুন।
  • ওয়েব সার্ভারের জন্য শুধুমাত্র 80 এবং 443 পোর্টগুলি খুলুন।
  • ডেটাবেস পোর্টগুলোকে ইন্টারনেটে খোলা রাখবেন না।
  • UFW সক্রিয় করুন: sudo ufw enable।
  • নিয়মগুলো যাচাই করুন: sudo ufw status verbose এবং sudo ufw status numbered।
  • লগিং চালু করুন এবং প্রথম 24 ঘণ্টার মধ্যে সন্দেহজনক ট্রাফিক পরীক্ষা করুন।
  • IPv6 নিয়মগুলো পর্যালোচনা করুন।
  • Docker অথবা নিয়ন্ত্রণ প্যানেল ব্যবহার করছেন থাকলে অতিরিক্ত পোর্টের প্রভাব পরীক্ষা করুন।

বাস্তব উদাহরণ: WordPress সার্ভারের জন্য UFW ইনস্টলেশন

ধরি একটি WordPress সাইট উবুন্টুতে Nginx, PHP-FPM এবং MySQL-এর সাথে কাজ করছে। MySQL শুধুমাত্র লোকালহোস্টে শোনায়, সাইট HTTPS-এর মাধ্যমে প্রকাশিত হচ্ছে এবং SSH প্রশাসক IP থেকে অ্যাক্সেস করা হবে। এই পরিস্থিতিতে UFW কনফিগারেশন হতে পারে:

  • sudo ufw default deny incoming
  • sudo ufw default allow outgoing
  • sudo ufw allow from 203.0.113.10 to any port 22 proto tcp
  • sudo ufw allow 80/tcp
  • sudo ufw allow 443/tcp
  • sudo ufw logging on
  • sudo ufw enable
  • sudo ufw status verbose

এই কনফিগারেশনে SSH সবার জন্য খোলা নেই, ওয়েব ট্রাফিকের জন্য প্রয়োজনীয় দুটি পোর্ট খোলা আছে এবং ডেটাবেস বাইরের দিকে বন্ধ। WordPress-এর দিকে নিরাপত্তা প্লাগইন, শক্তিশালী প্রশাসক পাসওয়ার্ড, আপডেট থিম এবং প্লাগইন, নিয়মিত ব্যাকআপ এবং SSL-এর সাথে একটি অত্যন্ত শক্তিশালী ভিত্তি তৈরি হয়। ডোমেইন পরিচালনা এবং DNS রেকর্ডের সঠিক কনফিগারেশনও অ্যাক্সেসযোগ্যতার দিক থেকে গুরুত্বপূর্ণ ডোমেইন অনুসন্ধান।

সাধারণ ত্রুটি এবং সমাধানের প্রস্তাবনা

UFW সক্রিয় করার পর SSH সংযোগ বিচ্ছিন্ন হয়ে গেল

এটি সাধারণত SSH পোর্টে অনুমতি দেওয়ার আগে UFW সক্রিয় হলে ঘটে। যদি আপনার সরবরাহকারী প্যানেল থেকে কনসোল অ্যাক্সেস থাকে তবে সংযোগ করুন এবং sudo ufw allow 22/tcp অথবা আপনার ব্যবহৃত বিশেষ পোর্টের জন্য অনুমতি যোগ করুন। কনসোল নেইলে সাপোর্ট টিমের সাথে যোগাযোগ করতে হতে পারে। এজন্য UFW সক্রিয় করার আগে সর্বদা SSH নিয়ম যোগ করা উচিত।

ওয়েবসাইট খোলা যাচ্ছে না

যদিও Nginx অথবা Apache চলছে, 80 এবং 443 পোর্ট বন্ধ থাকলে সাইটে প্রবেশ করা যাবে না। sudo ufw status verbose দিয়ে পোর্টগুলো পরীক্ষা করুন। এছাড়াও ওয়েব সার্ভারটি যে পোর্টে শোনা চলছে তা ss -tulpn কমান্ডের মাধ্যমে নিশ্চিত করুন। DNS রেকর্ডগুলো সঠিকভাবে নির্দেশিত হয়েছে কিনা তাও নিশ্চিত করুন DNS পরিচালনা।

মেইল সার্ভিসগুলো কাজ করছে না

ইমেইল সার্ভারগুলো SMTP, IMAP, POP3 এবং নিরাপদ ভেরিয়েশনগুলির জন্য একাধিক পোর্ট ব্যবহার করে। 25, 465, 587, 993, 995 এর মতো পোর্টগুলো পরিস্থিতির উপর নির্ভর করে প্রয়োজন হতে পারে। যদি আপনি মেইল হোস্টিং সেবা ব্যবহার করেন তবে এই পোর্টগুলো আপনার সার্ভারে খুলতে হতে পারে না কর্পোরেট ইমেইল হোস্টিং।

আমি নিয়ম যোগ করেছি কিন্তু এটি কার্যকর হয়নি

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

2026 সালের জন্য UFW নিরাপত্তার সেরা অনুশীলন

আপডেট সার্ভার নিরাপত্তা, কেবল কয়েকটি পোর্ট বন্ধ করা থেকে আরও ব্যাপক। 2026 সালে একটি ভাল UFW কনফিগারেশন নিম্নলিখিত নীতিগুলোর দ্বারা সমর্থিত হওয়া উচিত:

  • সর্বনিম্ন অধিকার: শুধুমাত্র সত্যিই প্রয়োজনীয় পোর্টগুলো খুলুন।
  • আইডেন্টিটি অথেনটিকেশন নিরাপত্তা: SSH-এর জন্য কী ভিত্তিক অ্যাক্সেস ব্যবহার করুন।
  • IP সীমাবদ্ধতা: প্রশাসনিক পোর্টগুলোকে স্থির IP অথবা VPN-এর পিছনে রাখুন।
  • দেখা যায় এমনতা: UFW লগ এবং সিস্টেম লগ নিয়মিতভাবে পর্যবেক্ষণ করুন।
  • বিকল্প পরিকল্পনা: ভুল ফায়ারওয়াল নিয়মের জন্য কনসোল অ্যাক্সেস অথবা পুনরুদ্ধার প্রক্রিয়া রাখুন।
  • স্তরভিত্তিক নিরাপত্তা: UFW-কে WAF, SSL, আপডেট, ব্যাকআপ এবং অ্যাপ্লিকেশন নিরাপত্তার সাথে একসাথে ব্যবহার করুন।
  • ডকুমেন্টেশন: প্রতিটি নিয়ম কেন যোগ করা হয়েছিল তা টিমের মধ্যে রেকর্ড করুন।

ভাল কনফিগার করা একটি ফায়ারওয়াল, কার্যকর এবং নির্ভরযোগ্য হোস্টিং অবকাঠামোর একটি পরিপূরক অংশ। আপনার প্রকল্পের ট্রাফিক বৃদ্ধি পেলে কেবল পোর্ট নিয়মই নয়, রিসোর্স ব্যবহার, ব্যাকআপ, CDN, SSL এবং পর্যবেক্ষণ সমাধানগুলোও পরিকল্পনা করতে হবে হোস্টিং প্যাকেজ।

সচরাচর জিজ্ঞাস্য প্রশ্ন

UFW সক্রিয় করলে কি আমার সার্ভার সম্পূর্ণ নিরাপদ হবে?

না। UFW আক্রমণের পৃষ্ঠাকে ছোট করে এবং অপ্রয়োজনীয় পোর্টগুলো বন্ধ করে একটি গুরুত্বপূর্ণ নিরাপত্তা স্তর সরবরাহ করে; তবে একা এটি যথেষ্ট নয়। আপডেট, SSH কী, শক্তিশালী পাসওয়ার্ড, SSL, ব্যাকআপ এবং অ্যাপ্লিকেশন নিরাপত্তার সাথে একসাথে ব্যবহার করা উচিত।

UFW দিয়ে 80 এবং 443 পোর্ট খোলাই কি যথেষ্ট?

একটি ওয়েবসাইটের জন্য সাধারণত 80 এবং 443 পোর্ট যথেষ্ট। তবে SSH পরিচালনার জন্য 22 অথবা বিশেষ SSH পোর্টটিও নিরাপদভাবে খুলতে হবে। ডেটাবেস এবং প্রশাসনিক প্যানেল পোর্টগুলো সম্ভব হলে IP ভিত্তিকভাবে সীমাবদ্ধ করা উচিত।

SSH পোর্ট পরিবর্তন করা কি নিরাপত্তা বাড়ায়?

SSH পোর্ট পরিবর্তন করা স্বয়ংক্রিয় বটের চেষ্টা কমাতে পারে; তবে এটি প্রকৃত নিরাপত্তা ব্যবস্থারূপে দেখা উচিত নয়। আরো শক্তিশালী পদ্ধতি হলো SSH কী ব্যবহার করা, পাসওয়ার্ড প্রবেশ বন্ধ করা, IP সীমাবদ্ধতা প্রয়োগ করা এবং UFW সীমা অথবা fail2ban ব্যবহার করা।

UFW নিয়ম কি Docker কনটেইনারগুলিকেও নিয়ন্ত্রণ করে?

এটি সবসময় প্রত্যাশিতভাবে নিয়ন্ত্রণ নাও করতে পারে। Docker, পোর্ট প্রকাশ করার সময় iptables নিয়মগুলোকে সরাসরি পরিবর্তন করতে পারে। এজন্য Docker ব্যবহার করা সার্ভারগুলোতে docker ps আউটপুট, প্রকাশিত পোর্টগুলো এবং UFW নিয়মগুলো একসাথে পরীক্ষা করা উচিত।

UFW ব্যবহার করার সময় কি IPv6 সেটিংস চেক করা উচিত?

হ্যাঁ। আপনার সার্ভার IPv6 ঠিকানা পেলে UFW-এর IPv6 ট্রাফিকও পরিচালনা করছে কিনা তা নিশ্চিত করতে হবে। /etc/default/ufw ফাইলে IPV6=yes সেটিংটি পরীক্ষা করতে হবে এবং UFW স্ট্যাটাস আউটপুটে v6 নিয়মগুলি নিশ্চিত করতে হবে।

সারসংক্ষেপে, লিনাক্স সার্ভারে UFW দিয়ে ফায়ারওয়াল ব্যবস্থাপনা দ্রুত, পাঠযোগ্য এবং কার্যকরভাবে করা যেতে পারে। সঠিক শুরু নিয়ম, SSH নিরাপত্তা, ওয়েব পোর্টের নিয়ন্ত্রিত খোলা এবং লগ ট্র্যাকিংয়ের মাধ্যমে আপনার সার্ভারের আক্রমণের পৃষ্ঠাকে গুরুতরভাবে কমিয়ে আনা সম্ভব। যদি আপনি নতুন একটি প্রকল্প প্রকাশ করতে যাচ্ছেন, তবে নিরাপদ হোস্টিং অবকাঠামো, SSL এবং নিয়মিত রক্ষণাবেক্ষণের পদক্ষেপগুলো একসাথে পরিকল্পনা করলে দীর্ঘমেয়াদে আরও স্বাস্থ্যকর ফলাফল মিলবে। আপনার প্রয়োজন অনুযায়ী অবকাঠামো নির্বাচন করতে Hostragons-এর সমাধানগুলো পরীক্ষা করতে পারেন, নিরাপত্তা কনফিগারেশনকে আপনার বৃদ্ধির লক্ষ্য অনুযায়ী ধাপে ধাপে উন্নত করতে পারেন।

এই নিবন্ধটি শেয়ার করুন:

Hostragons টিম

হোস্টিং, সার্ভার এবং ডোমেইন নেম বিষয়ে আমাদের বিশেষজ্ঞ দলের হালনাগাদ নির্দেশিকা। আসুন, একসাথে আপনার প্রকল্পের জন্য সঠিক সমাধান খুঁজে বের করি।

আমাদের সাথে যোগাযোগ করুন