Điểm:2

SELinux - chặn các email postfix gửi đi từ Ứng dụng web

lá cờ cn

Môi trường hệ thống của tôi, là Centos-7.9, Apache2.4, Php-fpm, PHP-7.4

Tôi đã thiết lập hậu tố để gửi email từ trang web đang hoạt động trong các email thử nghiệm độc lập và khi tôi tắt SELinux.

Tuy nhiên, nếu SELinux được bật, nó sẽ chặn gửi email từ máy chủ với lỗi bên dưới trong /var/log/maillog

 postfix/sendmail[10883]: gây tử vong: execv/usr/libexec/postfix/smtpd: Quyền bị từ chối

Khi tôi làm

  sudo setenforce 0

Nó gửi email, tuy nhiên, tôi không muốn tắt SELinux, nhưng tôi muốn cho phép Ứng dụng web của mình vào danh sách trắng gửi email. Tôi đã thử dưới đây nhưng nó không hoạt động

sudo setsebool -P httpd_can_sendmail 1

Bất kỳ ý tưởng về làm thế nào để giải quyết vấn đề này?

Điểm:0
lá cờ vn

Đây là một lỗi đã biết với RHEL 7.7 trở lên khi sử dụng php-fpm thay vì của Apache mod_php. Vì bạn đang sử dụng CentOS 7.9 nên nó được áp dụng.

Bạn có thể đọc thêm về vấn đề này trên Red Hat's Bugzilla: http://bugzilla.redhat.com/show_bug.cgi?id=1754622

Đối với giải pháp cho vấn đề của bạn, giải pháp đầu tiên và rõ ràng nhất là vô hiệu hóa SELinux, nhưng là tùy chọn thứ hai, tôi khuyên bạn nên làm như sau:

  1. Cài đặt gói chính sáchcoreutils-python
  2. Sử dụng kiểm toán2whykiểm toán2allow để tạo các quy tắc tùy chỉnh để kích hoạt php-fpm để làm việc với SELinux được kích hoạt.
  3. đuôi -f trên /var/log/audit/audit.log và cố gắng gửi một tin nhắn thư từ httpd. Nhận đầu ra và gieo nó qua kiểm toán2whykiểm toán2allow. Nó sẽ tự giải thích.
  4. Áp dụng các quy tắc được tư vấn bởi cả hai chương trình.

Một giải pháp thứ ba sẽ được đặt httpd_t hoặc system_mail_t (tùy thuộc vào đầu ra của kiểm toán2allow) ở chế độ cho phép nếu bạn không muốn tạo các quy tắc tùy chỉnh dành riêng cho máy này. Nhưng hãy nhớ rằng làm điều này bạn sẽ vô hiệu hóa SELinux trong toàn bộ ngữ cảnh.

Điều đó sẽ được thực hiện với lệnh sau: quản lý cho phép -a httpd_t hoặc quản lý cho phép -a system_mail_t. Để hoàn tác các thay đổi, chỉ cần thay đổi -một đến -d.

Điểm:0
lá cờ cn

Những gì tôi sẽ làm ở đây là

Đặt SELinux ở chế độ cho phép

thiết lập lực lượng 0

Xoay nhật ký kiểm tra để tôi có được danh sách từ chối AVC rõ ràng (er)

giết -USR1 $(mèo /run/auditd.pid) 

Nguyên nhân Sự cố xảy ra và tạo thông báo kiểm tra

Tạo một mô-đun chính sách cục bộ

grep bị từ chối /var/log/audit/audit.log | audit2allow -m mypolicy >mypolicy.te 

Kiểm tra xem tệp chính sách được tạo có giống như tôi mong đợi không và không 'cho đi' những thứ tôi không muốn và chỉnh sửa theo yêu cầu.

Tạo và cài đặt chính sách

mô-đun kiểm tra -M -m -o mypolicy.mod mypolicy.te
semodule_package -o mypolicy.pp -m mypolicy.mod
semodule -i mypolicy.pp 

Bạn có thể thấy dễ dàng hơn khi đặt tất cả các từ chối AVC vào một tệp riêng biệt và sau đó xóa những từ chối không liên quan đến vấn đề mà bạn đang cố gắng giải quyết trước khi sử dụng audit2alow trên tệp. Nếu điều đó phù hợp với bạn hơn, bạn có thể bỏ qua các bước trung gian và chuyển thẳng đến tệp .pp

mèo myavcs.log | aud2allow -M mypolicy

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.