目標:
LAN環境に2台のコンピューター([コンピューターA]と[コンピューターB]と呼びます)があり、[コンピューターA]から[コンピューターB]にログインしたいと思います。
[コンピューターA] Remote Desktop Viewer
にVNCクライアントがあり、[コンピューターB]にDesktop Sharing Preferences
をセットアップしています。以下のスクリーンショットを参照してください。 [コンピューターA]のLANIPアドレスは192.168.0.1で、[コンピューターB]のLANIPアドレスは192.168.0.2です。
両方のコンピューターは互いにpingを実行しても問題ありません。
質問:
私の質問は、[コンピューターA]から[コンピューターB]に接続するにはどうすればよいですか?
エラーメッセージ:
接続しようとすると、現在次のエラーメッセージが表示されます。
connection to 192.168.0.2 was closed
192.168.0.2は[コンピューターB]のIPアドレスです。
ポート/ファイアウォール:
Sudo lsof -i -P | grep -i listen
を実行すると、ポート5900が表示されません。ファイアウォールもインストールしていません。 [コンピューターA]と[コンピューターB]の両方にGufwをインストールしました。設定方法がわかりません。 [コンピューターB]でvncの着信接続を許可し、[コンピューターA]でvncの発信接続を許可するように設定しますか?
その他の情報:
Computer A = 192.168.0.1 = Ubuntu 12.04
Computer B = 192.168.0.2 = Debian Stable
両方とも完全に更新されています
IPTABLES(サーバーとクライアントで同じ):
Chain INPUT (policy ACCEPT)
target - prot opt source - destination
Chain FORWARD (policy ACCEPT)
target - prot opt source - destination
Chain OUTPUT (policy ACCEPT)
target - prot opt source - destination
リスニングポート
Sudo lsof -i -P | grep -i listen
rpcbind 1853 root 8u IPv4 5755 0t0 TCP *:111 (LISTEN)
rpcbind 1853 root 11u IPv6 5762 0t0 TCP *:111 (LISTEN)
rpc.statd 1884 statd 8u IPv4 5818 0t0 TCP *:56428 (LISTEN)
rpc.statd 1884 statd 10u IPv6 5826 0t0 TCP *:39576 (LISTEN)
cupsd 2615 root 6u IPv6 17952 0t0 TCP localhost:631 (LISTEN)
cupsd 2615 root 8u IPv4 17953 0t0 TCP localhost:631 (LISTEN)
mysqld 3042 mysql 10u IPv4 7466 0t0 TCP localhost:3306 (LISTEN)
exim4 3855 Debian-exim 3u IPv4 8075 0t0 TCP localhost:25 (LISTEN)
スクリーンショット:
これは私が[コンピューターA]に持っているクライアントソフトウェアです:
これは私が[コンピューターB]に持っているソフトウェア(私が推測するサーバーソフトウェア)です:
ユーザーがすでにBにログインしている場合
使用しているVNCクライアントを指定しませんが、最も人気のあるクライアントの1つはVinagreです。これは通常、GNOMEデスクトップベースのディストリビューションに含まれており、大規模なディストリビューションのほとんどをカバーする必要があります。
まず、GNOMEのVNCクライアントであるvinagre
とVNCサーバーであるvino
がインストールされていることを確認する必要があります。
私のFedora19システムでは、これらのパッケージをインストールする必要がありました。
$ Sudo yum install vinagre vino
Ubuntuでは、apt
を使用して同じパッケージをインストールします。
$ Sudo apt-get install vinagre vino
インストールしたら、VNCサーバーがコンピューターBで実行されていることを確認する必要があります。これを行うには、設定->共有をナビゲートします。 「画面共有」を有効にするために選択できるメニュー。
Fedora
Ubuntu
注:次のようにコマンドラインからvinoの設定を呼び出すことができます。
$ vino-preferences
VNCサーバーがコンピューターBにセットアップされると、VNCクライアントであるvinagre
を使用して、コンピューターAからサーバーに接続できるようになります。これは、次のようにコマンドラインから実行できます。
$ vinagre vnc://greeneggs.bubba.net
ここで、vnc://...
は、上のスクリーンショットのように、vino
によって提供されるサーバー文字列です。
vino-preferences
と呼ばれます。vinagre
は、ベアで起動できるGUIでもあり、頻繁に使用するVNCサーバーのブックマークを維持できます。起動するには、コマンドvinagre
を使用します。ユーザーがまだBにログインしていない場合
Ubuntu
インストールx11vnc
$ Sudo apt-get install x11vnc
/etc/init/x11vnc.conf
ファイルを作成します。
start on login-session-start
script
x11vnc -xkb -noxrecord -noxfixes -noxdamage -display :0 -auth /var/run/lightdm/root/:0 -forever -bg -o /var/log/x11vnc.log
end script
再起動(再起動)後、x11vnc
は標準のVNCポート5900でリッスンしているはずです。
確認できます
$ Sudo netstat -tapn | grep 5900
tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN 2379/x11vnc
tcp6 0 0 :::5900 :::* LISTEN 2379/x11vnc
注:スクリプトは、Lightdmがlogin-session-start
イベントを発行し、x11vnc
が開始される起動イベントメカニズムに基づいています。
VNCサーバーの構成を確認し、指定するポート番号が5900+指定ユーザーのシーションの数であることを確認します。この番号はVNCサーバーの構成ページで指定します。番号を2として指定した場合は、5902を定義する必要があるポート番号。
これを試して。それはほとんど役に立たないかもしれません。
基本的に、VNCクライアントの構成によって異なります。ほとんどすべてのVNCクライアントは同様に機能しますが、VNCサーバーで使用されるIP /ホスト名とポート(デフォルトでは5900など)を指定する必要があります。
ファイアウォールの問題が疑われます。 [コンピュータB]で、を実行します
Sudo lsof -i -P | grep -i listen
ポート5900がVNC用に開いているかどうかを確認します。