دانشنامه مارال هاست دانشنامه مارال هاست
  • صفحه اصلی
  • مقالات
    • هاست اشتراکی
    • دامنه
    • سرور مجازی
    • کنترل پنل سی‌پنل
    • کنترل پنل پلسک
    • کنترل پنل دایرکت ادمین
    • ایمیل
    • CloudLinux
    • Cloudflare
  • تماس با ما
دانشنامه مارال هاست دانشنامه مارال هاست
دانشنامه مارال هاست دانشنامه مارال هاست
  • صفحه اصلی
  • مقالات
    • هاست اشتراکی
    • دامنه
    • سرور مجازی
    • کنترل پنل سی‌پنل
    • کنترل پنل پلسک
    • کنترل پنل دایرکت ادمین
    • ایمیل
    • CloudLinux
    • Cloudflare
  • تماس با ما
امنیت
  • Folder icon closed Folder open iconCIA Triad چیست؟ آشنایی با سه اصل اساسی امنیت اطلاعات
  • Folder icon closed Folder open iconAttack Surface چیست؟ آشنایی با سطح حمله در امنیت سایبری
  • Folder icon closed Folder open iconThreat چیست؟ آشنایی با مفهوم تهدید در امنیت سایبری
  • Folder icon closed Folder open iconVulnerability چیست؟ آشنایی با آسیب‌پذیری در امنیت سایبری
  • Folder icon closed Folder open iconExploit چیست؟ آشنایی با مفهوم اکسپلویت در امنیت سایبری
  • Folder icon closed Folder open iconRisk چیست؟ آشنایی با مفهوم ریسک در امنیت سایبری
  • Folder icon closed Folder open iconCVE چیست؟ آشنایی با سیستم شماره‌گذاری آسیب‌پذیری‌های امنیتی
  • Folder icon closed Folder open iconCVSS چیست؟ آشنایی با سیستم امتیازدهی آسیب‌پذیری‌های امنیتی
  • Folder icon closed Folder open iconبعد از خرید سرور مجازی لینوکس(VPS)، اولین کارهایی که باید انجام دهید
  • Folder icon closed Folder open iconآموزش تغییر Hostname سرور در لینوکس
  • Folder icon closed Folder open iconآموزش تنظیم صحیح Timezone و NTP در لینوکس
  • Folder icon closed Folder open iconآموزش بروزرسانی کامل سیستم‌عامل لینوکس همه توزیع ها
  • Folder icon closed Folder open iconآموزش ساخت کاربر جدید و حذف استفاده روزمره از Root در لینوکس
  • Folder icon closed Folder open iconآموزش تنظیم صحیح sudo در لینوکس
  • Folder icon closed Folder open iconآموزش تنظیم Banner ورود به SSH در لینوکس
  • Folder icon closed Folder open iconآموزش مدیریت Password Policy در لینوکس
  • Folder icon closed Folder open iconآموزش نصب و راه‌اندازی SSH Key Authentication در لینوکس
  • Folder icon closed Folder open iconآموزش غیرفعال کردن ورود مستقیم Root از طریق SSH
  • Folder icon closed Folder open iconتغییر پورت SSH؛ آیا واقعاً امنیت سرور را افزایش می‌دهد؟
  • Folder icon closed Folder open iconآموزش محدود کردن کاربران مجاز SSH در لینوکس
  • Folder icon closed Folder open iconآموزش محدود کردن دسترسی SSH بر اساس IP در لینوکس
  • Folder icon closed Folder open iconآموزش تنظیم LoginGraceTime در SSH؛ کاهش زمان انتظار برای احراز هویت
  • Folder icon closed Folder open iconآموزش تنظیم MaxAuthTries در SSH؛ محدود کردن تعداد تلاش‌های ورود ناموفق
  • Folder icon closed Folder open iconآموزش بررسی لاگ‌های SSH در لینوکس
  • Folder icon closed Folder open iconآموزش عیب‌یابی مشکلات SSH در لینوکس
  • Folder icon closed Folder open iconآموزش کامل UFW در لینوکس؛ راه‌اندازی، مدیریت و ایمن‌سازی فایروال سرور
  • Folder icon closed Folder open iconnftables چیست؟ آشنایی با فایروال نسل جدید لینوکس و جایگزین iptables
  • Folder icon closed Folder open iconآموزش کامل Firewalld در لینوکس
  • Folder icon closed Folder open iconآموزش کامل ConfigServer Security & Firewall (CSF)
  • Folder icon closed Folder open iconآموزش مشاهده Loginهای اخیر در لینوکس
  • Folder icon closed Folder open iconآموزش بررسی پردازش‌های مشکوک در لینوکس
  • Folder icon closed Folder open iconآموزش بررسی Cron Jobهای مشکوک در لینوکس
  • Folder icon closed Folder open iconآموزش کامل Fail2Ban در لینوکس؛ نصب و راه‌اندازی
  • Folder icon closed Folder open iconآموزش نصب RKHunter در لینوکس
  • Folder icon closed Folder open iconآموزش نصب Chkrootkit در لینوکس
  • Folder icon closed Folder open iconآموزش اسکن سرور با RKHunter و Chkrootkit
  • Folder icon closed Folder open iconآموزش نصب، پیکربندی و اسکن سرور با AIDE در لینوکس
  • Folder icon closed Folder open iconآموزش نصب، پیکربندی و استفاده از Auditd در لینوکس
  • Folder icon closed Folder open iconآموزش نصب، اسکن و تحلیل امنیت سرور با Lynis در لینوکس
  • Folder icon closed Folder open iconآموزش نصب، بروزرسانی و اسکن سرور با ClamAV در لینوکس
  • Folder icon closed Folder open iconآموزش Hardening وب‌سرور Nginx
  • Folder icon closed Folder open iconآموزش Hardening وب‌سرور Apache
  • Folder icon closed Folder open iconآموزش Hardening PHP
  • Folder icon closed Folder open iconآموزش Hardening پایگاه داده MySQL
  • Folder icon closed Folder open iconآموزش Hardening سرویس Redis
  • Folder icon closed Folder open iconآموزش Hardening سرویس Docker
  • Folder icon closed Folder open iconآموزش Hardening سرویس FTP
امنیت

آموزش تنظیم صحیح sudo در لینوکس

آموزش تنظیم صحیح sudo در لینوکس

مقدمه

در سیستم‌عامل لینوکس، بسیاری از عملیات مدیریتی مانند نصب نرم‌افزار، مدیریت سرویس‌ها، تغییر تنظیمات سیستم و ایجاد کاربران جدید نیازمند دسترسی مدیریتی (Root) هستند.

در گذشته، مدیران سیستم معمولاً مستقیماً با حساب کاربری Root وارد سرور می‌شدند؛ اما امروزه این روش از نظر امنیتی توصیه نمی‌شود. راهکار استاندارد، استفاده از ابزار sudo است.

استفاده صحیح از sudo علاوه بر افزایش امنیت، امکان ثبت فعالیت کاربران، کنترل دسترسی‌ها و کاهش احتمال خطاهای انسانی را نیز فراهم می‌کند.

در این مقاله با نحوه عملکرد sudo، روش پیکربندی آن و بهترین شیوه‌های استفاده در سرورهای لینوکسی آشنا خواهیم شد.


sudo چیست؟

sudo مخفف عبارت SuperUser Do است.

این ابزار به کاربران عادی اجازه می‌دهد تنها در صورت نیاز، یک دستور مشخص را با دسترسی مدیریتی اجرا کنند.

به بیان ساده:

به جای اینکه همیشه با Root وارد شوید، فقط همان دستوری که نیاز به دسترسی مدیریتی دارد را با sudo اجرا می‌کنید.

برای مثال:

sudo apt update

یا

sudo systemctl restart nginx

چرا از sudo استفاده کنیم؟

استفاده از sudo مزایای زیادی دارد.

از جمله:

  • عدم نیاز به ورود مستقیم با Root
  • ثبت تمامی دستورات مدیریتی در لاگ
  • کاهش احتمال خطاهای انسانی
  • امکان محدود کردن سطح دسترسی کاربران
  • افزایش امنیت سرور
  • مدیریت ساده‌تر کاربران در محیط‌های سازمانی

بررسی نصب sudo

در بیشتر توزیع‌های لینوکس، sudo به‌صورت پیش‌فرض نصب شده است.

برای بررسی:

sudo --version

اگر نسخه برنامه نمایش داده شد، یعنی sudo روی سیستم نصب است.


نصب sudo

اگر sudo روی سیستم نصب نبود، می‌توانید آن را نصب کنید.

Ubuntu و Debian

apt update
apt install sudo -y

AlmaLinux و Rocky Linux

dnf install sudo -y

اعطای دسترسی sudo

برای اینکه یک کاربر بتواند از sudo استفاده کند، باید عضو گروه مناسب باشد.

Ubuntu و Debian

sudo usermod -aG sudo username

مثال:

sudo usermod -aG sudo maraladmin

AlmaLinux، Rocky Linux و RHEL

sudo usermod -aG wheel username

مثال:

sudo usermod -aG wheel maraladmin

بررسی عضویت کاربر

برای مشاهده گروه‌های یک کاربر:

groups maraladmin

یا:

id maraladmin

اگر کاربر عضو گروه sudo یا wheel باشد، مجوز استفاده از sudo را خواهد داشت.


تست دسترسی sudo

با کاربر جدید وارد شوید.

ابتدا بررسی کنید با چه کاربری وارد شده‌اید:

whoami

نمونه خروجی:

maraladmin

سپس یک دستور مدیریتی اجرا کنید:

sudo whoami

اگر خروجی زیر نمایش داده شد:

root

یعنی تنظیمات sudo به‌درستی انجام شده است.


فایل تنظیمات sudo

تنظیمات اصلی sudo در فایل زیر قرار دارد:

/etc/sudoers

این فایل را مستقیماً ویرایش نکنید.

برای ویرایش از دستور زیر استفاده کنید:

sudo visudo

این ابزار قبل از ذخیره فایل، ساختار آن را بررسی می‌کند و از ایجاد خطاهای نحوی که می‌توانند دسترسی مدیریتی را مختل کنند، جلوگیری می‌کند.


استفاده از پوشه sudoers.d

در بسیاری از سناریوها، بهتر است به جای تغییر فایل اصلی، تنظیمات اختصاصی را در مسیر زیر قرار دهید:

/etc/sudoers.d/

برای مثال:

sudo visudo -f /etc/sudoers.d/maraladmin

این روش باعث می‌شود فایل اصلی دست‌نخورده باقی بماند و مدیریت تنظیمات ساده‌تر شود.


اجرای دستور با sudo

نمونه‌هایی از استفاده روزمره:

بروزرسانی سیستم:

sudo apt update

راه‌اندازی مجدد یک سرویس:

sudo systemctl restart nginx

مشاهده لاگ‌های سیستم:

sudo journalctl

نصب نرم‌افزار:

sudo dnf install nginx

تفاوت sudo و su

این دو دستور کاربرد متفاوتی دارند.

sudosu
اجرای یک دستور با دسترسی مدیریتیتبدیل کل نشست به Root
ایمن‌ترریسک بیشتر
تمام فعالیت‌ها ثبت می‌شودمعمولاً کنترل کمتری دارد
مناسب استفاده روزمرهمناسب شرایط خاص

در بیشتر سناریوها، استفاده از sudo توصیه می‌شود.


استفاده از sudo بدون رمز عبور

می‌توان sudo را طوری تنظیم کرد که برای یک کاربر خاص، رمز عبور درخواست نشود.

نمونه:

maraladmin ALL=(ALL) NOPASSWD: ALL

اگرچه این قابلیت برای محیط‌های آزمایشگاهی یا برخی اسکریپت‌های خودکار مفید است، اما در سرورهای عملیاتی به دلیل کاهش سطح امنیت، توصیه نمی‌شود.

آموزش تنظیم صحیح sudo در لینوکس

ثبت فعالیت کاربران

یکی از مهم‌ترین مزایای sudo، ثبت دستورات مدیریتی است.

برای مشاهده بخشی از این اطلاعات می‌توانید لاگ‌ها را بررسی کنید.

در Ubuntu و Debian:

sudo grep sudo /var/log/auth.log

در AlmaLinux و Rocky Linux:

sudo grep sudo /var/log/secure

این لاگ‌ها نشان می‌دهند چه کاربری، چه دستوری و در چه زمانی اجرا کرده است.


اشتباهات رایج

برخی از اشتباهات متداول هنگام استفاده از sudo عبارت‌اند از:

  • انجام تمام فعالیت‌ها با حساب Root
  • ویرایش مستقیم فایل /etc/sudoers
  • استفاده از NOPASSWD در سرورهای Production
  • افزودن همه کاربران به گروه sudo
  • اشتراک‌گذاری یک حساب مدیریتی بین چند نفر

بهترین روش استفاده از sudo

برای افزایش امنیت:

  • برای هر مدیر سیستم یک حساب کاربری مجزا ایجاد کنید.
  • فقط کاربران موردنیاز را عضو گروه sudo یا wheel کنید.
  • فایل sudoers را فقط با visudo ویرایش کنید.
  • از ثبت لاگ‌های sudo برای بررسی فعالیت‌ها استفاده کنید.
  • دسترسی‌های غیرضروری را به‌صورت دوره‌ای بازبینی کنید.
آموزش تنظیم صحیح sudo در لینوکس

چک‌لیست

پس از تنظیم sudo، این موارد را بررسی کنید:

  • sudo روی سیستم نصب است.
  • کاربر عضو گروه sudo یا wheel است.
  • اجرای sudo whoami بدون خطا انجام می‌شود.
  • فایل sudoers فقط با visudo مدیریت می‌شود.
  • لاگ‌های sudo ثبت می‌شوند.
  • کاربران غیرضروری دسترسی مدیریتی ندارند.

جمع‌بندی

sudo یکی از مهم‌ترین ابزارهای مدیریت دسترسی در لینوکس است و استفاده صحیح از آن، امنیت سرور را به شکل قابل توجهی افزایش می‌دهد. به‌جای ورود مستقیم با حساب Root، بهتر است برای هر مدیر سیستم یک حساب کاربری جداگانه ایجاد کرده و تنها در زمان نیاز از sudo برای اجرای دستورات مدیریتی استفاده کنید.

این روش علاوه بر کاهش ریسک نفوذ و خطاهای انسانی، امکان ثبت دقیق فعالیت‌ها و کنترل بهتر دسترسی‌ها را نیز فراهم می‌کند و یکی از استانداردهای اصلی مدیریت امن سرورهای لینوکسی محسوب می‌شود.

کیان پور

هنوز نیاز به کمک دارید؟

آیا سوالی دارید؟

آیا این مقاله برای شما مفید بود؟ بله خیر

مطالب اخیراً بازدیدشده

  • آموزش غیرفعال کردن ورود مستقیم Root از طریق SSH
  • آموزش نصب Docker در لینوکس
  • CI/CD چیست؟
  • آموزش تغییر Hostname سرور در لینوکس
  • آموزش نصب و راه‌اندازی SSH Key Authentication در لینوکس
  • آموزش نصب، پیکربندی و استفاده از Auditd در لینوکس
  • بعد از خرید سرور مجازی لینوکس(VPS)، اولین کارهایی که باید انجام دهید
  • آموزش کامل UFW در لینوکس؛ راه‌اندازی، مدیریت و ایمن‌سازی فایروال سرور
  • آموزش محدود کردن کاربران مجاز SSH در لینوکس
  • آموزش تنظیم MaxAuthTries در SSH؛ محدود کردن تعداد تلاش‌های ورود ناموفق
  • آموزش نصب Nextcloud با Docker Compose
  • عیب‌یابی تفاوت نتیجه DNS بین سرور و کامپیوتر شخصی
  • مشاهده بیشتر

نظرات خود را بنویسید... لغو پاسخ

اشتراک گذاری این مقاله

آموزش تنظیم صحیح sudo در لینوکس

کپی کردن لینک

Clipboard Icon

جدیدترین مقالات

آموزش نصب و راه‌اندازی RustDesk Server با Docker
آموزش نصب و راه‌اندازی RustDesk Server با Docker
2 minutes جولای 2, 2026
آموزش نصب و راه‌اندازی Matrix Synapse + Element Web + Coturn با Docker روی ...
4 minutes جولای 2, 2026
CXS چیست و چگونه کار می‌کند
1 minute می 3, 2026
ساخت سرور چت المنت بروی لینوکس
5 minutes آوریل 25, 2026
Geo Routing و Geo DNS
2 minutes آوریل 22, 2026

تقویم

آگوست 2026
شیدسچپج
1234567
891011121314
15161718192021
22232425262728
293031 
« جولای    

عضویت

جدیدترین پست‌ها

آموزش نصب و راه‌اندازی RustDesk Server با Docker
آموزش نصب و راه‌اندازی RustDesk Server با Docker
2 minutes جولای 2, 2026
آموزش نصب و راه‌اندازی Matrix Synapse + Element Web + Coturn با Docker روی Ubuntu 24.04
4 minutes جولای 2, 2026
CXS چیست و چگونه کار می‌کند
1 minute می 3, 2026
ساخت سرور چت المنت بروی لینوکس
5 minutes آوریل 25, 2026
Geo Routing و Geo DNS
2 minutes آوریل 22, 2026

سلام