راهنمای گامبهگام سرور و لینوکس
36 آموزش عملی برای کارهای واقعی سرور: بکاپ دیتابیس، کانفیگ nginx، SSL، امنیت و استقرار. هر مرحله دستور یا کانفیگ آمادهٔ کپی دارد.
دیسک و ذخیرهسازی
ساخت swap روی سرور لینوکس (رفع کمبود رم و خطای Out of Memory)
ساخت فایل swap ۲ گیگابایتی، دائمی کردن آن در fstab و تنظیم swappiness برای سرورهای کمرم.
آزاد کردن فضای دیسک در سرور لینوکس (وقتی دیسک پر شده)
پیدا کردن پوشهها و فایلهای حجیم با du و ncdu، پاک کردن لاگها، کش apt، journald و داکر بهصورت امن.
Systemd
SSH و انتقال فایل
ورود به سرور با کلید SSH و امنسازی SSH (بدون رمز عبور)
ساخت کلید ed25519، کپی به سرور، فایل config برای اتصال سریع، غیرفعال کردن رمز و ورود root، و دسترسی از طریق jump host.
بکاپ فایلهای سرور با rsync و cron
بکاپ افزایشی از فایلهای سایت، بکاپ با تاریخ به روش hard-link، ارسال به سرور راه دور با SSH و زمانبندی خودکار.
DevOps
نصب Docker و Docker Compose روی اوبونتو (روش رسمی)
نصب Docker Engine از مخزن رسمی، اجرا بدون sudo، تنظیم لاگ و اجرای اولین کانتینر.
آموزش crontab و نمونههای آماده زمانبندی
ساختار پنجقسمتی cron، نمونههای کاربردی، اشتباهات رایج (مسیر، محیط، درصد) و عیبیابی اجرا نشدن کار.
استقرار Next.js با Docker، nginx و SSL
Dockerfile چندمرحلهای، docker compose، reverse proxy با nginx، گواهی SSL و اسکریپت بهروزرسانی بدون توقف طولانی.
دیتابیس و بکاپ
بکاپ گرفتن از MySQL با mysqldump (کامل و مرحلهبهمرحله)
بکاپ منطقی از یک یا همهٔ دیتابیسها، بکاپ فشرده با تاریخ، فقط ساختار، یک جدول و بررسی سالم بودن بکاپ.
بکاپ خودکار روزانه از MySQL با cron و حذف بکاپهای قدیمی
اسکریپت آمادهٔ بکاپ با چرخش (rotation)، زمانبندی با cron، ثبت لاگ و کپی بکاپ روی سرور دیگر.
ریستور و انتقال دیتابیس MySQL به سرور جدید
بازگرداندن بکاپ، انتقال مستقیم دیتابیس بین دو سرور با SSH، رفع خطاهای رایج DEFINER و charset و بررسی نهایی.
ساخت کاربر و تنظیم دسترسی در MySQL (شامل کاربر بکاپ)
ساخت کاربر برنامه با حداقل دسترسی، کاربر مخصوص بکاپ، مجاز کردن اتصال از راه دور و تغییر یا حذف کاربر.
بکاپ و ریستور MySQL داخل Docker و Docker Compose
گرفتن mysqldump از کانتینر MySQL، ریستور، بکاپ volume و زمانبندی خودکار برای دیتابیسی که با Docker اجرا میشود.
بازیابی MySQL تا لحظهٔ دلخواه با binlog
فعالسازی لاگ باینری و بازگرداندن دیتابیس تا لحظهای قبل از یک DELETE یا DROP اشتباهی.
کانفیگ پایه my.cnf برای MySQL روی سرور کوچک
تنظیم innodb_buffer_pool_size، تعداد اتصالها، charset و لاگ کوئریهای کند برای عملکرد بهتر.
بکاپ گرفتن از PostgreSQL با pg_dump و pg_dumpall
بکاپ متنی و فرمت custom، بکاپ موازی دیتابیس بزرگ، بکاپ نقشها و اتصال بدون رمز با pgpass.
بکاپ خودکار PostgreSQL با اسکریپت، cron و حذف بکاپهای قدیمی
اسکریپت آمادهٔ بکاپ روزانه با pg_dump به فرمت custom، چرخش بکاپها و ارسال به سرور دیگر.
ریستور PostgreSQL و انتقال دیتابیس به سرور جدید
بازگرداندن بکاپ با pg_restore و psql، انتقال کاربران، ریستور موازی و رفع خطاهای رایج مالکیت و extension.
بکاپ گرفتن از Redis و MongoDB
گرفتن snapshot از Redis (RDB و AOF)، بکاپ فشرده از MongoDB با mongodump و ریستور آنها.
اسکریپت بکاپ کامل سایت: فایل و دیتابیس
اسکریپت آمادهٔ bash که پوشهٔ سایت و دیتابیس MySQL را فشرده میکند، بکاپهای قدیمی را پاک میکند و روی سرور دیگر میفرستد.
وبسرور و SSL
نصب nginx و کانفیگ پایه برای یک سایت استاتیک
نصب nginx روی اوبونتو، ساخت server block، فعالسازی سایت، تست کانفیگ و باز کردن پورتها در فایروال.
کانفیگ nginx reverse proxy برای Node.js و Next.js
قرار دادن nginx جلوی برنامهای که روی یک پورت محلی اجرا میشود، ارسال هدرهای درست و پشتیبانی از WebSocket.
SSL رایگان روی nginx با certbot و ریدایرکت به HTTPS
دریافت گواهی رایگان، تنظیم خودکار HTTPS، ریدایرکت http به https، HSTS و بررسی تمدید خودکار.
کانفیگ nginx برای PHP-FPM (لاراول و وردپرس)
ساخت server block برای PHP با php-fpm، تنظیم try_files برای لاراول و وردپرس و بستن دسترسی به فایلهای حساس.
کانفیگ nginx بهعنوان Load Balancer (پخش بار روی چند سرور)
تعریف upstream با چند سرور، روشهای round-robin و least_conn، وزندهی، سرور پشتیبان و health check غیرفعال.
بهینهسازی nginx: gzip، کش و هدرهای امنیتی
کانفیگ آمادهٔ gzip، expires و Cache-Control برای فایلهای ثابت و هدرهای امنیتی مهم برای سرعت و سئو.
محدود کردن درخواست (Rate Limit) و بلاک کردن IP در nginx
جلوگیری از حملهٔ brute-force و اسکرپینگ با limit_req و limit_conn، مسدود کردن IP و محدود کردن دسترسی به پنل مدیریت.
ریدایرکت 301 در nginx: www، HTTPS و آدرسهای قدیمی
نمونههای آماده return 301 و rewrite، انتقال آدرسهای قدیمی سایت و ریدایرکتهای گروهی با map برای حفظ سئو.
قفل کردن سایت یا پوشه با رمز عبور در nginx (Basic Auth)
ساخت فایل رمز با htpasswd، محافظت از پنل مدیریت و سایت آزمایشی و ترکیب با محدودیت IP.
عیبیابی nginx: خطاهای 502، 504، 413، 403 و 404
روش گامبهگام پیدا کردن علت خطاهای رایج nginx با لاگها، تست کانفیگ، بررسی پورتها و دسترسی فایلها.
تحلیل لاگ nginx با awk و GoAccess
فرمت لاگ سفارشی با زمان پاسخ و دستورهای آماده برای پیدا کردن ترافیک مشکوک، آدرسهای پربازدید و صفحات کند.
کانفیگ nginx برای React، Vue و Angular (SPA)
تنظیم try_files برای مسیریابی سمت کلاینت، کش درست فایلهای build و ارسال درخواستهای /api به بکاند.
میزبانی چند سایت و زیردامنه روی یک سرور nginx
ساخت چند server block، ساختار پوشهها، wildcard زیردامنهها و اسکریپت کوچک برای افزودن سایت جدید.
نصب LEMP Stack روی اوبونتو (nginx، MySQL، PHP)
نصب و پیکربندی کامل nginx، MySQL و PHP-FPM برای اجرای وردپرس یا لاراول، بههمراه امنسازی و تست.
امنیت و فایروال
راهاندازی اولیه و امنسازی سرور اوبونتو
ساخت کاربر غیر root، ورود با کلید SSH، فایروال، بهروزرسانی خودکار، تنظیم منطقهٔ زمانی و swap.
تنظیم فایروال ufw برای سرور وب
فعال کردن ufw بدون قطع SSH، باز کردن HTTP و HTTPS، اجازهٔ دسترسی به دیتابیس فقط از یک IP و مشاهده و حذف قوانین.