お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2010-06-25 23:20:25

hiroshiharada
メンバ
登録日: 2010-06-25

Ubuntu 10.04 Desktopでvncを利用したxdmcp経由のログインができない

WindowsからリモートでUbuntuにGUIログインするため、

xinetd + vnc4server + gdm

の環境を構築しました。しかしながら、WindowsからVNCで接続すると、白黒の画面とXの形状のカーソルのみが表示される状態でgdmのログイン画面は表示されません。同様の環境を構築された方がいましたらアドバイスいただけいないでしょうか。

-------------------------------------
[環境]
-------------------------------------

クライアント : Windows 7 (32-bit)
サーバ : Ubuntu 10.04 Desktop(64-bit) + ubuntu-desktop-jaパッケージ

-------------------------------------
[作業内容]
-------------------------------------

(1) xinetdとvnc4serverのインストール
  apt-get install xinetd vnc4server

(2) /etc/servicesの修正
  ↓(追加)
  vnc  5900/tcp  # vnc-server

(3) /etc/xinetd.d/vncの作成
  service vnc
  {
    disable            = no
    flags            = REUSE
    socket_type        = stream
    wait            = no
    user            = nobody
    server            = /usr/bin/Xvnc
    server_args        = -inetd -query localhost -once -geometry 1024x768 -depth 24 --securitytypes=none
    log_on_success    += DURATION
    log_on_failure    += HOST
  }

(4) /etc/gdm/custom.confの作成
  # GDM configuration storage

  [daemon]

  [security]
  DisallowTCP=false
  AllowRemoteRoot=false

  [xdmcp]
  Enable=true
  DisplaysPerHost=2

  [greeter]

  [chooser]

  [debug]

(5) xinetdとgdmの再起動
  /etc/init.d/xinetd restart
  /etc/init.d/gdm restart

-------------------------------------
[状況]
-------------------------------------

WindowsからVNC(UltraVNC)で接続すると白黒の画面が表示され、Xの形状のカーソルが表示されます。昔懐かしいtwmを思い出すような画面です。
いくら待ってもウィンドウマネージャーなどは起動しません。

-------------------------------------
[調べたこと]
-------------------------------------

  (1) netstatしてみた

    # netstat -a | grep xdmcp
    udp6       0      0 [::]:xdmcp              [::]:*

    上記のようにgdmがIPV6でXDMCPの接続を待っているようなので、/etc/sysctl.confに

      net.ipv6.conf.all.disable_ipv6=1

    を追加し、IPV6を無効にしてみましたが現象は変わりません。gdmはやはりIPV6で接続を待っています。

オフライン

 

#2 2010-06-26 08:47:14

hmatsue
アドバイザ
登録日: 2009-03-10

Re: Ubuntu 10.04 Desktopでvncを利用したxdmcp経由のログインができない

https://bugs.launchpad.net/gdm/+bug/408417
あたりで、[daemon]の記述について、いろいろ議論されているようです。
#15や#44あたりを参照してRemoteGreeterを設定してみると状況変わりますでしょうか。
目的や用途によってはxrdpの方が簡単かも知れません。

オフライン

 

#3 2010-06-27 00:37:23

hiroshiharada
メンバ
登録日: 2010-06-25

Re: Ubuntu 10.04 Desktopでvncを利用したxdmcp経由のログインができない

お返事ありがとうございます。

現状、Windows PC同士をUltraVNCでリモート接続しているので、それを利用したいということもあり、xrdpではなくVNCを使いたいと考えています。

その後、いろいろと試してみた結果、OpenVPNが影響していることがわかりました。

/etc/init.d/openvpn stop

と実行してOpenVPNを停止してみたところ、vnc4serverからgdmへのXDMCPの接続ができるようになりました(Windows側からUltraVNCでgdmログインできました)。

その後、/etc/init.d/openvpn start

そしてOpenVPNを起動したところ、VNCでの接続はできなくなりました(OpenVPNを起動しているだけでVPN接続は行っていません)。

OpenVPNはルーティングモード(dev=tun)で動作させていました。
その設定を変更し、OpenVPNをブリッジモード(dev=tap)で起動してみたところ問題なくXDMCP接続が行えました。

元々、OpenVPNはブリッジモード(dev=tap)で動かしたかったのですが、面倒なのでルーティングモード(dev=tun)に逃げていたので、現状のブリッジモードで問題はありません。
WindowsからVNCでvnc4server経由でgdmにXDMCP接続でき、OpenVPNで外部からアクセスもできますので問題は解決しました。

ただ、OpenVPNがどう影響していたのかはわかりません。
問題が発生していたOpenVPNのルーティングモード(dev=tun)ですが、肝心のルーティングの設定はまだ実施していませんでした。
よって、OpenVPNをインストールし、起動しただけで自動的に設定が変更される部分が影響していると思うのですが....。

OpenVPNのルーティングモード(dev=tun)の起動中と停止中でネットワーク関連の設定の差異を比較してみたところ以下でした。

======== iptables -Lの差異 ========
変化なし

======== routeの差異 ========

OpenVPN起動中は以下が追加される。

10.8.0.2         *                  255.255.255.255 UH    0      0        0 tun0
10.8.0.0        10.8.0.2          255.255.255.0    UG    0      0        0 tun0

WindowsからのVNC接続はeth0に対して行っているので上記のルーティングの変化は関係なさそうですが。

======== ifconfigの結果 ========

OpenVPN起動中は以下のインタフェースが追加される。

tun0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
      inet addr:10.8.0.1  P-t-P:10.8.0.2  Mask:255.255.255.255
      UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:100
      RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

これもルーティング情報とあっているように見えます。

なお、Fedora12ではOpenVPNのルーティングモード(dev=tun)とXDMCP(gdm)は共存できています。

以上、報告です。

ありがとうございました。

オフライン

 

Board footer

Powered by FluxBB