15.3 トラブルシューティング

ここでは、FreeNXを使用するときに最も頻繁に発生するいくつかの問題について説明し、それらの問題に適用可能な解決策を提供します。

15.3.1 接続を確立しようとしているときにknxがハングアップする

knxを使用してNXサーバへの接続の確立を試みています。接続の開始時に、knxがユーザの認証に失敗し、リモートセッションが開始されていません。

このエラーの発生原因を判別し、問題の解決方法を見つけるには、以下の手順に従います。

  1. Novell AppArmorがサーバマシン上で実行しているかどうかをチェックして、15.3.2項 「NXサーバへの接続が確立できません」に説明されているように進めます。

  2. knxとサーバ間の接続の確立を再試行します。

  3. YaST Firewallモジュールを開始してSSHが[外部ゾーン]用の[Allowed Services]にリストされているかどうかをチェックすることによって、クライアント側のファイアウォールがSSHトラフィックを許可しているかどうかをチェックします。SSHが有効になっていない場合は、有効にします。

  4. 15.1項 「NXでの作業」にリストされているSSHおよびNXポートに対するサーバ側のファイアウォールをチェックします。これらのポートが閉じている場合は、開きます。

  5. knxとサーバ間の接続の確立を再試行します。

  6. サーバマシンにrootとしてログインし、以下の手順に従います。

    1. /tmpディレクトリに入り、NXサーバのロックファイルをチェックします。

      cd /
      ls -ltr .nX*
    2. 古いロックファイルがある場合は削除します。

    3. ログアウトします。

  7. knxとサーバ間の接続の確立を再試行します。

  8. クライアントマシンで、YaST Software Managementモジュールを使用してknxクライアントを削除して再インストールします。

    上記の手順すべてに従って実行している場合は、ここでサーバに接続できています。

15.3.2 NXサーバへの接続が確立できません

knxを起動して接続をを開始した後に、次のエラーメッセージが表示されます。

Connection to NX server could not be established. Connection timed out.

この問題の原因を判別するには、以下の手順に従います。

  1. サーバにrootとしてログインします。

  2. dmesgコマンドの出力で次のようなエントリがないかチェックします。

    SubDomain: REJECTING r access to /var/lib/nxserver/home/.ssh/authorized_keys2 (sshd(31247) profile /usr/sbin/sshd active /usr/sbin/sshd)
    

    このエントリは、サーバ上で実行しているNovell AppArmorがいくつかのNX固有ファイルにアクセスするためのsshデーモンを許可しないことを示しています。

  3. サーバマシンのAppArmorを停止します。

    または

    sshdプロファイルを学習モードにし、NXファイルが既存のプロファイルにアクセスするパーミッションを追加します。詳細については、『Novell AppArmor 2.0 アドミニストレーションガイド』を参照してください。

  4. サーバへの再接続

15.3.3 ユーザ認証は正常に実行されましたが、リモート接続が確立されませんでした

knxを実行してセッションを開始した後に、knxがユーザの認証に成功しましたが、ターミナルウィンドウには新しいセッションの代わりに次のようなエラーメッセージが表示されます。

Could not yet establish the connection to the remote proxy. Do you
    want to terminate the current session?

サーバのファイアウォールで開かれていないNXリモートセッションのネゴシエーションに上位ポートが使用されたため、接続に失敗しました。サーバのファイアウォール設定を調整するには、15.1項 「NXでの作業」に説明されているように進めます。