【xrdp】xrdp0.6.0の導入

コンピュータ関連のことを、出来る時に、出来ることだけ。
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
今、複数ユーザ(500人程度)が使用するターミナルサービス環境を検討してるんですが、MSのターミナルサービスを使おうとするとライセンス費用(TS-CAL)が結構大変なことになることが判明・・

対抗案として、オープンソースでターミナルサーバを作れないかと探してみると、「xrdp」が良さそうだったので試してみます。

手順に関しては、こちらのブログエントリを参考に、というかほぼそのまま実行しました。
Linuxで複数ユーザで使えるリモートデスクトップ環境を作る
xrdp 0.5.0 (cvsベース)

環境はVMWareServer2.0上のCentOS5.5です。
OSインストール時にgnomeデスクトップ環境をオプションパッケージはデフォルトのままインストールしています。

意味は後から考えればよいかと思いまして、参照させていただいたブログの手順どおりに実施しました。

(1)cvsリポジトリから最新版のソースコードを入手します。2011/3/6時点で0.6.0が入手できました。
# mkdir xrdp
# cd xrdp
# cvs -d:pserver:anonymous@xrdp.cvs.sourceforge.net:/cvsroot/xrdp login
※パスワードは無しでOKです。
# cvs -z3 -d:pserver:anonymous@xrdp.cvs.sourceforge.net:/cvsroot/xrdp co .

(2)ファイルを修正します。
# cd xrdp
# vi xrdp/lang.c
if ((code >= 0) && (code < 128))
↓変更
if ((code >= 0) && (code < 135))

# vi xrdp/xrdp_types.h
struct xrdp_key_info keys_noshift[128];
struct xrdp_key_info keys_shift[128];
struct xrdp_key_info keys_altgr[128];
struct xrdp_key_info keys_capslock[128];
struct xrdp_key_info keys_shiftcapslock[128];
↓変更
struct xrdp_key_info keys_noshift[135];
struct xrdp_key_info keys_shift[135];
struct xrdp_key_info keys_altgr[135];
struct xrdp_key_info keys_capslock[135];
struct xrdp_key_info keys_shiftcapslock[135];

※128をすべて135に変更します。

(3)コンパイルしてインストールします。
# ./bootstrap
# ./configure

configure実行時にパッケージが足りないというメッセージが出てきたので、指定されたパッケージを追加
# yum -y install libX11-devel
# yum -y install libXfixes-devel

再度configure後、make → make install
# make
# make install

(4)キーマップを作成します。GUI上の端末で実行します。
# /usr/local/bin/xrdp-genkeymap /etc/xrdp/km-0411.ini

キーマップのシンボリックリンクを作成します。
# cd /etc/xrdp/
# ln -s km-0411.ini km-e0200411.ini
# ln -s km-0411.ini km-e0210411.ini
# ln -s km-0411.ini km-e0010411.ini
ここも意味は理解していませんが、これをやらないとキーボードが利きませんでした。

(5)起動します。
# /etc/xrdp/xrdp.sh start

(6)接続
リモートデスクトップクライアントを起動し、xrdpを起動したサーバのIPアドレスに接続すると、以下ログイン画面が表示されます。
Posts22_01

普通にユーザー名とパスワードでログインできました。
Posts22_02

Posts22_03

取り急ぎやってみましたが、問題なく動いています。というか、サクサク動いて快適です。

現時点で判明している問題点は以下2点
・英語表記になっている
・バックスラッシュキーが利かない

あと、恥ずかしながら手順の途中でのソースコード修正の意味がまったく分かってません(笑)

今後の課題は以下のとおり
・上記問題点の解決
・日本語入力環境を整える
・1接続あたりの必要帯域を算出する
・ロードバランシング環境で動かしてみる
 ※500ユーザは1サーバではさばけないと思うので・・
・ActiveDirectoryで認証させる

道は長そうです・・・
スポンサーサイト
この記事へのコメント
CVSではなくgitの方からソースを取得すればそのソースコードの書き換えは不要ですよ。
開発がCVSからgitに移行しているので、最新のソースはgitにあるようです。
2011/03/14(月) 00:14 | URL | meta #-[ 編集]
なるほど、確かにgitの方が更新日付が新しいですね。
http://sourceforge.net/projects/xrdp/develop

今度試してみることにします。コメントありがとうございました!m(_ _)m
2011/03/15(火) 00:03 | URL | フタゴぱぱ #-[ 編集]
このコメントは管理人のみ閲覧できます
2011/04/06(水) 13:34 | | #[ 編集]
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
この記事のトラックバックURL
http://fukushimaya2.blog103.fc2.com/tb.php/22-60d9d5fc
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック

 | Copyright © ふたごパパのサーバ構築日記 All rights reserved. | 

 / Template by 無料ブログ テンプレート カスタマイズ
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。