Xác thực các yêu cầu http EXCEPT cho từ IP này


9

Tôi đã có Nagios chạy trên máy chủ ở đây (CentOS 5.3 w / Apache 2.2.3-22.el5.centos) xác thực với máy chủ LDAP của tôi và tất cả đều hoạt động tốt. Tuy nhiên, tôi muốn có một số IP có thể xem trang trạng thái Nagios mà không cần xác thực. Nagios có tùy chọn này để gán người dùng cho người không xác thực:

authorized_for_read_only=guest
default_user_name=guest

Nghe có vẻ đúng, nhưng điều đó không quan tâm đến xác thực Apache. Cấu hình apache hiện tại của tôi trông như:

<Directory "/usr/lib64/nagios/cgi">
   AllowOverride None
   Order allow,deny
   Allow from all
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /etc/nagios/misc/htpasswd.users
   Require valid-user

   AuthBasicProvider file ldap
   AuthzLDAPAuthoritative off
   AuthBasicAuthoritative On
   AuthLDAPGroupAttribute LDAPmember
   AuthLDAPURL (my server stuff)
   Require ldap-group CN=nagios,ou=groups,DC=local
</Directory>

Điều đó đang hoạt động, nhưng tôi muốn có một số cách để nói "IP này ở đây, anh ấy có thể bỏ qua công cụ xác thực đó". Lệnh Apache Thỏa mãn có vẻ như sẽ hoạt động, vì vậy tôi đã thử điều này:

<Directory "/usr/lib64/nagios/cgi">
   AllowOverride None
   Order allow,deny
   Allow from (IP)  <---- changed
   Deny from all    <---- changed
   Satisfy any      <---- changed
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /etc/nagios/misc/htpasswd.users
   Require valid-user

   AuthBasicProvider file ldap
   AuthzLDAPAuthoritative off
   AuthBasicAuthoritative On
   AuthLDAPGroupAttribute LDAPmember
   AuthLDAPURL (my server stuff)
   Require ldap-group CN=nagios,ou=groups,DC=local
</Directory>

Nhưng nó đã không thay đổi hành vi của trang web. Suy nghĩ? "Làm việc cho tôi"? Con trỏ đến ghi chú nâng cấp thích hợp nói rằng tôi sẽ khắc phục vấn đề này nếu tôi có xung quanh để nâng cấp máy chủ của mình? :)

---- cập nhật w / câu trả lời ----

Tôi lấy ra các công cụ tệp hoặc LDAP và làm việc cho tôi. Tôi có lẽ đã làm điều gì đó sai trong đó, nhưng bất cứ điều gì, nó hoạt động bây giờ. Đây là cấu hình cuối cùng của tôi trông như thế nào:

<Directory "/usr/lib64/nagios/cgi">
   Options ExecCGI
   AllowOverride None
   Order allow,deny
   Allow from 192.168.42.213
   Satisfy any
   AuthName "Nagios Access"
   AuthType Basic

   AuthBasicProvider ldap
   AuthzLDAPAuthoritative off
   AuthBasicAuthoritative On
   AuthLDAPGroupAttribute LDAPmember
   AuthLDAPURL (my server stuff)
   Require ldap-group CN=nagios,ou=groups,DC=local
</Directory>

Câu trả lời:


8

"Đáp ứng bất kỳ" thực sự là những gì bạn cần sử dụng. Có một ví dụ hay trên wiki Apache. Để trích dẫn trực tiếp từ nguồn đó:

<Directory /home/www/site1/private>
  AuthUserFile /home/www/site1-passwd
  AuthType Basic
  AuthName MySite
  Require valid-user
  Order allow,deny
  Allow from 172.17.10
  Satisfy any
</Directory>

Tôi quyết định bắt đầu giảm cấu hình của mình xuống, và nó đã hoạt động! Cảm ơn.
Bill Weiss
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.