SSD Nodes Learn 🎉 VPS $5.50/মাস থেকে
নির্দেশিকা Matt Connorদ্বারা Matt Connor · আপডেট করা হয়েছে 2026-08-13

FreeBSD-তে security update কীভাবে পরিচালনা করবেন

FreeBSD-এর base system patch করতে freebsd-update এবং vulnerable package খুঁজতে pkg audit লাগে। এই দুই tool-এর জন্য আলাদা feed নজরে না রাখলে system-এর অর্ধেক unpatched থাকে।

FreeBSD কীভাবে নিরাপত্তা আপডেট পরিচালনা করে

FreeBSD নিরাপত্তা আপডেটের জন্য দুটি পৃথক টুল ব্যবহার করে, কারণ FreeBSD server-এর দুটি পৃথক অংশ রয়েছে। Base system বলতে release-এর সঙ্গে সরবরাহ করা kernel এবং userland বোঝায়; এটি freebsd-update দিয়ে patch করা হয়। এর ওপর আপনি যা install করেন, সবই package; package-গুলো pkg দিয়ে patch করা হয়। একটি চালিয়ে অন্যটি বাদ দিলে machine-এর অর্ধেক unpatched থেকে যায়, এবং system আপনাকে এ বিষয়ে জানায় না।

SSD Nodes FreeBSD image সরবরাহ করে না। আমাদের plan-গুলো Linux চালায়। তবুও এই post প্রাসঙ্গিক, কারণ পাঠকগোষ্ঠীর মধ্যে সম্পূর্ণ মিল আছে: যারা আমাদের Ubuntu এবং Debian server চালান, তারা firewall-এ বা উত্তরাধিকারসূত্রে পাওয়া একমাত্র machine-এ FreeBSD-ও চালান। এই বিভক্ত patching model-ই Linux admin-দের জন্য সমস্যার কারণ হয়। তাই বিষয়টি লিখে রাখা দরকার। নিচের প্রতিটি command, advisory format এবং support date August 2026-এ FreeBSD security page এবং project-এর manual page-এর সঙ্গে যাচাই করা হয়েছে।

Command চালানোর আগে একটি কথা। FreeBSD base system-এ sudo install করে না। এখানে সব কাজের জন্য root প্রয়োজন। su - ব্যবহার করুন, অথবা আগে package থেকে sudo বা doas install করুন।

বেস সিস্টেম এবং প্যাকেজ দুটি আলাদা জগৎ

Ubuntu-তে, apt পুরো মেশিনের মালিকানা ধরে রাখে। kernel, openssl, nginx এবং আপনার নিজস্ব tool—সবই একটি tool থেকে .deb file হিসেবে আসে, আর apt upgrade এগুলোকে একসঙ্গে আপডেট করে।

FreeBSD এই ব্যবস্থাকে দুটি ভাগে বিভক্ত করে। base system একটি unit হিসেবে build হয় এবং একটি unit হিসেবেই version নির্ধারিত হয়: 15.1-RELEASE-p3 হলো একটি একক সংখ্যা, যা kernel, C library, sshd এবং /usr/lib-এ থাকা OpenSSL copy-কে অন্তর্ভুক্ত করে। এর কোনো অংশ pkg থেকে আসে না। অন্য সবকিছু /usr/local-এর অধীনে থাকে, ports tree থেকে build করা binary package হিসেবে আসে এবং এর নিজস্ব version থাকে।

তাই একটি মেশিনে OpenSSL-এর দুটি copy থাকতে পারে: /usr/lib-এর base copy, যা শুধু freebsd-update দ্বারা patch করা হয়, এবং /usr/local/lib-এর package copy, যা শুধু pkg দ্বারা patch করা হয়। কোনো program কোন copy ব্যবহার করবে, তা নির্ভর করে program-টি কোন copy-এর বিরুদ্ধে link করা হয়েছে তার ওপর। Packages থেকে install করা software সাধারণত package copy-এর সঙ্গে link করা থাকে। একটিকে patch করলে অন্যটির কোনো পরিবর্তন হয় না।

এই তিনটি command আপনার বর্তমান অবস্থান জানায়:

freebsd-version -u
freebsd-version -k
uname -r

freebsd-version -u বর্তমানে install করা userland-এর patch level দেখায়। freebsd-version -k বর্তমানে install করা kernel-এর patch level দেখায়। freebsd-version(1) স্পষ্ট করে জানায় কেন এটি uname-এর মতো নয়: “যদি একটি নতুন kernel install করা হয়ে থাকে কিন্তু system এখনও reboot না করা হয়, তাহলে freebsd-version নতুন kernel-এর version এবং patch level দেখাবে।” uname -r এই মুহূর্তে চলমান kernel দেখায়। এছাড়াও freebsd-version -r আছে, যা চলমান kernel দেখায় কিন্তু “environment variable দ্বারা প্রভাবিত হয় না”। jail-এর ভিতরে এটি গুরুত্বপূর্ণ, কারণ সেখানে UNAME_r-এ প্রায়ই অন্য কোনো মান set করা থাকে।

নিরাপত্তা পরামর্শ এবং Errata নোটিশ

FreeBSD Security Team দুই ধরনের নোটিশ প্রকাশ করে। দুটির অর্থ আলাদা।

একটি নিরাপত্তা পরামর্শ base system-এর কোনো নিরাপত্তা দুর্বলতা নিয়ে প্রকাশিত হয়। এর identifier দেখতে FreeBSD-SA-26:55.elf-এর মতো: প্রথমে SA অক্ষর, তারপর দুই অঙ্কের বছর, সেই বছরে ক্রমবর্ধমান সংখ্যা, এবং শেষে প্রভাবিত component। FreeBSD-SA-26:52.if_wg এবং FreeBSD-SA-26:50.kqueue দুটিই 2026-07-29 তারিখে প্রকাশিত হয়েছিল। সম্পূর্ণ তালিকা FreeBSD advisories page-এ আছে।

একটি Errata নোটিশ এমন correctness বা stability সমস্যা নিয়ে প্রকাশিত হয়, যা security impact ছাড়াই release branch-এ অন্তর্ভুক্ত করা প্রয়োজন। একই কাঠামো থাকে, তবে SA-এর জায়গায় EN ব্যবহৃত হয়: FreeBSD-EN-26:19.zfs, FreeBSD-EN-26:18.tzdata। Time zone data update এর একটি প্রচলিত উদাহরণ। পুরোনো time zone data ব্যবহার করে কেউ আপনাকে attack করতে পারে না, কিন্তু fix প্রয়োগ না করা পর্যন্ত আপনার timestamp ভুল থাকবে। Errata FreeBSD errata notices page-এ তালিকাভুক্ত থাকে।

উভয় ধরনের নোটিশ Security Officer-এর PGP (pretty good privacy) key দিয়ে signed হয় এবং security.FreeBSD.org-এ archive করা থাকে। উভয় ধরনের নোটিশই freebsd-update ব্যবহার করে আপনার machine-এ পৌঁছে দেওয়া হয়।

এখানেই Linux admin-দের জন্য গুরুত্বপূর্ণ বিষয়টি আছে। কোনো ধরনের নোটিশই packages-এর জন্য প্রযোজ্য নয়। Security page-এ বিষয়টি স্পষ্টভাবে বলা আছে: FreeBSD Ports Collection-এর সমস্যাগুলো "FreeBSD VuXML document-এ আলাদাভাবে অন্তর্ভুক্ত হয়"। nginx package-এর কোনো remote vulnerability কখনও SA number পাবে না। আপনি যদি শুধু advisory feed monitor করেন, তাহলে সেটির খবর কখনও জানতে পারবেন না।

FreeBSD security update-এর খবর কীভাবে পাবেন?

যোগ দেওয়ার জন্য তালিকাটি হলো freebsd-security-notifications। এটি moderated এবং low volume। এই তালিকায় advisory ও errata notice সরাসরি প্রকাশ করা হয়। lists.freebsd.org-এ subscribe করুন।

freebsd-announce-ও moderated। এখানে release announcement-এর পাশাপাশি advisory প্রকাশ করা হয়। তাই সব ধরনের খবরের জন্য একটি তালিকা চাইলে এটি ব্যবহার করতে পারেন। freebsd-security হলো discussion list। এটি পড়ার জন্য উপযোগী। তবে patch প্রয়োজন—এ খবর জানার জন্য এই তালিকার ওপর নির্ভর করবেন না।

এই তালিকাগুলোতে শুধু base system-এর খবর প্রকাশিত হয়। Package vulnerability কখনো mail-এর মাধ্যমে আসে না। সেগুলো জানতে একটি command চালান।

pkg audit এবং এর পেছনের database

VuXML, অর্থাৎ Vulnerabilities and Exposures Markup Language, ports এবং packages-এ থাকা security সমস্যার FreeBSD project-এর record। প্রতিটি entry-তে আক্রান্ত package, vulnerable version range, CVE (common vulnerabilities and exposures) identifier এবং সংক্ষিপ্ত বিবরণ থাকে। সম্পূর্ণ তালিকাটি VuXML index-এ package, CVE বা date অনুযায়ী সাজানো অবস্থায় দেখা যায়।

pkg audit এটি পড়ার tool:

pkg audit -F

চেক করার আগে -F database-এর নতুন copy fetch করে। এটি প্রতিবার ব্যবহার করুন। -F ছাড়া আপনি machine-এ আগে থেকে থাকা copy-এর সঙ্গে মিলিয়ে দেখছেন। সেই copy কয়েক মাস পুরোনো হতে পারে। তাই clean result-এর কোনো অর্থ থাকে না। এই command প্রতিটি installed package version-কে প্রতিটি VuXML entry-এর সঙ্গে তুলনা করে। প্রতিটি match-এর সঙ্গে CVE number এবং VuXML page-এর link দেখায়। শেষে একটি count line দেখায়, কতগুলি installed package-এ কতগুলি সমস্যা পাওয়া গেছে।

pkg-audit(8)-এর আরও দুটি flag জানা দরকার। pkg audit -r “vulnerable packages-এর ওপর নির্ভরশীল package-গুলিও দেখায়, যেগুলোও সম্ভাব্যভাবে vulnerable হতে পারে।” এর মাধ্যমে বোঝা যায়, একটি vulnerable library গুরুত্বপূর্ণ কেন: installed ছয়টি জিনিস সেটির সঙ্গে link করতে পারে। pkg audit -R একই result JSON বা অন্য machine-readable format-এ দেখায়। monitoring check-এ result পাঠাতে এই format ব্যবহার করা হয়।

pkg package-টি /usr/local/etc/periodic/security/410.pkg-audit-এ একটি periodic script install করে। এটি daily security check-এর অংশ হিসেবে চলে এবং result root-কে mail করে। /etc/periodic.conf-এ একটি line আছে কি না দেখে এটি সক্রিয় আছে নিশ্চিত করুন:

daily_status_security_pkgaudit_enable="YES"

এই daily mail-ই Ubuntu-র unattended-upgrades ব্যবহারের অভ্যাসের সঙ্গে FreeBSD-এর সবচেয়ে কাছাকাছি বিষয়। তবে পার্থক্যটিই মূল কথা: unattended-upgrades আপনি ঘুমানোর সময় fix install করে, আর pkg audit শুধু জানায় যে একটি fix প্রয়োজন। pkg audit report করে। এটি কখনো patch প্রয়োগ করে না। Stock FreeBSD system-এ আপনার অনুমতি ছাড়া কোনো security update install হয় না।

একটি দুর্বল package ঠিক করা

pkg update
pkg upgrade

FreeBSD package repository-তে শুধু security update-এর জন্য আলাদা pocket নেই। Ubuntu শুধু noble-security থেকে package নিতে পারে এবং অন্য সব package আগের অবস্থায় রাখতে পারে। FreeBSD-তে এর সমতুল্য ব্যবস্থা নেই। তাই একটি দুর্বল package ঠিক করতে repository বর্তমানে যে version দেয়, সেটিই নিতে হয়; এর সঙ্গে পরিবর্তিত dependency-গুলোও নিতে হতে পারে। Package patching-কে background job হিসেবে নয়, একটি change হিসেবে পরিকল্পনা করুন।

আপনি কোন repository branch ব্যবহার করছেন, তার ওপর আপনার কাছে fix কত দ্রুত পৌঁছাবে তা নির্ভর করে। Default হলো quarterly branch। handbook-এ এটিকে "আরও পূর্বানুমানযোগ্য ও স্থিতিশীল অভিজ্ঞতা" দেওয়া branch হিসেবে বর্ণনা করা হয়েছে, কারণ এটি শুধু non-feature update গ্রহণ করে। latest branch সবকিছুর সর্বশেষ version নেয়। তাই pkg audit -F কোনো package-কে vulnerable হিসেবে দেখালে এবং pkg upgrade-এ করার মতো কিছু নেই দেখালে বুঝতে হবে, fix এখনও আপনার branch-এ পৌঁছায়নি। এই কারণেই বিভ্রান্তিকর ফল দেখা যায়।

কোনো machine-কে latest branch-এ নিতে হলে সিস্টেমের সঙ্গে আসা repository file-টি copy করে সেই copy সম্পাদনা করুন:

mkdir -p /usr/local/etc/pkg/repos
cp /etc/pkg/FreeBSD.conf /usr/local/etc/pkg/repos/FreeBSD.conf

copy করা file-এর url line-এ quarterly পরিবর্তন করে latest করুন। এরপর pkg update -f চালিয়ে নতুন catalogue আনুন। Repository name মনে করে নিজে টাইপ না করে file-টি copy করুন। /etc/pkg/FreeBSD.conf-এর ভেতরের নামটিই আপনার system বাস্তবে ব্যবহার করে। আর /usr/local/etc/pkg/repos-এর অধীনে থাকা file কেবল একই নামের repository-কে override করে; নামটি হুবহু মেলাতে হবে।

বেস সিস্টেমের প্যাচ প্রয়োগ করা

freebsd-update fetch
freebsd-update install

fetch আপনার বর্তমান release-এর জন্য প্যাচ download করে এবং কোন files পরিবর্তন করবে তার তালিকা দেখায়। করার মতো কিছু না থাকলে এটি No updates needed to update system to 15.1-RELEASE-p3. দেখিয়ে বন্ধ হয়ে যায়। করার মতো কিছু থাকলে এটি install command চালাতে বলে শেষ হয়। freebsd-update install চালানো পর্যন্ত কোনো পরিবর্তন প্রয়োগ হয় না, তাই fetch যেকোনো সময় নিরাপদে চালানো যায়।

freebsd-update(8) ALPHA, BETA, RC এবং RELEASE version-এর জন্য binary update সরবরাহ করে; PRERELEASE, STABLE বা CURRENT-এর জন্য নয়। আপনি যদি stable/15 অনুসরণ করেন, তাহলে source থেকে build করেন এবং এই tool আপনার কাজে লাগবে না।

download স্বয়ংক্রিয় করুন, কিন্তু install manual রাখুন। /etc/crontab-এর জন্য handbook-এ দেওয়া line হলো:

@daily                                  root    freebsd-update cron

freebsd-update cron 1 থেকে 3600 seconds-এর মধ্যে একটি random সময় অপেক্ষা করে, তারপর fetch-এর মতোই update download করে এবং কোনো update অপেক্ষমাণ থাকলে root-কে mail পাঠায়। এই random অপেক্ষার উদ্দেশ্য হলো Internet-এর প্রতিটি FreeBSD machine যেন একই second-এ update mirror-এ request না পাঠায়।

Output-এর দুটি বিষয় মানুষকে বিভ্রান্ত করে। Source tree না থাকা server-এ src component not installed, skipped স্বাভাবিক এবং এটি কোনো error নয়। Components-এর set /etc/freebsd-update.conf-এর একটি Components line দ্বারা নিয়ন্ত্রিত হয়। Available choices হলো src, world এবং kernel

Install ব্যর্থ হলে freebsd-update rollback সর্বশেষ install করা update uninstall করে। ZFS root ব্যবহার করলে আগে একটি boot environment তৈরি করে আরও নিরাপদ ব্যবস্থা নিতে পারেন:

bectl create pre-patch
freebsd-update fetch install

Patched system boot না হলে loader menu থেকে পুরনো boot environment নির্বাচন করুন। এতে আপনি আগের অবস্থায় ফিরে যাবেন। root filesystem হিসেবে ZFS ব্যবহার করা-র একটি বাস্তব সুবিধা হলো এই fallback ব্যবস্থা। দুইটি environment আলাদা না হওয়া পর্যন্ত এতে প্রায় কোনো অতিরিক্ত disk space লাগে না।

আমার FreeBSD release কি এখনও সমর্থিত?

প্রতিটি release নির্দিষ্ট সময়ের জন্য সমর্থিত থাকে। এই সময়সীমা security page-এ branch table হিসেবে প্রকাশ করা হয়। August 2026 অনুযায়ী table-এ রয়েছে:

  • releng/15.1, অর্থাৎ 15.1-RELEASE, 31 March 2027 পর্যন্ত
  • releng/15.0, অর্থাৎ 15.0-RELEASE, 30 September 2026 পর্যন্ত
  • releng/14.4, অর্থাৎ 14.4-RELEASE, 31 December 2026 পর্যন্ত
  • stable/15, 31 December 2029 পর্যন্ত
  • stable/14, 30 November 2028 পর্যন্ত

Point release-এর সমর্থনকাল সংক্ষিপ্ত হয়। এই post লেখার প্রায় সাত সপ্তাহ পর 15.0-RELEASE-এর সমর্থন শেষ হবে, কারণ 15.1 প্রকাশিত হওয়ার পর এর জন্য নির্দিষ্ট শেষ তারিখ নির্ধারিত হয়েছে। Stable branch-গুলো বহু বছর স্থায়ী হয়। এগুলো source branch, যেগুলো freebsd-update পরিবেশন করে না।

freebsd-version -u চালিয়ে আপনার release পরীক্ষা করুন এবং table-এর সঙ্গে মিলিয়ে দেখুন। freebsd-update আপনাকে সতর্কও করে। তারিখ ঘনিয়ে এলে fetch দেখায়:

WARNING: FreeBSD 15.0-RELEASE is approaching its End-of-Life date.
It is strongly recommended that you upgrade to a newer
release within the next 2 months.

তারিখ পেরিয়ে গেলে সতর্কবার্তাটি WARNING: FreeBSD 15.0-RELEASE HAS PASSED ITS END-OF-LIFE DATE. হয়ে যায়। Unsupported release কাজ করতে থাকে। তবে এটি আর security advisory পায় না। এর অর্থ, পরবর্তী base vulnerability স্থায়ীভাবে আপনার দায়িত্বে থেকে যাবে।

নতুন release-এ upgrade করার ধাপ হলো freebsd-update -r 15.1-RELEASE upgrade, এরপর freebsd-update install, তারপর reboot, এরপর আবার freebsd-update install, তারপর নতুন library-এর সঙ্গে প্রতিটি package পুনরায় install করতে pkg-static upgrade -f, এবং শেষে freebsd-update install। Handbook-এ উল্লেখ আছে, কোনো library version number পরিবর্তিত হয়েছে কি না তার ওপর নির্ভর করে install phase তিনটির বদলে মাত্র দুইটি হতে পারে। একটি maintenance window নির্ধারণ করুন এবং শুরু করার আগে FreeBSD 15 server setup guide পড়ুন।

Reboot, নাকি শুধু service restart যথেষ্ট?

FreeBSD এটি একটি তুলনার মাধ্যমে নির্ধারণ করে:

freebsd-version -k
uname -r

freebsd-version -k হলো disk-এ থাকা kernel। uname -r হলো memory-তে থাকা kernel। string ভিন্ন হলে নতুন kernel install হয়েছে, কিন্তু সেটি বর্তমানে চালু নেই। তাই reboot করুন। string একই হলে patchটি kernel পরিবর্তন করেনি। সে ক্ষেত্রে reboot করে কোনো লাভ হবে না।

userland patch-এর ক্ষেত্রে patched code ব্যবহার করে এমন service restart করুন। /usr/lib-এর base OpenSSL-এ কোনো fix প্রয়োগ করা হলেও তিন সপ্তাহ আগে চালু হওয়া কোনো sshd-এর জন্য তা কার্যকর হবে না, যদি processটি এখনও তার address space-এ পুরোনো library mapped করে রাখে। disk-এর fileটি নতুন। চলমান processটি নতুন নয়।

service sshd restart

একই নিয়ম package-এর ক্ষেত্রেও প্রযোজ্য। pkg upgrade disk-এ থাকা binary প্রতিস্থাপন করে, কিন্তু চলমান process পুরোনো binaryটি open করে রাখে। তাই service nginx restart হলো সেই ধাপ, যা fix-টিকে বাস্তবে কার্যকর করে।

base system-এ Debian-এর needrestart-এর সমতুল্য কোনো ব্যবস্থা নেই। তাই কেউ আপনাকে prompt দেখায় না এবং কোনো তালিকাও সংরক্ষণ করা হয় না। কোন service কোন patched library link করে তা নিজে track করুন, অথবা base library-তে প্রভাব ফেলে এমন প্রতিটি patch-এর পরে reboot করুন। configuration version control-এ থাকা server-এ reboot একটি নিয়মিত operation। patch প্রয়োগ হয়েছে মনে করে বাস্তবে না থাকার চেয়ে এটি অনেক কম ব্যয়বহুল।

jail চালানো মেশিনে patch প্রয়োগ

একটি jail host kernel শেয়ার করে। তাই kernel-সংক্রান্ত advisory host-এর সমস্যা এবং ওই মেশিনের প্রতিটি jail তা উত্তরাধিকারসূত্রে পায়। Host-এ patch প্রয়োগ করে reboot করুন। এতে সব jail-এর জন্য kernel-সংক্রান্ত কাজ সম্পন্ন হয়। প্রতিটি jail-এর ভেতরের userland একটি পৃথক installation এবং এর নিজস্ব patch level থাকে। freebsd-version -j <jail> host থেকে সেই তথ্য দেখায়। Jail-এর ভেতরের package-গুলোও পৃথক। pkg -j <jail> audit -F jail-এ প্রবেশ না করেই সেগুলোর audit করে। Shared kernel এবং পৃথক userland-এর এই কাঠামোগত বিভাজনই jail-এর সঙ্গে Docker container-এর তুলনা কীভাবে করা হয় তা নির্ধারণ করে।

Ubuntu-সংক্রান্ত অনুবাদ

প্রতিটি FreeBSD অভ্যাসের একটি সমতুল্য পদ্ধতি আছে। তাই আপনি দুই দিকেই একই রুটিন অনুসরণ করতে পারবেন।

  • বেস সিস্টেমের patch: প্রথমে freebsd-update fetch, তারপর freebsd-update install। Ubuntu-তে apt update && apt upgrade চালান। এটি একসঙ্গে বেস সিস্টেম এবং অন্যান্য সবকিছু আপডেট করে।
  • Third-party software: FreeBSD-তে pkg update && pkg upgrade। Ubuntu-তে আবার apt
  • পরিচিত vulnerability পরীক্ষা: FreeBSD-তে pkg audit -F। Ubuntu 24.04-এ এর সবচেয়ে কাছের command হলো pro security-status। এটি Expanded Security Maintenance content-সহ installed package-এর security update দেখায়।
  • স্বয়ংক্রিয় installation: Ubuntu-তে unattended-upgrades আপনার হয়ে security update install করে। FreeBSD-তে এর সমতুল্য কোনো built-in ব্যবস্থা নেই। তাই আপনি হাতে install করার সময় freebsd-update cron download করে email পাঠায়।
  • Advisory feed: freebsd-security-notifications-এ FreeBSD-SA এবং FreeBSD-EN item থাকে। ubuntu-security-announce-এ Ubuntu Security Notice থাকে।
  • Vulnerability database: FreeBSD port ও package-এর জন্য VuXML ব্যবহৃত হয়। Ubuntu package-এর জন্য Ubuntu CVE tracker ব্যবহৃত হয়।
  • Reboot পরীক্ষা: FreeBSD-তে uname -r-এর বিপরীতে freebsd-version -k চালান। Ubuntu-তে /var/run/reboot-required উপস্থিত আছে কি না দেখুন।
  • Support window: FreeBSD security page-এর branch table দেখুন। Ubuntu-তে release schedule এবং pro security-status দেখুন।

দুই সিস্টেমেই মূল রুটিন একই: feed-এ subscribe করুন, নির্ধারিত সময়সূচি অনুযায়ী audit চালান, তারপর কী install করবেন এবং কখন restart করবেন তা নির্ধারণ করুন। FreeBSD-তে আপনাকে রুটিনের দ্বিতীয় অংশটি নিজেকেই স্পষ্টভাবে করতে হয়, কারণ FreeBSD এটি আপনার হয়ে করে না। সার্ভার platform হিসেবে Linux ও FreeBSD-এর বিস্তৃত তুলনা Linux ও FreeBSD-এর বিস্তৃত তুলনা দেখায়, workload এক সিস্টেম থেকে অন্য সিস্টেমে নিলে আর কী কী পরিবর্তন হয়।

FAQ

freebsd-update কি আমার packages-ও patch করে?

না। freebsd-update শুধু base system কভার করে, অর্থাৎ kernel এবং release-এর সঙ্গে প্রকাশিত userland। /usr/local-এর অধীনে ইনস্টল করা software packages থেকে আসে, এবং সেগুলো pkg upgrade দিয়ে patch করা হয়। কোন ইনস্টল করা packages-এ পরিচিত vulnerability আছে তা জানতে pkg audit -F চালান। কারণ base advisory-গুলোতে সেগুলোর উল্লেখ থাকে না এবং security mailing list-গুলোও সেগুলো ঘোষণা করে না।

FreeBSD update-এর পরে reboot প্রয়োজন কি না কীভাবে বুঝব?

freebsd-version -k-এর ফল uname -r-এর সঙ্গে তুলনা করুন। প্রথমটি disk-এ ইনস্টল করা kernel দেখায়, যার মধ্যে সদ্য লেখা হলেও এখনও boot না হওয়া kernel-ও থাকতে পারে। দ্বিতীয়টি বর্তমানে চলমান kernel দেখায়। String আলাদা হলে reboot প্রয়োজন। String একই হলে patch শুধু userland-এ প্রয়োগ হয়েছে। সে ক্ষেত্রে সংশ্লিষ্ট service restart করুন, যেমন service sshd restart। কারণ কোনো চলমান process restart না হওয়া পর্যন্ত পুরোনো library mapped অবস্থায় রাখে।

Security Advisory এবং Errata Notice-এর মধ্যে পার্থক্য কী?

FreeBSD-SA-26:55.elf-এর মতো একটি Security Advisory base system-এর security vulnerability সংশোধন করে। FreeBSD-EN-26:18.tzdata-এর মতো একটি Errata Notice security impact ছাড়া correctness বা stability সমস্যা সংশোধন করে, যেমন পুরোনো time zone data। উভয়ই year, colon, sequence number, component pattern ব্যবহার করে। উভয়ই Security Officer-এর স্বাক্ষরযুক্ত এবং freebsd-update দিয়ে সরবরাহ করা হয়। তবে কোনোটিই ports বা packages থেকে ইনস্টল করা software কভার করে না।

FreeBSD-এর জন্য unattended-upgrades-এর সমতুল্য কিছু আছে কি?

Base system-এ নেই। freebsd-update cron pending base patch download করে এবং root-কে mail পাঠায়, কিন্তু সেগুলো কখনও ইনস্টল করে না। pkg যে periodic script ইনস্টল করে, সেটি প্রতিদিন pkg audit চালিয়ে ফলাফল mail করে, কিন্তু কোনো কিছু upgrade করে না। Unattended installation আপনাকেই cron job দিয়ে তৈরি করতে হবে। FreeBSD package upgrade security-only backport-এর পরিবর্তে সর্বশেষ version ইনস্টল করে। তাই অধিকাংশ admin mail পড়ে হাতে করে installation করেন।

আমার FreeBSD release এখনও supported কি না কীভাবে পরীক্ষা করব?

Userland version জানতে freebsd-version -u চালান। এরপর সেটি FreeBSD security page-এর supported branch table-এর সঙ্গে তুলনা করুন। Point release-এর support window সংক্ষিপ্ত। August 2026 অনুযায়ী, 15.0-RELEASE-এর মেয়াদ 30 September 2026-এ শেষ হবে, আর 15.1-RELEASE 31 March 2027 পর্যন্ত চলবে। তারিখ এগিয়ে এলে freebsd-update fetch সতর্ক করবে। তারিখ পার হয়ে গেলে এটি একটি line দেখাবে যে release HAS PASSED ITS END-OF-LIFE DATE। এরপর থেকে কোনো নতুন advisory আপনার ক্ষেত্রে প্রযোজ্য হবে না।

#freebsd#security#patching#advisories#pkg