2014-06-22 1 views
0

Clodflare DNS를 사용하고 있습니다. 특정 IP에 특정 파일에 대한 액세스 만 허용하려고합니다.

올바른 IP를 올바르게 감지하도록 lighttpd.conf를 어떻게 설정할 수 있습니까? 나는 access.log를 위해 그것을하는 방법을 안다. $ HTTP [ "remoteip"]를 다른 것과 함께 사용할 수 있습니까?

$HTTP["remoteip"] == "xx.xx.xx.xx" { 
    url.access-deny = ("") 
} 

나는 다음 그러나 didnt 한 작업으로 시도 :

이 오늘 그것을 어떻게

$HTTP["remoteip"] ==""{ 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 

답변

1

우리는 실제로 우리의 지식 기반에 몇 가지 솔루션이 약 CloudFlare and Lighttpd 그 수도 올바른 방향으로 가리 키세요.

+0

감사합니다. 그러나 설정 예제의이 부분은 나를 위해 작동하지 않았다 : '$ HTTP [ "remoteip"] == $ HTTP [ "remoteip"] == "199.27.128.0/21"{ extforward.forwarder = ("all"=> "trust") extforward.headers = ("CF 연결 IP") $ HTTP [ "remoteip"] == "104.16.0.0/12"{ extforward.forwarder = $ HTTP [ "remoteip"] ==' Lighttpd는'<'문자에 대해 불평합니다. 중복 IP 범위 (199.27.128.0/21) – Kaah

0

Cloudflare의 설정은 중복 된 IP 항목으로 인해 오류가 발생하는 것 같습니다.

다음은 나를 위해 적합한 설정입니다. 나는 server.modules { .. } 후 넣어 :

$HTTP["remoteip"] == "199.27.128.0/21" { 
extforward.forwarder = ("all" => "trust") 
extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "173.245.48.0/20" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "103.21.244.0/22" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "103.22.200.0/22" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "103.31.4.0/22" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "141.101.64.0/18" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "108.162.192.0/18" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "190.93.240.0/20" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "188.114.96.0/20" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "197.234.240.0/22" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "198.41.128.0/17" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "162.158.0.0/15" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 
$HTTP["remoteip"] == "104.16.0.0/12" { 
    extforward.forwarder = ("all" => "trust") 
    extforward.headers = ("CF-Connecting-IP") 
} 

을이 $의 HTTP와 함께 [ "remoteip을"] 잘 작동합니다.

관련 문제