• 締切済み

SSH+VNC(PortForwarding)

自宅(Remote1:Win2000)から,外部のPC(PC-A:WinXp)を 遠隔操作しようと思いVNC+SSHに挑戦中です. 外部のPC(PC-A)はFW(PC-B:Linux)で守られており, あいているポートはSSH,HTTP,POP,SMTPなどに制限されています. PC-AにはVNCServerがインストールされていて,起動されております. 自宅から行った作業は以下のとおりです. 1.まず,TTSSHをRemote1にインストールし, SSHポート転送を設定. ・ローカルポート:5900 ・リモート側ホスト:FWのDomainName,ポート:5900 ・ローカルポート:5800 ・リモート側ホスト:FWのDomainName,ポート:5800 [設定の呼び出し]でTTSSHを常駐. 2.次にFW(PC-B)にSSHでアクセスし, ssh -L 5900:PC-A_IP:5900 FW_DomainName パスワード入力 ssh -L 5800:PC-A_IP:5800 FW_DomainName パスワード入力 3.Remote1でVNCViewerを起動し, localhost:5900を入力. OKボタンを押した瞬間,VNCViewerのウインドウが 消えてパスワードが聞かれません. しばらくするとRemote1上でVncViewerのエラーとして server closed connection unexpectedly が表示され, PC-BのTTSSHのターミナル上で channel 2: open failed: connect failed: Connection timed out と表示されます. ちなみに自宅側のルータは5900番ポート,5800番ポートがあいております. PC-B(FW)までは何らかのデータが行っていると思うのですが, PC-B(FW)からPC-Aまでデータが行っていないのでしょうか? どこで不具合が生じているのかわかりません. ご教授のほどよろしくお願いいたします.

noname#86965
noname#86965

みんなの回答

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.2

>PC-B,PC-A間のポート転送が出来ているか確認したい >のですが,なにかいい方法はありますか? うちの場合は、以下の構成でFWの内側のvncserverに外部から アクセスしています。 FWのiptablesでForwardのログを見れば、パケットがちゃんと 流れているかわかります。 クライアント WindowsXP vncclient putty(ssh2使用/トンネル設定) | ↓ [GlobalIP:ssh] FW Debian/Linux iptables(PortForward) | ↓ [localIP:ssh] RedHat9 sshd vncserver

noname#86965
質問者

補足

ありがとうございます. >FWのiptablesでForwardのログを見れば、パケットが >ちゃんと流れているかわかります。 $tail /var/log/message で確認したところ,iptablesのlogは取られていませんでした. そこで,lokkitでsshと5800,5900のポートを開放し, 以下のような設定をしました. /iptables -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT /iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT /iptables -A FORWARD -j LOG その後,再度アクセスしてみましたが,ログには何もメッセージが残っておりませんでした. 設定が間違っているのでしょうか? また,xjdさんの構成では,VncServerマシンに SSHデーモンを起動されているようですが, WinXPの場合でsshdは起動しておくべきなのでしょうか? (Windows版SSHdがあるかわかりませんが・・.) ご指導のほどよろしくお願いいたします.

回答No.1

Remote1:Windows2000で設定するLocalForwardは ・ローカルポート:5900 ・リモート側ホスト:PC-AのIPアドレス(か内部でDNSが有効ならマシン名),ポート:5900 でOKです。これならFW上でagentを走らせる必要もないでしょう。ところでfwにsshするとどこのマシンにログオンしたことになりますか?fwそのもの?それとも内部の別のマシン?

noname#86965
質問者

補足

ありがとうございます. 早々ですが, >agentを走らせる必要もないでしょう ssh -L 5900:PC-A_IP:5900 FW_DomainName これは,PC-B(FW)のポート5900とPC-Aのポート5900を ポート転送する意味だと思い実行しておりました. ちなみにPC-AはグローバルIPはもっておりません. Lan内のマシンで,ローカルIPのみしかもっておりません. >fwにsshするとどこのマシンにログオンしたことになりますか? SSHはFW自身にログオンしております. PingでPC-Aとの接続状態は確認いたしました. PC-B,PC-A間のポート転送が出来ているか確認したい のですが,なにかいい方法はありますか? よろしくお願いします. 以下,ネットワーク構成を示します.  PC-A(WinXp,ローカルIP)    |  PC-B(Linux,FW,グローバルIP)    | ----------------  Internet ----------------    |  ルータ(ADSL,動的IP)    |  Remote1(Win2000,ローカルIP)

関連するQ&A

  • ssh用ポート番号の変更

    失礼します。 現在ローカルなネットワーク内でssh22番ポートを使用してサーバーを遠隔操作しているのですが、 このサーバーをグローバルなネットワーク内に置く前にsshのポートを別のポートに変更しようと考えていまして、 そこでちょっとつまっています・・・。 サーバー機はCentOSになります。 まず、sshの設定でsshd_ifconfigに「Port (新しいポート番号)」と書き加え、 /etc/servicesで #ssh 22/tcp SSH Remote Login Protocol #ssh 22/udp SSH Remote Login Protocol ssh (新ポート)/tcp SSH Remote Login Protocol ssh (新ポート)/udp SSH Remote Login Protocol としました。 また、サーバー側のファイアウォール設定で、 システム→管理→ファイアウォールでその他のポートに新しいポートを追加しました。 しかし、クライアント側で >ssh -X -p (ポート) ip としても ssh: connect to host ***.***.***.*** port ***: Connection refused となってしまいます。 どなたかご教授ください。

  • VNCとsshについて

    VNCを使ってLAN上のPCをリモートしています。がそれには飽き足らず 外部から(正確には会社)からルーター越えで自宅PCを操作してみました。 実験成功。があまりにも簡単で少し怖くなり調べたところ「非常に危険」パスワードなど無に等しい」などと物騒なキーワードのオンパレードでした。 一寸の光明「ssh」に賭けてみたいのですが、さっぱりです。理解不能です。  「ssh」について詳しくなくてもいいのですがやさしく教えてください。 またそのようなサイトがあればURLも教えてください  OSはWin98です

  • ssh で、いつの間にか、リモートPCから勝手に接続を切られる

    Ubuntu 8.04 が入った2台のPCを持っています(PC A と PC B とします。)。 両方のPC に Open SSH 4.7 をインストールしました。 端末で、PC A から PC B に ssh でログインしたのですが、 端末をしばらく放っておくと、 ------------------- Read from remote host PCB: Connection reset by peer Connection to PCB closed. ------------------- と表示されて、PC B への接続が勝手に切られてしまいます。 接続が切れないようにする方法はないでしょうか? ネットで情報を調べて、PC Aの /etc/ssh/ssh_config に ServerAliveCountMax 480 ServerAliveInterval 300 と書いておいたので、300秒(=5分)×480 = 40時間は切れないはずなのですが、 7時間くらいで切れてしまいます・・・。 http://www.unixuser.org/~euske/doc/openssh/jman/ssh_config.html よろしくお願いします!

  • SSH

    [PC1:Fedora6]マシンから、[PC2:Fedora6]マシンへ、 sshを使ってログインしての作業は問題なくできていました。 [PC1]にて、[PC3:CentOS(仮想マシン)]を立ち上げました。 [PC1]から[PC3]へsshでログインしようとすると、以下のエラーがでます。  "ssh_exchange_identification: Connection closed by remote host" [PC3]から[PC1]へsshでログインしようとすると、以下のエラーがでます。  "セグメント違反です。" なにか、設定等必要なのでしょうか? よろしくお願いいたします。 * /etc/hosts.allowおよび/etc/hosts.denyには、 コメント以外なにも書かれていませんでした。

  • WindowsからMacOSXにSSHログインできない

    puttyを使ってLAN上のMacOSXへsshログインしようとすると 「ネットワークエラー接続が拒否されました。」 となります。そこでLinuxからためしてみましたら ssh 192.168.0.3 ←マックのアドレス ssh: connect to host 192.168.0.3 port 22: Connection refused このようにやはり接続できません。どうしたら接続できますでしょうか? ちなみに、マック側からはLinuxマシンにssh接続できるのですが‥ port 22: Connection refused と出るのでポートを開ければ良いのかとは思うのですが、開け方がわかりません。よろしくお願いします。

  • sshで接続できない

    こんにちは。 サーバーへsshで接続できないので質問させていただきます。 クライアントから、 $ ssh -p **** user@***.***.***.*** と実行すると、 ssh: connect to host ***.***.***.*** port ****: Connection refused と返されました。 サーバー側で # /etc/init.d/ssh start を叩いても、 # ps -A | grep ssh には何も表示されません。 インストールしていないのかと思い、 # apt-get install openssh-server を叩くと、インストール済みだと返されました。 OSはUbuntu Server 14.04 LTSで、sshのポートが解放できているのは確認しています。 サーバー運営はほぼ初めてなので、色々と筋違いなこと等言っているかもしれませんが、 よろしくお願いします。

  • NAT経由でSSHでつなげない

    自宅にSSHを立てて、職場からつないでみたいと思って 自宅にCygwinのOpenSSHを入れてみました。 (自宅も職場もOSはWinXPProです) ネットで調べながら、どうにかOpenSSHは入って、 localhostからttsshでログインすることができたんですが 職場から家にログインすることができませんでした。 職場の方はファイアウォールの中で、socks5経由です。 自宅の方はルータを入れて、ポート22をあけてます。 ためしに自宅に立てたftpでは、ちゃんと入れました。 ttshもsocksを通してあります。つながらないというより むしろつなぎに行って拒否されてる感じでした。 OpenSSHの設定で、接続できる相手を限定してるか ルータのあけるポートが足りないかかな?と思って 調べてみたんですが、よくわかりませんでした。 (OpenSSHの設定は「ssh-host-config -y」でやりました) どなたかおわかりになる方、ご教授願います。

  • サーバ側ではsshポートフォワーディングのプロセスが表示されない!?

    RedHat9の環境です。 [user01@local.host.co.jp]$ ssh -L 60143:remote.host.co.jp user01@remote.host.co.jp password: [user01@remote.host.co.jp]$ として ポートフォワーディングを行いました。 ローカルホスト上では [root@local.host.co.jp]# ps ax | grep ssh 24421 pts/5 S 0:00 ssh -L 60144:remote.host.co.jp:143 user01@remote.host.co.jp となりますが、 [root@remote.host.co.jp]# ps ax | grep ssh 10078 ? S 0:01 [sshd] となってしまいます。 サーバ側(remote.host.co.jp)でポートフォワーディングを監視するにはどうしたらいいのでしょうか?

  • SSHが接続できません

    いつもお世話になっています。 最近、自宅でルータを使ってPC/2台でLANを構築したのですが、Telnet、FTPはもちろんのことSSHも接続できません。(接続タイムアウトになります)TeraTermのttsshで接続しようとしています。WAN側のホストへは接続できます。 LANの構成はRedHat8.0とWinMEです。RedHatをサーバとして使う予定です。 サーバ側のsshdも起動しているようです。 ping、trecertは通ります。ルータのLAN側で制限がかかっているのでしょうか? どなたかお分かりになるかたご教授をお願いいたします。

  • sshコマンド

    Cygwinからサーバにログインするため #ssh root@192.168.0.2 としましたが 次のような返事が返ってしまい途方にくれています。 @@@@@@@@@@@ @warning remote host identification has changed @@@@@@@@@@@ rsa hostkey for 192.168.0.2 has changed and you have requested strict checking host key verification failed RSA認証に失敗したようなことが書いてありますが、 元々はパスワード認証をしたいのです。 sshd_configファイルにおいても root権限によるパスワード認証を認める設定をしています。 どのようにしたらパスワード認証ができるでしょうか。