Ruby on Rails開発サーバーへの接続に問題があります:
別のWebブラウザに192.168.0.10:3000と入力すると、接続がタイムアウトします。
問題はファイアウォールの構成にあると思われますが、すべてを開こうとしたのですが、うまくいかないようです。
サーバーはローカルネットワーク上にあり、静的IPがあり、正しく構成されています。SSHでボックスに接続でき、インターネットに接続して更新できます。 CentOS 6.3を実行しており、次の手順に従ってRailsをインストールしました: http://itekblog.com/Ruby-on-Rails-on-centos-6-3-is-簡単/
サーバーが稼働しています:wget localhost:3000で「ようこそ」ページをダウンロードできます
私はそれがすべてのインターフェースでリッスンするべきだと思います:
[sandy@pops testproject4]$ Rails server
=> Booting WEBrick
=> Rails 3.2.8 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2012-08-18 18:29:04] INFO WEBrick 1.3.1
[2012-08-18 18:29:04] INFO Ruby 1.8.7 (2011-06-30) [i386-linux]
[2012-08-18 18:29:04] INFO WEBrick::HTTPServer#start: pid=9881 port=3000
そして私はすべてのポートを開いたと思います
[sandy@pops testproject4]$ Sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-Host-prohibited
ACCEPT all -- anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
REJECT all -- anywhere anywhere reject-with icmp-Host-prohibited
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
これを修正する助けがあれば大歓迎です
砂の
Open all行を追加したときに、REJECTallルールの直後にINPUTチェーンの最後に忠実に追加したiptables -A INPUT ...
を使用したため、問題が発生したようです。
Iptablesは最初の一致で機能するため、accept allルールが一致することはないため、ポート3000はブロックされます。
iptables -I...
を使用して、チェーン内の特定の場所または先頭にルールを挿入する必要があります。
iptables -I INPUT -p tcp --dport 3000 -j ACCEPT
あなたがやりたいことをする必要があります。
ルールを保存して、再起動後に問題がなければ、次のようにします。
service iptables save