Freesshdを利用し、自宅PCのデータに外部からアクセスしようとしています。
サーバとなるマシンのOSはWindows7です。
クライアントはwinscpを利用しています。
ローカル環境(192.168.xx.x)では接続できます。
22番ポートはweb上のサービスを利用して開いているのを確認しました。
ファイアーウォールはカットしていますし、その他FWソフトは利用していません。(avast Freeのみ利用)
また、一度は外部から接続ができ、ファイルのやり取りもできました。
そのときはFreesshdはサービスとして利用していました。
サービスとして利用すると、アイコンが表示されない(ですよね?)ので一旦サービスでの動作を止めショートカットをスタートアップに入れる方法で起動させました。
この状態でもローカルでは接続が可能です。
外部で接続するとタイムアウトとなってしまいます。
この場合、何をチェックしたらよいでしょうか?
順に確認してみましょう。
まずは外部からパケットが届いているか確認してみましょう。
ファイアーウォールとそのログを有効にしてください。
http://technet.microsoft.com/ja-jp/library/cc754451.aspx
http://technet.microsoft.com/ja-jp/library/cc753781.aspx
ローカルネットワークから接続してログに記録されていることを確認してください。
続いて外部から接続を試み、ログに記録されているか否かを確認してください。
ログに記録されていないなら、パケットがPCまで届いていません。
外部との接続やルーティングはどうなっていますか?
ルータのファイアーウォールやポートフォワーディングの設定はあっていますか?
外部から見たIPアドレスはあっていますか?
ルータにもよりますが、PCと同じくファイアーウォールを設定してログを確認することで、外部からルータまでパケットが届いているか確認できるかもしれません。
パケットがルータまで届いていないのであれば、外部の問題です。IPアドレスなど確認してみてください。
パケットがルータまで届いているのであれば、ルータの設定の問題の可能性が高いです。
ポートフォワーディングは静的に設定していますか?UPnPですか?IPアドレスはあっていますか?
どのように設定されるべきか、設定されているか、確認してみてください。
もしPCのファイアーウォールログにパケットが記録されているならPCまではパケットが届いていることになります。
その場合はnetstatで本当にプロセスがポートを開いているのか確認してみます。
http://www.atmarkit.co.jp/fwin2k/win2ktips/234netstat/netstat.html
リッスンしているポートの調査を参照してください。
TCP 0.0.0.0:22 0.0.0.0:0 LISTENING
返答ありがとうございます。
2012/06/22 18:45:20>外部から見たIPアドレスはあっていますか?
これでした。
PC再起動後にグローバルIPアドレスが変わっていて、Dice起動が出来ていなかったためDDNSのIP更新が出来ていないだけでした。
アドバイスありがとうございました。