6

最近、http: //guac-dev.org/のマニュアルにある Guacamole のインストール手順に従っていました。私のシステムはUbuntu 14.04です。

まず、必要な基本的な依存関係をインストールしました。

$ apt-get install -y apache2 libcairo2-dev libjpeg62-dev libpng12-dev libossp-uuid-dev libfreerdp-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libpulse-dev libssl-dev libvorbis-dev maven tomcat7
$ apt-get install -y libvncserver-dev

次に、マニュアルの指示に従ってそれらをダウンロードguacamole-server-0.9.8.tar.gzしてインストールしました。guacamole-0.9.8.war

$ tar xf guacamole-server-0.9.8.tar.gz
$ cd guacamole-server-0.9.8
$ ./configure
$ make
$ make install
$ cp guacamole-0.9.8.war /var/lib/tomcat7/webapps/guacamole.war
$ mkdir /etc/guacamole

/etc/guacamole/guacamole.properties以下を含むを作成しました。

guacd-hostname: localhost # although the guide says it should be guacd-host, but the example shown in http://guac-dev.org/doc/gug/configuring-guacamole.html is guacd-hostname
guacd-port: 4822
user-mapping: /etc/guacamole/user-mapping.xml

/etc/guacamole/user-mapping.xml以下が含まれます。

<user-mapping>
    <authorize username="USERNAME" password="PASSWORD">
        <protocol>vnc</protocol>
        <param name="hostname">localhost</param>
        <param name="port">5901</param>
        <param name="password">123456</param>
    </authorize>
    <authorize username="wangx" password="wangxiang">
        <protocol>vnc</protocol>
        <param name="hostname">192.168.1.111</param>
        <param name="port">5901</param>
        <param name="password">123456</param>
    </authorize>
</user-mapping>

次に、tomcat7 と guacd を再起動しました。

$ /etc/init.d/tomcat7 restart
$ /etc/init.d/guacd restart

GUACAMOLE_HOME環境変数が空です:

$ echo $GUACAMOLE_HOME

にも にも.guacamoleディレクトリはありません。にアクセスしたときに、ユーザー名「wangx」とパスワード「wangxiang」を入力しましたが、無効なログインが表示されます。/home/<user>/var/lib/tomcat7/webapps/guacamolehttp://localhost:8080/guacamole

どうすればこれを解決できますか? guacamole.propertiesandファイルはどこにありuser-mapping.xmlますか? 私は何か間違ったことをしましたか?

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

4

1 に答える 1

12

マニュアルの指示に従って:

...
$ mkdir /etc/guacamole

ワカモレは から自動的に読み取りません/etc/guacamole。から読み取りますがGUACAMOLE_HOMEこれは環境変数ではありません。これは、同じ名前の環境変数を介して決定できるGuacamole 構成ディレクトリのプレースホルダーですが、他の可能な場所があります。GUACAMOLE_HOMEGuacamoleマニュアルの説明から:

GUACAMOLE_HOME

Guacamole は、デフォルトで独自の構成ディレクトリからファイルを読み取り、このディレクトリが見つからない場合にのみクラスパスに頼ります。このディレクトリを見つけると、Guacamole は次の順序で試行します。

  1. システム プロパティ内で指定されたディレクトリguacamole.home
  2. 環境変数内で指定されたディレクトリGUACAMOLE_HOME
  3. ディレクトリ.guacamole。サーブレット コンテナを実行しているユーザーのホーム ディレクトリ内にあります。

このディレクトリはGUACAMOLE_HOME、ドキュメントの他の場所で参照されます。

Guacamole はGUACAMOLE_HOME、次のような構成ファイルの主要な検索場所として使用しますguacamole.properties。...

あなたguacamole.propertiesuser-mapping.xml問題ないように見えますが、ワカモレはそれらのファイルが 内にない限り見つけることができませんGUACAMOLE_HOME. .guacamoleこれを解決する非常に簡単な方法は、Tomcat ユーザーのホーム ディレクトリ内でにシンボリック リンクすること/etc/guacamoleです。Ubuntu の「tomcat7」パッケージの場合、Tomcat ユーザーのホーム ディレクトリは/usr/share/tomcat7次のとおりです。

$ ln -s /etc/guacamole/ /usr/share/tomcat7/.guacamole

.guacamoleまたは、ディレクトリを作成し、代わりにシンボリック リンクを作成することもできますguacamole.properties。の場所はuser-mapping.xml内で明示的に指定されてguacamole.propertiesいるため、 内に配置する必要はありませんGUACAMOLE_HOME

$ mkdir /usr/share/tomcat7/.guacamole
$ ln -s /etc/guacamole/guacamole.properties /usr/share/tomcat7/.guacamole/

これらの変更を行った後は、必ず Tomcat を再起動してください。

于 2015-11-04T00:47:31.260 に答える