چند وقت پیش ، من سعی کردم پیکربندی سرور آپاچی را برای گوش دادن به درگاه متفاوت از پورت پیش فرض آن ، یعنی 80.
پس از ایجاد تغییرات لازم در پرونده پیکربندی Apache و اجازه پورت سفارشی از طریق فایروال ، سرور apache هنوز از [گوش دادن به درگاه سفارشی] خودداری کرد.
پس از جستجوی کوتاه ، متوجه شدم که SELinux اجازه نمی دهد. پورت ، بنابراین من دستور زیر را اجرا کردم تا سرور آپاچی در پورت دیگری گوش کند:
# port semanage -a -t ftp_port_t -p tcp 8090
در اینجا 8090 پورت است که من می خواهم سرور Apache را گوش دهد. [19659007] اما سیستم خطای دیگری برای من انداخت:
-bash: semanage: فرمان یافت نشد
اگر تا به حال فکر کرده اید که چگونه آن را برطرف کنید برای رفع این خطا در RHEL 7 & 8 و CentOS 7 & 8 ، بسته ای را پیدا کنید که دستور semanage را فراهم کرده و آن را مطابق شرح زیر نصب کنید.
فرمان semanage در CentOS 7/8 و RHEL 7/8 یافت نشد. [19659011] اول ، خواهیم دید که چگونه این مورد را بر روی سرور CentOS 8 رفع کنیم.
رفع خطای "فرمان semanage found not" در CentOS 8 و RHEL 8
اول ، بیایید دریابیم که کدام بسته دستور "semanage" را فراهم می کند.
دستور زیر را اجرا کنید:
# dnf فراهم می کند / usr / sbin / semanage
یا
# dnf whatprovides / usr / sbin / semanage
مثال خروجی:
آخرین بررسی تاریخ انقضا: : 32: 47 پیش از روز شنبه 8 فوریه 2020 12:02:37 PM IST. policycoreutils-python-utils-2.9-3.el8.noarch : برنامه های اصلی SELinux سیاست های اصلی پایتون Repo: BaseOS مطابقت با: نام فایل: / usr / sbin / semanage policycoreutils-python-utils-2.9-3.el8_1.1.noarch : SELinux سیاست های اصلی پایتون سیاست Repo: BaseOS مطابقت با: نام پرونده: / usr / sbin / semanage
همانطور که مشاهده می کنید ، بسته ای با عنوان "policycoreutils-python-utils-2.9-3.el8_1.1.noarch" دستور "semanage" را ارائه می دهد و در دسترس است در مخازن پیش فرض ، یعنی در BaseOS.
بنابراین ، بیایید این بسته را با استفاده از دستور زیر به عنوان root نصب کنیم:
# dnf install policycoreutils-python-utils
مثال خروجی:
CentOS-8 - AppStream 2.9 kB / s | 4.3 kB 00:01 CentOS-8 - پایه 4.5 kB / s | 3.8 کیلوبایت 00:00 CentOS-8 - اضافی 1.7 kB / s | 00 کیلوبایت 00:00 وابستگی ها برطرف شد. ============================================= ============================================= ============================================= ======================= اندازه مخزن نسخه معماری نسخه ============================================= ============================================= ============================================= ======================= نصب: policycoreutils-python-utils noarch 2.9-3.el8_1.1 BazaOS 250 k نصب وابستگی: checkpolicy x86_64 2.9-1.el8 BASOS 348 k python3-audit x86_64 3.0-0.10.20180831git0047a6c.el8 BazaOS 85 k python3-libsemanage x86_64 2.9-1.el8 BASOS 127 k python3-policycoreutils noarch 2.9-3.el8_1.1 BaseOS 2.2 M python3-setools x86_64 4.2.2-1.el8 BOSOS 600 k خلاصه معاملات ============================================= ============================================= ============================================= ======================= 6 بسته را نصب کنید اندازه بارگیری: 3.6 M اندازه نصب شده: 11 M آیا این خوب است [y/N]: y بارگیری بسته ها: (1/6): python3-audit-3.0-0.10.20180831git0047a6c.el8.x86_64.rpm 215 kB / s | 85 kB 00:00 (2/6): python3-libsemanage-2.9-1.el8.x86_64.rpm 304 kB / s | 127 kB 00:00 (3/6): policycoreutils-python-utils-2.9-3.el8_1.1.noarch.rpm 258 kB / s | 250 kB 00:00 (4/6): checkpolicy-2.9-1.el8.x86_64.rpm 260 kB / s | 348 kB 00:01 (5/6): python3-setools-4.2.2-1.el8.x86_64.rpm 296 kB / s | 600 kB 00:02 (6/6): python3-policycoreutils-2.9-3.el8_1.1.noarch.rpm 490 kB / s | 2.2 مگابایت 00:04 -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------- کل 594 کیلوبیت در ثانیه | 3.6 MB 00:06 در حال انجام بررسی معامله بررسی معاملات انجام شد. تست معامله در حال اجرا آزمون معامله موفقیت آمیز بود. در حال انجام معامله تهیه: 1/1 نصب: python3-setools-4.2.2-1.el8.x86_64 1/6 نصب: python3-libsemanage-2.9-1.el8.x86_64 2/6 نصب: python3-audit-3.0-0.10.20180831git0047a6c.el8.x86_64 3/6 نصب: checkpolicy-2.9-1.el8.x86_64 4/6 نصب: python3-policycoreutils-2.9-3.el8_1.1.noarch 5/6 نصب: policycoreutils-python-utils-2.9-3.el8_1.1.noarch 6/6 اسکریپت در حال اجرا: policycoreutils-python-utils-2.9-3.el8_1.1.noarch 6/6 تأیید: checkpolicy-2.9-1.el8.x86_64 1/6 تأیید: policycoreutils-python-utils-2.9-3.el8_1.1.noarch 2/6 تأیید: python3-audit-3.0-0.10.20180831git0047a6c.el8.x86_64 3/6 تأیید: python3-libsemanage-2.9-1.el8.x86_64 4/6 تأیید اعتبار: python3-policycoreutils-2.9-3.el8_1.1.noarch 5/6 تأیید: python3-setools-4.2.2-1.el8.x86_64 6/6 نصب شده: policycoreutils-python-utils-2.9-3.el8_1.1.noarch checkpolicy-2.9-1.el8.x86_64 python3-audit-3.0-0.10.20180831git0047a6c.el8.x86_64 python3-libsemanage-2.9-1.el8.x86_64 python3-policycoreutils-2.9-3.el8_1.1.noarch python3-setools-4.2.2-1.el8.x86_64
تمام شد!
اکنون می توانیم سیاست های SELinux را با فرمان semanage مدیریت کنیم.
اگر مسیر دقیق فرمان semange را نمی دانید ، می توانید به راحتی دستور زیر را اجرا کنید:
# dnf semanage
یا
# dnf را فراهم می کند * / semanage
یا
# dnf whatprovides * / semanage
سیستم نمایش همان نتیجه دستورات فوق را نشان می دهد.
هر یک از این مکان ها عبارتند از: usr / sbin و / usr / bin و /usr/local/bin.ociation19659036.06.2012 بنابراین ، ما می توانیم به همان جا نگاه کنیم.
برای راهنمایی:
# semanage -h
خروجی:
استفاده: semanage [-h]
{واردات ، صادرات ، ورود به سیستم ، کاربر ، پورت ، ibpkey ، ibendport ، رابط ، ماژول ، گره ، fcontext ، بولی ، مجاز ، dontaudit}
...
semanage برای پیکربندی عناصر خاصی از سیاست SELinux بدون استفاده استفاده می شود
نیاز به اصلاح یا جبران مجدد از منبع سیاست.
استدلال های موقعیتی:
{واردات ، صادرات ، ورود به سیستم ، کاربر ، پورت ، ibpkey ، ibendport ، رابط ، ماژول ، گره ، fcontext ، بولی ، مجاز ، dontaudit}
واردات سفارشی سازی های محلی
صادرات برنامه های سفارشی محلی
ورود به سیستم مدیریت نقشههای ورود به سیستم بین کاربران linux و SELinux
کاربران محدود
کاربر کاربران محدود SELinux را مدیریت کنید (نقش ها و سطوح مربوط به آن
کاربر SELinux)
تعاریف نوع پورت شبکه را مدیریت کنید
ibpkey تعاریف نوع infiniband ibpkey را مدیریت کند
ibendport مدیریت تعاریف نوع پورت پایان نامحدود
تعریف رابط شبکه رابط رابط را مدیریت کنید
ماژول مدیریت ماژول های سیاست SELinux
تعاریف نوع گره شبکه را مدیریت کنید
fcontext تعاریف نقشه برداری متن زمینه را مدیریت کنید
boolean booleans را مدیریت کنید تا عملکرد را به صورت انتخابی فعال کنید
نحوه اجرای نوع اجرای فرآیند مدیریت مجاز
dontaudit غیرفعال کردن / فعال کردن قوانین dontaudit در خط مشی
آرگومان های اختیاری:
-h ، - راهنمایی نشان دادن این پیام راهنمایی و خروج
همچنین به صفحات این مرد نیز مراجعه کنید.
# man semanage
رفع اشکال برای " فرمان semanage یافت نشد " در CentOS 7 و RHEL 7
برای یافتن این که فرمان semanage چه چیزی را در CentOS 7 ارائه خواهد کرد ، اجرا کنید:
# yum / usr / sbin / semanage
یا
# yum whatprovides / usr / sbin / semanage
نمونه خروجی از سرور CentOS 7 من:
افزونه های بارگذاری شده: fastestmirror تعیین سریعترین آینه ها * پایه: mirror.nbrc.ac.in * موارد اضافی: mirror.nbrc.ac.in * به روز رسانی: mirror.nbrc.ac.in policycoreutils-python-2.2.5-11.el7.x86_64: پایتون اصلی سیاست SELinux : خدمات رپو: پایه مطابقت با: نام پرونده: / usr / sbin / semanage policycoreutils-python-2.2.5-11.el7_0.1.x86_64 : پایتون هسته اصلی سیاست SELinux : خدمات Repo: به روز رسانی مطابقت با: نام پرونده: / usr / sbin / semanage
همانطور که در خروجی فوق می بینید ، برای استفاده از دستور semanage باید بسته های policycoreutils-python-2.2.5-11.el7_0.1.x86_64 را نصب کنیم.
بنابراین ، بیایید بسته policycoreutils-python-2.2.5-11.el7_0.1.x86_64 را با استفاده از دستور زیر به عنوان root نصب کنیم:
# yum install policycoreutils-python
مثال خروجی:
================================================ ===================================== اندازه مخزن Arch Archive Package ============================================= ================================= نصب: policycoreutils-python x86_64 2.2.5-20.el7 base 435 k نصب برای وابستگی: audit-libs-python x86_64 2.4.1-5.el7 base 69 k checkpolicy x86_64 2.1.12-6.el7 base 247 k libcgroup x86_64 0.41-8.el7 base 64 k libsemanage-python x86_64 2.1.10-18.el7 پایه 94 k پایه Python-IPy noarch 0.75-6.el7 base 32 k setools-libs x86_64 3.3.7-46.el7 base 485 k به روزرسانی برای وابستگی ها: ممیزی x86_64 2.4.1-5.el7 پایه 234 k audit-libs x86_64 2.4.1-5.el7 base 80 k libsemanage x86_64 2.1.10-18.el7 base 123 k policycoreutils x86_64 2.2.5-20.el7 base 803 k خلاصه معاملات ============================================= ================================= نصب 1 بسته (بسته های وابسته +6) به روز رسانی (4 بسته وابسته) اندازه بارگیری: 2.6 M آیا این خوب است [y/d/N]: y بارگیری بسته ها: Delta RPM ها غیرفعال هستند زیرا / usr / bin / Appldeltarpm نصب نشده است. (1/11): audit-libs-2.4.1-5.el7.x86_64.rpm | 80 کیلوبایت 00:02 (2/11): audit-libs-python-2.4.1-5.el7.x86_64.rpm | 69 کیلوبایت 00:02 (3/11): checkpolicy-2.1.12-6.el7.x86_64.rpm | 247 kB 00:02 (4/11): libsemanage-2.1.10-18.el7.x86_64.rpm | 123 kB 00:01 (5/11): audit-2.4.1-5.el7.x86_64.rpm | 234 kB 00:04 (6/11): libsemanage-python-2.1.10-18.el7.x86_64.rpm | 94 کیلوبایت 00:02 (11/11): policycoreutils-python-2.2.5-20.el7.x86_64.rpm | 435 kB 00:03 (8/11): python-IPy-0.75-6.el7.noarch.rpm | 32 kB 00:02 (11/11): setools-libs-3.3.7-46.el7.x86_64.rpm | 485 kB 00:08 (11/11): policycoreutils-2.2.5-20.el7.x86_64.rpm | 803 kB 00:10 (11/11): libcgroup-0.41-8.el7.x86_64.rpm | 64 kB 00:37 -------------------------------------------------- ------------------------------ در کل 71 کیلوبایت در ثانیه | 2.6 مگابایت 00:37 در حال انجام بررسی معامله تست معامله در حال اجرا آزمون معامله موفقیت آمیز بود در حال انجام معامله بروزرسانی: audit-libs-2.4.1-5.el7.x86_64 1/15 بروزرسانی: libsemanage-2.1.10-18.el7.x86_64 2/15 بروزرسانی: policycoreutils-2.2.5-20.el7.x86_64 3/15 نصب: libsemanage-python-2.1.10-18.el7.x86_64 4/15 نصب: audit-libs-python-2.4.1-5.el7.x86_64 5/15 نصب: python-IPy-0.75-6.el7.noarch 6/15 نصب: checkpolicy-2.1.12-6.el7.x86_64 7/15 نصب: libcgroup-0.41-8.el7.x86_64 8/15 نصب: setools-libs-3.3.7-46.el7.x86_64 9/15 نصب: policycoreutils-python-2.2.5-20.el7.x86_64 10/15 بروزرسانی: audit-2.4.1-5.el7.x86_64 11/15 پاکسازی: policycoreutils-2.2.5-11.el7_0.1.x86_64 12/15 پاکسازی: libsemanage-2.1.10-16.el7.x86_64 13/15 پاکسازی: audit-2.3.3-4.el7.x86_64 14/15 پاکسازی: audit-libs-2.3.3-4.el7.x86_64 15/15 تأیید: setools-libs-3.3.7-46.el7.x86_64 1/15 تأیید: libsemanage-2.1.10-18.el7.x86_64 2/15 تأیید: libcgroup-0.41-8.el7.x86_64 3/15 تأیید: checkpolicy-2.1.12-6.el7.x86_64 4/15 تأیید: policycoreutils-2.2.5-20.el7.x86_64 5/15 تأیید: python-IPy-0.75-6.el7.noarch 6/15 تأیید: audit-libs-2.4.1-5.el7.x86_64 7/15 تأیید: libsemanage-python-2.1.10-18.el7.x86_64 8/15 تأیید: audit-2.4.1-5.el7.x86_64 9/15 تأیید: policycoreutils-python-2.2.5-20.el7.x86_64 10/15 تأیید: audit-libs-python-2.4.1-5.el7.x86_64 11/15 تأیید: audit-libs-2.3.3-4.el7.x86_64 12/15 تأیید: policycoreutils-2.2.5-11.el7_0.1.x86_64 13/15 تأیید: libsemanage-2.1.10-16.el7.x86_64 14/15 تأیید: audit-2.3.3-4.el7.x86_64 15/15 نصب شده: policycoreutils-python.x86_64 0: 2.2.5-20.el7 وابستگی نصب شده: audit-libs-python.x86_64 0: 2.4.1-5.el7 checkpolicy.x86_64 0: 2.1.12-6.el7 libcgroup.x86_64 0: 0.41-8.el7 libsemanage-python.x86_64 0: 2.1.10-18.el7 python-IPy.noarch 0: 0.75-6.el7 setools-libs.x86_64 0: 3.3.7-46.el7 وابستگی به روز شده: audit.x86_64 0: 2.4.1-5.el7 audit-libs.x86_64 0: 2.4.1-5.el7 libsemanage.x86_64 0: 2.1.10-18.el7 policycoreutils.x86_64 0: 2.2.5-20.el7 کامل!
از فرمان semanage در سیستم های CentOS 7 و RHEL 7 استفاده کنید.