2009-07-20 4 views
1

Webrick 프로세스에 액세스하려는 모든 비 로컬 호스트 시도를 차단하려고합니다. 이것은 현재 코드입니다Non-localhost 거부 Webrick에 액세스 시도

def do_GET(req, res) 
    host_name = "localhost:3344".split(":")[0] 
    if host_name != "localhost" && host_name != "127.0.0.1" 
     puts "Security alert, accessing through #{host_name}" 
     return 
    else 
     puts "we're fine, #{host_name}" 
    end 
# etc. 

쉽게 쉬울 수 있습니까? 내 생각에 호스트 이름은 웹 서버 자체에 스푸핑하기가 어렵습니다.

답변

2

는 어쩌면 단지 로컬 호스트의 IP 주소 127.0.0.1에 서버를 결합하고 당신은 습관이 아닌 로컬 호스트 연결에 대해 걱정할 필요가 :

s = WEBrick::HTTPServer.new(:Port => 3344, :BindAddress => "127.0.0.1") 
s.start 

(위의 코드는 내 머리하지만 메신저의 상단 꺼져 당신은 아이디어를 얻으십시오)

+0

굉장합니다. 나는 당신의 예에서 이것을 알아낼 것입니다. 고맙습니다! –

+0

언급하는 것을 잊었다 : 이것은 완벽하게 작동하고, 실제로 선은 당신이 말하는대로이다. –

+0

멋지다. 다행이다. :) – QAZ

관련 문제