====== CentOS6.xにX2Goインストール ====== Linuxのデスクトップ画面をリモートから操作する場合、広く知られた所だと「VNC」辺りが有名ですが、オープンソースで開発が勧められているものに「x2go」ってのがあります。\\ いろいろと利点はありますが、VNCと比較するとこんな感じで違います。\\ * メリット * 基本的に通信はSSH。通信は暗号化されます。 * SSHを使うのでポートは22のみ。画面転送用に別なポートを特別に開放する必要はない。 * VNCに比べると転送効率が良く、レスポンスも良い。VNCのように画面が左上から順に更新されていく感覚は無い。\\ ……と思う。TightVNCとかが相手だと、あまり差異は無いように見えるかも。 * デメリット * VNCよりはサーバー側の負荷(特にCPU)は若干高め * 日本語にローカライズされたクライアントが無い ===== サーバーインストール手順 ===== 基本的な手順は公式サイトをいろいろ見てくださいな。\\ [[http://www.x2go.org/|公式サイト]]\\ - リポジトリファイルをダウンロードする wget http://download.opensuse.org/repositories/X11:/RemoteDesktop:/x2go/RHEL_6/X11:RemoteDesktop:x2go.repo - ダウンロードしたリポジトリファイルを/etc/yum.repo.d/にコピー cp X11\:RemoteDesktop\:x2go.repo /etc/yum.repos.d/x2go.repo 移動でも良いけど。 - yumでインストール yum install x2goserver ===== クライアントインストール手順 ===== 公式サイトからクライアントをダウンロードしていれてくださーい(*´∀`)←ぉぃ ===== 備考 ===== クライアントからx2goで接続すると、接続時に使用したホスト名/IPとそれに対応するSSHのキーがクライアント側のファイルに保存されます。\\ ファイルの存在は下記の通り\\ \\ **Windowsの場合**C:\Users\ユーザー名\ssh\known_hosts **Linuxの場合**/home/ユーザー名/.ssh/known_hosts なお、接続先のOSを入れ直すなどすると、キーが変わるので、クライアントはなりすましと判断し、エラーを出力、接続させないようになります。\\ このファイルは永続的にクライアントに保持されるので、上のようにキーが変更される場合は、known_hostsファイルから該当行を削除するなどの必要があります。\\ もちろんキーが変わっていない場合はなりすましかもしれないので、known_hostsファイルはいじらないように… ==== 追記(2012/12/19) ==== どうやら最近のバージョン(3.1.1.9以降?)では**yum install x2goserver**とするとエラーになるようです。 Error: Package: x2goserver-3.1.1.9-2.1.x86_64 (X11_RemoteDesktop_x2go) Requires: perl(File::BaseDir) You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest perl(File::BaseDir)が足りないようなので、先にダウンロードします。\\ [[http://pkgs.org/centos-6-rhel-6/puias-i386/perl-File-BaseDir-0.03-8.puias6.noarch.rpm/download/|一応この辺りで。。。]]ダウンロードしました。 wget http://puias.math.ias.edu/data/puias/6/i386/os/Addons/perl-File-BaseDir-0.03-8.puias6.noarch.rpm rpm -ivh perl-File-BaseDir-0.03-8.puias6.noarch.rpm この後、**yum install x2goserver**しましょう。\\ 下記参照 ==== 追記(2013/01/21) ==== perl(File::BaseDir)に関しては、EPELリポジトリに含まれている様子。\\ 予めEPELリポジトリからyumでインストール出来るように設定した上で、**yum install x2goserver**としてやれば、問題なくインストール出来ました。 ==== 追記(2013/04/10) ==== x2goのクライアントで、ローカルの任意のディレクトリをCentOS側にマウントする設定があるが、基本的にはその設定を行っただけではマウントできない。\\ これはsshfsというファイルシステムを利用している為に、sshfsの権限設定が必要。\\ CentOSでx2goserverを構成すると、sshfsはfuse経由での接続になるので、クライアントからログインしてくるユーザーがfuseのグループに所属している必要がある。\\ 具体的には、**/etc/group**のfuseの行にユーザー名を追記してやる。\\ fuse:x:493:user1,user2  ←ユーザー名を後ろにカンマ区切りで追記する ==== 追記(2013/07/18) ==== x2goクライアントからx2goサーバーに接続した時、当たり前だが接続先のsshdのfingerprintが変わっていると、アクセスは出来なくなる。\\ 通常、何の前触れもなくfingerprintが変わるのは、DNSキャッシュポイズニングなどの攻撃を受けた場合などだが、接続先サーバを変更した場合や再構成した場合などでも同様の状況に陥る。\\ この時、前述のとおり、クライアント側はx2goサーバーへアクセス出来なくなる(エラーになる)ので、接続先サーバのfingerprint情報が格納されているファイルを編集し、対象のサーバー情報を削除する。 \\ //編集ファイル//:{ユーザープロファイルフォルダ}\ssh\known_hosts\\ 例) kralis.dip.jp ssh-rsa AAAAB3NzaC~~~~~ ホスト名(またはIP)、fingerprintの種類、fingerprintのデータが並んでいるので、再構成した接続先サーバに当たる行を削除し、保存する。\\ その後、x2goクライアントを起動し、対象サーバーにアクセスすると、今度はアクセス可能になっている。