2009-04-03 30 views
16

Tôi có ứng dụng được lưu trữ Apache UNIX và tôi cho phép người dùng truy cập url ứng dụng từ môi trường citrix (từ máy citrix).Chỉ cho phép yêu cầu từ IP cụ thể

Tuy nhiên, hiện tại có thể truy cập url từ tất cả các máy được kết nối. Tôi muốn đặt hạn chế rằng nó chỉ nên được truy cập từ máy citrix. Vì vậy, nếu bất kỳ ai cần truy cập vào nó, anh ta cần truy cập vào máy citrix.

Tôi đã thử với dưới đây:

<Directory /APP> 

    Order Deny,Allow 

    Deny from all 

    Allow from 160.120.25.65 

    Allow from 127 

</Directory> 

nó đã không làm việc. Bất kì lời đề nghị nào?

Vài câu trả lời với giải pháp iptables, tuy nhiên cái này được tải trên Solaris (nó không có tường lửa tích hợp cho hệ điều hành dưới dạng Linux).

+4

tôi tình cờ thấy nó hữu ích mặc dù tôi đồng ý đó là off-topic. – icedwater

Trả lời

36

này nên làm những gì bạn cần:

<Directory /APP> 

    Order Allow,Deny 

    Allow from 160.120.25.65 
    Allow from 127.0.0.0/8 

</Directory> 

Xem tài liệu mod_authz_host để biết chi tiết.

-2

Tôi có thể sử dụng quy tắc iptables cho việc này. Tôi không chắc chắn ví dụ bạn đăng là gì, nhưng bạn sẽ có thể cấu hình bất kỳ tường lửa nào hoạt động như bạn muốn.

+0

Đó là một phần của tệp cấu hình Apache. –

+0

iptables không hoạt động kém khi bạn sử dụng SNI. – Izzy

2

Bạn đang chạy phiên bản Apache nào? IP cho phép các cơ chế là, AFAIK, được cung cấp bởi mod_authz_host, được giới thiệu trong 2.2 (tốt, 2.1 về mặt kỹ thuật). Nếu bạn có 2.2, hãy đảm bảo rằng nó không được biên dịch với mod_authz_host bị tắt.

Nói chung, bạn có thể tìm thấy giải pháp đơn giản và mạnh mẽ hơn là iptables hoặc tường lửa khác được đề xuất trong các câu trả lời khác.

-1

Tôi sẽ đề xuất Iptables cho mục đích này. đặt một quy tắc trong iptables rằng bất cứ nơi nào cổng đích là số cổng của máy apache của bạn và ip nguồn là địa chỉ ip của máy critix, máy linux sẽ thả gói đó. Bằng cách này sẽ giải quyết vấn đề của bạn được cung cấp không có ứng dụng khác được lưu trữ trên apache của máy tính của bạn mà nên được mở cho tất cả các ips. Một ví dụ về quy tắc quan điểm có thể là: -

iptables -I INPUT 1 -s 160.120.25.65 -d <port_of_apache_on_your_machine> -j DROP 

này nên giải quyết vấn đề của bạn, một khi bạn thay thế bởi giá trị thích hợp của nó

+0

Ứng dụng được lưu trữ trên UNIX. Tôi có thể thêm điều này trong tập tin httpd.conf không? – Mutant

+0

Bạn phải thêm tệp này vào tệp .bashrc của người dùng khởi động máy hoặc thêm chúng làm quy tắc mặc định của iptables. Điều này không được thêm vào tệp httpd.conf. –

Các vấn đề liên quan