2013-01-22 96 views
0

有沒有人試圖在Ruby on Rails中限制本地開發服務器?保護本地開發Ruby on Rails

我正在開發一個項目在我的電腦上,想知道是否有辦法限制這個,所以只有localhost(我的機器)可以提出請求。

目前網絡上的任何人都可以導航到我的機器,並在開發中運行時訪問我的應用程序。這是RoR的一個非常基本的安裝。

+0

幫助你不信任你的同事?你爲什麼需要保護它?如果您有疑慮,請告訴您的管理層告訴所有人關閉您的箱子。 –

+0

在開發過程中更多的是練習良好的安全性。 – calabi

+0

在室內環境中,尊重他人的工作環境應該是衆所周知的。如果你不能指望那麼,是的,立即啓用基本認證,並開始尋找更成熟的工作。 –

回答

4
bundle exec rails server -b 127.0.0.1 
+0

完美!謝謝! – calabi

+0

127.0.0.1被實現以允許這種情況 - 僅在主機訪問內。 –

1

從網絡的角度來看,最好的辦法是保護你的iptables。

從房子的鐵軌一側,你可以使用basic auth或類似的設計。或者將request object與之前的過濾器一起使用並將您的機器列入白名單。

祝你好運!

+0

我喜歡添加基本身份驗證的想法,我的應用程序並不需要任何形式的身份驗證,但我想成爲唯一可以訪問的身份驗證。綁定到一個地址並添加基本身份驗證將是我的腰帶和大括號。 – calabi

1
before_filter :restrict_access 
def restrict_access 
    return unless config_option(:allowed_IPs) 
    if not config_option(:allowed_IPs).include?(request.env['REMOTE_ADDR']) 
    render :file => "#{Rails.public_path}/401.html", :status => :unauthorized 
    return 
    end 
end 

(/config/site_config.yml): 
development: 
production: 
    allowed_IPs: 
    - IP1 
    - IP2 
    # etc. 

隨着this post

+0

謝謝您對未來的重要參考。 – calabi