拒绝非本地主机尝试访问Webrick

时间:2009-07-20 15:33:32

标签: ruby security webrick

我正在尝试阻止所有非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.

这容易打破吗?我的想法是主机名很难欺骗网络服务器本身。

1 个答案:

答案 0 :(得分:2)

也许只是将服务器绑定到localhost的ip地址127.0.0.1然后你不必担心非localhost连接:

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

(上面的代码不在我的脑海,但我相信你明白了)