تصور کن مسئول یک کتابخانهٔ آنلاین شده‌ای: کتاب‌ها باید در دسترس باشند، پروندهٔ اعضا محرمانه بماند و تغییرهای مهم بی‌ردپا انجام نشوند. این دوره از همین داستان شروع می‌کند و قدم‌به‌قدم به رمزنگاری، کنترل دسترسی، امنیت شبکه و بررسی شواهد می‌رسد. هدف، حفظ کردن چهل فهرست فرمان نیست؛ می‌خواهیم برای هر کنترل بگوییم چه مسئله‌ای را حل می‌کند، چطور درستی‌اش را می‌سنجیم و اگر خراب شد چطور برمی‌گردیم.

مبنای برنامه، اهداف رسمی LPIC-3 Security نسخهٔ 3.0 با کد آزمون 303-300 است. این دورهٔ مستقل و تألیفی برای یادگیری طراحی شده است؛ ترجمهٔ صفحه‌به‌صفحهٔ جزوه‌ها، بانک سؤال آزمون یا دورهٔ رسمی LPI نیست. نسخهٔ سرفصل را در آغاز آمادگی آزمون دوباره از منبع رسمی بررسی کن.

برای چه کسی و با چه سرعتی؟#

باید بتوانی با shell کار کنی، کاربر و مجوز فایل را بشناسی، سرویس systemd را مدیریت کنی و مفهوم IP، subnet، route، DNS و TCP/UDP را بفهمی. آشنایی در حد LPIC-2 مناسب است؛ این دوره جای آموزش مقدماتی نصب لینوکس و شبکه نیست. اگر از یک اصطلاح مطمئن نیستی، همان جلسه مکث کن و یک مثال کوچک‌تر بساز.

برای بیشتر درس‌ها حدود ۶۰ تا ۹۰ دقیقه مطالعه و تمرین در نظر بگیر؛ آماده‌سازی PKI، VPN یا feed اسکنر می‌تواند زمان بیشتری بخواهد. «شب» ترتیب مطالعه است، نه الزام به تمام کردن هر آزمایش در یک ساعت. تمام چهل درس با تاریخ انتشار یکسان در دسترس‌اند؛ می‌توانی با سرعت خودت جلو بروی.

برای هر جلسه در دفترچه سه وضعیت جدا داشته باش: مطالعه‌شده، تمرین‌شده و آزموده‌شده. خواندن فرمان و دیدن خروجی واقعی یکسان نیستند. متن هر درس نتیجهٔ مورد انتظار را توضیح می‌دهد؛ این نتیجه‌ها ادعای اجرای تمام آزمایش‌های سیستمی روی زیرساخت نویسنده نیستند.

قرارداد آزمایشگاه#

سه VM یا Clone قابل بازگشت داشته باش. VM کم‌اختیار داخل container جای آزمایش کامل systemd، audit، bootloader یا MAC را نمی‌گیرد. حساب اصلیِ دارای sudo را نگه دار و یک حساب غیرمدیر به نام student برای آزمون مجوزها بساز. در Ubuntu از sudo adduser student و در Rocky از sudo useradd -m student و سپس sudo passwd student استفاده کن؛ این حساب را برای تمرین‌های کم‌اختیاری عضو گروه sudo یا wheel نکن.

ماشینمحیط مبناآدرس کارت Host-onlyکاربرد
srvUbuntu Server 24.04 LTS192.168.56.10/24سرویس، فایروال، VPN و بررسی میزبان
clientUbuntu Server 24.04 LTS192.168.56.20/24درخواست مجاز و مشاهده از بیرون
macRocky Linux 9192.168.56.30/24SELinux و نمونه‌های خانوادهٔ RHEL

شبکهٔ Host-only باید از LAN واقعی جدا باشد. کارت NAT جدا، فقط برای دریافت بسته و به‌روزرسانی است. DHCP، RA و ruleهای روتر آزمایشی را به شبکهٔ خانه یا محل کار وصل نکن. نام interface را با ip -br address پیدا کن؛ enp0s8 و enp0s9 در متن، نام نمونه‌اند.

نام سرویس library.example.test است. .test برای همین مثال محلی است و از CA عمومی گواهی آماده نمی‌گیرد. برای بعضی آزمایش‌ها از /etc/hosts یا curl --resolve استفاده می‌کنیم؛ DNS سیستم را بی‌دلیل تغییر نمی‌دهیم. CA آزمایشگاهی می‌تواند در یک Clone یا حساب جدا باشد؛ فقط فایل‌هایی که هر نقش نیاز دارد منتقل شوند، نه کل پوشهٔ PKI.

توسعهٔ توپولوژیقرارداد
IPv6 در شب ۳۰fd30:303::10/64 روی srv و fd30:303::20/64 روی client، فقط در lab
مسیریابی شب ۳۱کارت دوم srv برابر 192.168.57.1/24؛ backend برابر 192.168.57.20/24
OpenVPNشبکهٔ تونل 10.30.0.0/24
IPsecآدرس‌های داخلی 10.31.0.1/32 و 10.31.0.2/32
WireGuard10.32.0.1/30 و 10.32.0.2/30

این subnetها نباید با شبکهٔ واقعی میزبان تداخل داشته باشند. در شب ۳۱ می‌توانی Clone ماشین mac را backend کنی و یک کارت Host-only دوم به آن بدهی؛ نقش قبلی آن را با این آزمایش مخلوط نکن. برای اسکنر Greenbone یا Snort 3، VM جدا با منابع و نسخهٔ مطابق مستندات همان release آماده کن. Wi-Fi، USBGuard و TPM به سخت‌افزار یا قابلیت مجازی مناسب نیاز دارند؛ بدون آن، بخش مربوط فقط مطالعه و طراحی محسوب می‌شود.

آماده‌سازی و قواعد اجرای تمرین#

ابتدا نسخهٔ سیستم‌عامل، kernel، ابزار، وضعیت ساعت و شبکه را ثبت کن. بسته‌ها را از مخزن معتبر توزیع نصب کن؛ همهٔ اسکنرها را روی یک VM جمع نکن. ابزارهای پایهٔ Ubuntu می‌توانند با این مجموعه آماده شوند؛ بسته‌های تخصصی در هر درس معرفی شده‌اند:

sudo apt update
sudo apt install openssl gnupg curl openssh-server acl attr libcap2-bin \
  tcpdump tshark nmap lsof
mkdir -p ~/lpic303/evidence

نصب tshark ممکن است دربارهٔ مجوز capture کاربر عادی سؤال کند؛ برای این دوره، capture محدود با sudo کافی است و رابط گرافیکی Wireshark با کاربر عادی اجرا می‌شود. در Rocky، ابزارهای Apache و SELinux را در درس مربوط با بسته‌های همان توزیع آماده کن؛ نام service و مسیر config خانواده‌های Debian و RHEL را جابه‌جا نکن.

پیش از هر ماژول Snapshot و کنسول مستقل داشته باش. فرمان‌ها برای وضعیت آغازِ اعلام‌شده‌اند؛ آن‌ها را به‌صورت یک اسکریپت بزرگ روی سرور کاری paste نکن. هنگام تغییر SSH، فایروال یا boot، نشست فعلی را نگه دار و نتیجه را با یک ورود تازه از کلاینت بررسی کن. خطای مجوز را با 777 و خطای گواهی را با خاموش کردن بررسی TLS درمان نکن.

آزمایش‌های iptables، nftables و firewalld و هر VPN از Snapshot مستقل شروع می‌شوند. یک مدیر اصلی فایروال در هر VM داشته باش. ruleهای نمونه، جای قواعد میزبان دارای Docker، Kubernetes یا سرویس‌های واقعی دیگر را نمی‌گیرند. پیکربندی‌های دارای placeholder باید پیش از اجرا با مقادیر واقعی همان lab تکمیل شوند؛ نمونهٔ راز، credential عملیاتی نیست.

دفترچهٔ هر تمرین شامل سؤال اولیه، وضعیت قبل، تغییر، آزمون مثبت، آزمون منفی و راه برگشت باشد. خروجی واقعی را ذخیره کن؛ گاهی سکوت یک فرمان موفقیت است، گاهی نبودن شاهد. کلید، PSK، فایل shadow واقعی، capture خصوصی و خروجی خام ip xfrm state را در گزارش عمومی قرار نده.

تطبیق با اهداف آزمون#

وزن رسمی، اهمیت نسبی در آزمون را بیان می‌کند؛ تعداد درس‌ها کپیِ وزن‌ها نیست. جلسه‌های جمع‌بندی هم چند موضوع را دوباره به هم وصل می‌کنند. جدول زیر راهنمای پیدا کردن درس مربوط است؛ متن کامل هدف‌ها را در صفحهٔ رسمی LPI بخوان.

هدفوزنمسیر اصلی این دوره
331.1۵۲، ۴ و ۵؛ کلید، گواهی و چرخهٔ CA
331.2۴۶ و ۷؛ TLS و هویت دوطرفه
331.3۳۸ و ۹؛ ذخیره‌سازی رمز‌شده و بازیابی
331.4۵۱۰ تا ۱۲؛ DNS و اعتماد
332.1۵۱۳ تا ۱۶؛ محدودسازی میزبان و SSH
332.2۵۲۳ تا ۲۶؛ شواهد و بررسی میزبان
332.3۳۲۲؛ بودجهٔ منابع
333.1۳۱۷؛ مجوز، ACL و metadata
333.2۵۱۹ تا ۲۱؛ policy اجباری
334.1۴۲۸ و ۲۹؛ دید شبکه و هویت اتصال
334.2۴۳۶ و ۳۷؛ حسگر و ارزیابی
334.3۵۳۰ تا ۳۲؛ مسیر بسته و policy
334.4۴۳۳ تا ۳۵؛ تونل‌های امن
335.1۲۱، ۱۸، ۲۵ و ۲۷؛ مدل تهدید
335.2۳۳۸ و ۳۹؛ ارزیابی محدود و گزارش

شب ۴۰ مرور هر پانزده هدف و پروژهٔ تحویل است. سرفصل رسمی همچنان مرجع دامنه و وزن‌هاست؛ موضوع‌های افزودهٔ این دوره به معنی تغییر سرفصل LPI نیستند.

چه چیزهایی از جزوه‌ها نگه داشتیم و چه چیزهایی را تازه کردیم؟#

۳۵ PDF محلی lpic-303/ برای شناخت موضوع‌ها و سناریوهای اولیه بررسی شدند. آن‌ها ترکیبی از توضیح و workshop هستند و بعضی به CentOS/RHEL 6، Ubuntu 12.04، Samba 3 و نسل‌های قدیمی ابزار اشاره دارند. نام فایل‌ها در جدول زیر برای ردیابی منبع است؛ خود PDFها فایل دانلود عمومی دوره نیستند.

گروه جزوه‌هافایل‌های محلیاستفاده در دوره
رمزنگاری و ذخیره‌سازیGPG.pdf، GNUGPG_V0.3.pdf، GPG_Scenario_v.1.pdf، Hash_Commands_in_Linux_V0.1.pdf، Disk_Encryption.pdf، Luks_v0.3.pdfایدهٔ تمرین در شب‌های ۲، ۳، ۸ و ۹؛ مثال تازه با keyring جدا و تصویر دیسک خالی
مجوز و هویت میزبانACL_V0.1.pdf، Linux_Security_Module_v0.2.pdf، Selinux_scenrio_V0.3.pdf، Set_Password_Policy.pdf، John_V0.1.pdfشب‌های ۱۷ تا ۲۱ و ۲۷؛ ACL mask، label پایدار و ممیزی روی رمز ساختگی
مشاهدهٔ میزبانAIDE_V0.1.pdf، System Auditing_v0.1.pdf، chkrootkit.pdf، Linux_Malware _Detect.docx.pdf، lsof.pdf، OpenScap.pdf، Puppet_v.0.1.pdfشب‌های ۲۳ تا ۲۶ و عیب‌یابی storage؛ baseline قابل اعتماد و اصلاح محدود
شبکه و سرویسName_server_security_V0.1.pdf، Securing OpenSSH_v.0.1.pdf، Iptables_Logging.pdf، Firewalld_v1.pdf، ipsec.pdf، Nmap_V0.1.pdf، Snort.pdfDNS، SSH، فایروال، IPsec و حسگر؛ TSIG با SHA-256 و strongSwan به‌جای racoon
ارزیابیActive_Information_Gathering.docx.pdf، Passive_Information_Gathering.pdf، Openvas.pdfشب‌های ۳۷ تا ۳۹؛ scope آزمایشگاهی، feed و کیفیت گزارش
LDAP، Samba و SMTPScenario5_Working with ldap tools.pdf، LDAP_Over-SSL_TLS_V0.1.pdf، LDAP_with_SASL_v0.1.pdf، Intgrate_Ldap_Http.pdf، Scenario_9_Samba_And_LDAP_Intgration.pdf، Authenticated SMTP_V0.1.pdf، Authenticated SMTP_V0.1_Scenario.pdfزمینهٔ تکمیلی شب ۷؛ تفکیک TLS، SASL و مجوز برنامه؛ نصب کامل Samba/LDAP هدف این دوره نیست

GPG در شب ۳ یک مکمل مستقل است. تمرین عملی AppArmor، جزئیات PAM و sudo، نمونهٔ Puppet و firewalld هم برای فهم رفتار اضافه شده‌اند؛ سطح یا جایگاه رسمی آن‌ها در هر درس روشن است. X.509، SSH CA، systemd sandbox، resource control، FreeRADIUS، OpenVPN و WireGuard کمک می‌کنند برنامه فقط به موضوع‌های PDFهای قدیمی محدود نماند.

LUKS1، eCryptfs و iptables را به‌خاطر قدیمی‌تر بودن از مطالعهٔ آزمون حذف نمی‌کنیم. در مقابل، نمونه‌های HMAC-MD5، سرویس‌های SysV و فایل‌های config قدیمی را به‌عنوان تنظیم آمادهٔ محیط امروزی ارائه نمی‌کنیم. نسخه و راهنمای رسمی هر ابزار همراه درس آمده است.

فهرست مطالعه#

شروع و رمزنگاری#

میزبان و کنترل دسترسی#

شواهد و تهدیدها#

شبکه و تحویل#

چه زمانی دوره را تمام کرده‌ای؟#

وقتی بتوانی یک سرویس آزمایشگاهی را با هویت درست، دسترسی محدود، دادهٔ حفاظت‌شده و مسیر شبکهٔ روشن تحویل بدهی؛ تغییر یا شکست کنترل‌شده را با شواهد پیدا کنی؛ و از backup و کنسول مستقل برگردی. لازم نیست تمام ابزارها هم‌زمان فعال باشند. باید بتوانی برای انتخاب‌هایت دلیل بیاوری و محدودیت بخش‌های انجام‌نشده را صریح ثبت کنی.

برای ادامه، مسیرهای یادگیری و دفترچهٔ پروژهٔ خودت را کنار هم نگه دار. امنیت یک چک‌لیست یک‌بارمصرف نیست؛ تغییر نسخه، شبکه و کاربران باید آزمون‌های پذیرش را دوباره به جریان بیندازد.