■Vine Linux 4.2 まとめ 〜 Zebedee で暗号化(クライアント側)

VNC と telnet を Zebedee で暗号化するクライアント (Windows 2000 Professional)側の設定です。

1. Zebedee のインストール
 Windows 用の Zebedee は Wintons on the World-Wide Web からダウンロードできます。
 ダウンロードしたファイルを実行すれば、インストールは完了です。

2. 設定ファイルの作成
 サンプルは「C:¥Program Files¥Zebedee¥vncviewer.zbd」を使用します。
 サンプル設定ファイルを同じフォルダにコピーして、client.zbd という名前に変更し、以下のように編集追加します。
detached false # Don't Detach from terminal
message "Starting Zebedee Client"
# command '"c:¥Program Files¥ORL¥VNC¥vncviewer.exe" localhost:%d'
clientport 2323 # telnet
clientport 5999 # VNC
targetport telnet # telnet
targetport 5901 # VNC
serverhost lina
localsouce true

3. Zebedee の起動
 Windows では .zbd ファイルが Zebedee に関連付けられていますので、client.zbd を実行すれば Zebedee が設定ファイルを読み込んで起動します。

4. サーバへ接続
 VNC は、VNC ビューアで「localhost:99」へ接続します。
 telnet は「telnet localhost 2323」とコマンド入力すれば接続できます。

■Vine Linux 4.2 まとめ 〜 Zebedee で暗号化(サーバ側)

VNC は平文でデータを流しているそうなので、Zebedee で暗号化することにします。telnet も一緒に暗号化します。
まずはサーバ側を設定します。

1. Zebedee のインストール
 VNC のインストールのときに一緒にインストールしていますが、確認です。
 Synaptic パッケージマネージャから「zebedee」を検索してインストール指定し、適用。これだけです。

2. 設定ファイルの作成
 サーバの設定ファイルのサンプル、/usr/share/doc/zebedee-2.4.1A/server.zbd を、/etc/zebedee というディレクトリを作ってそこにコピーします。
# mkdir /etc/zebedee
# cp /usr/share/doc/zebedee-2.4.1A/server.zbd /etc/zebedee

 /etc/zebedee/server.zbd を開き、次の 4 行を編集します。
message "Starting Zebedee Server"
detached true
redirect telnet # telnet
redirect 5901 # VNC

3. Zebedee の自動起動
 VNC と同様に Zebedee も自動起動させましょう。/etc/rc.d/rc.local に次の行を追加します。
su - linauser -c 'zebedee -f /etc/zebedee.zbd'

4. ファイアウォールの設定
 最後に「セキュリティレベルとファイアウォールの設定」から、Zebedee が使用するポート 11965/tcp を追加します。
 VNC が使っている 5901/tcp では接続できないように、このポートは削除します。また、telnet のチェックも外しておきます。

以上でサーバ側の設定は終わりです。いったん再起動します。
# reboot


■Vine Linux 4.2 まとめ 〜 Linux の設定

Vine Linux のインストール後にしておく設定などです。

1. アップグレード
 VNC をインストールする前にアップグレードをしているのですが、確認しておきましょう。
 Synaptic パッケージマネージャを起動し「再読込」します。「全てアップグレード」をクリックして「適用」です。アップグレード可能なパッケージがなければ「適用」はグレーアウトしたままになります。

2. ネットワークの設定
 IP アドレスの設定が必要なら「ネットワークの管理」から行います。
 ホスト名、ホストの別名を入力します。ホストの別名には「localhost」を必ず設定しておきましょう。あとで Zebedee を使うときに必要になります。

3. NTP サーバの設定
 「時刻と日付の設定」を起動し、「インターネット上のサーバと時刻を同期させる」にチェックします。時刻サーバは接続しているプロバイダの NTP サーバを登録します。

4. 不要なサービスを止める
 「サービスの管理」を起動し、不要なサービスを停止します。
 チェックが入っていたサービスのうち、次のサービスのチェックを外しました。
 a. その他のネットワークサービス(portmap)
 b. スケジューラの起動(atd)
 c. メール・エージェント(postfix)
 d. 印刷サービス(cups)
 他にもいろいろ必要のないサービスが動いているようですので、今後の勉強の課題にしておきます。

次は、サーバ〜クライアント間を Zebedee を使って暗号化します。

■Vine Linux 4.2 まとめ 〜 インストールから VNC 接続まで

えーと、散発的にいろいろやってきたので、ここらで一度まとめておこうかと思います。ってことで、お勉強用 Linux マシンを再インストールしてみました。

1. Vine Linux 4.2 のインストール
 とりあえず指示通りにインストール。問題はパーティションの切り方なんだろうけど、自動設定なんかを参考にしながら適当に(^_^;)
 ユーザーは linauser としてあります。
 起動はグラフィカルとして GNOME で起動させるようにします。以下、基本的に GNOME を使用し、root での作業が必要なところをコマンドで対応するようにしていきます。

2. リモート操作用パッケージのインストール
 サーバが縁側にあるので、とにもかくにもリモート操作できるようにしないと作業がやりづらい。まずは VNC をインストールしようと思いましたが、Synaptic パッケージマネージャで検索しても VNC が無い。「全てアップグレード」を一度実行して適用したら出てくるようになりました。
 VNC で検索すると vncserver と zebedee が表示されるので、この二つをインストール指定して適用します。また、なんだかんだで telnet も使うので、telnet で検索して telnet-server をインストールしておきます。
 「セキュリティレベルとファイアウォールの設定」で、telnet にチェック、その他のポートに 5901/tcp を追加します。

3. まずは telnet で接続
 GNOME 端末を起動して root に入り、/etc/inetd.conf を変更します。次の行のコメントをはずします。
telnet stearm tcp nowait root /usr/sbin/tcpd in.telnetd

inet を再起動します。
# /etc/rc.d/init.d/inet restart

 ifconfig をコマンド入力してホストの IP アドレスを確認。ここでは、192.168.1.101 とします。
 これ以降はクライアントから作業ができます。
 クライアント Windows 2000 のコマンドプロンプトを起動して、telnet と入力し telnet を起動。まず「set codeset japanese euc」と入力しておきましょう。これは、日本語の文字化けを防ぐためです。ちなみに、Vista では文字化けしませんので必要ありませんでした。
 open 192.168.1.101 でサーバに接続できますので、ログインします。

4. VNC サーバを起動
 telnet から vncserver :1 と入力して VNC サーバを起動、パスワードを設定します。
 次に、VNC で GNOME を利用するために xstartup を変更します。
$ vi ./.vnc/xstartup

次の 2 行のコメントをはずします。
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc

クライアントの UltraVNC ビューアから 192.168.1.101:1 に接続すると、GNOME のデスクトップが表示されます。これで VNC でのリモート操作が可能になりました。

5. VNC サーバを自動起動する
 VNC を自動起動するようにしておきましょう。
# vi /etc/rc.d/rc.local

 /etc/rc.d/rc.local に次の行を追加します。
#### Vine stuff ends here
# 起動時に実行するコマンド(ここから追加)
su - linauser -c 'vncserver :1'
# ここまで
touch /var/lock/subsys/local



次は、Vine Linux の設定などを行います。

■Vine Linux 4.2 VNC サーバを自動起動する

Linux サーバの起動時に VNC サーバも自動起動するようにしましょう。

この自動起動の設定もインターネットでいろいろ検索してみたのですが、難しい内容ばかりで苦労しました。でもこれもまた、じつに簡単に実現できてしまっています。

/etc/rc.d/rc.local に次の行を追加します。linauser は、ログインするユーザ名です。
# vi /etc/rc.d/rc.local

    :
#### Vine stuff ends here

# 起動時に実行するコマンド(ここから追加)
su - linauser -c 'vncserver :1'
su - linauser -c 'zebedee -f /etc/zebedee/server.zbd'
# ここまで

touch /var/lock/subsys/local

:wq で保存終了したら、再起動してみましょう。
# reboot

再起動したサーバ lina のディスプレイは GNOME のログインの画面になっています。クライアントマシンで Zebedee クライアントを起動し、UltraVNC ビューアで localhoat:99 へ接続すると、みごとに GNOME が動いているホスト lina のデスクトップが表示されました。
いわゆる「リモートデスクトップ」ではなくて、どこか違うところで動いているもうひとつのデスクトップというのは、何か新鮮でもあります(^_^;)

ちなみに、この状態からログアウトすると元に戻ることはできません。telnet を使っていったん VNC サーバを停止し、再度起動する必要があります。vino を使っているときもログアウトできませんでしたから同じようなものですが、telnet で再起動することができるだけでもかなり使えると思います。
ログアウトはできませんが、スクリーンセーバで早めに画面ロックするように設定しておきます。

■Vine Linux 4.2 VNC を暗号化する

VNC を常時起動する前に、Zebedee を利用して暗号化しておきます。
サーバは Vine Linux 4.2 ホスト名「lina@hoge.domain.net」、ターゲットポートは VNC サーバの 5901 です。クライアントは Windows 2000 Professional ホスト名「office」、クライアントポートは 5999 としましょう。ディスプレイ番号は 99 になります。


1. サーバ側の設定

server.zbd の redirect を以下のようにします。
redirect 2121 # FTP
redirect 5901 # VNC
redirect 30000-30030 # FTP PASV

target localhost


2. クライアント側の設定

client.zbd は次のようになります。
clientport 2121 # FTP
clientport 5999 # VNC
clientport 30000-30030 # FTP PASV

targetport 2121 # FTP
targetport 5901 # VNC
targetport 42401-42430 # FTP PASV

serverhost hoge.domain.net

利用するポートのリストをきちんと合わせる、ということだけです。あとはこれまでと同様ですね。
クライアントから「localhost:99」で接続すると、サーバをリモート操作することができるようになります。

■Vine Linux 4.2 VNC サーバを導入する

Vine Linux 4.2 で動いているサーバ、ホスト名「lina」のリモート操作に、これまで Vine Linux に付属の vino を使っていました。しかし、この vino はログインしていないと使用できませんので、サーバを起動したときにログイン操作をしておかなければならないため、ちょっと不便です。
そこで、サーバを起動するだけでリモート操作できるようにするために、VNC を使うことにしました。


1. VNC サーバのインストール

Synaptic パッケージマネージャを起動し、まずは「再読込」をクリック。「検索」をクリックして vnc を検索します。表示されたパッケージから vncserver をインストール指定して「適用」をクリックします。
インストールはこれだけです。


2. ファイアウォールの設定

「セキュリティレベルとファイアウォールの設定」を起動し、「その他のポート」に 5901/tcp を追加します。


3. VNC サーバの起動

「GNOME 端末」を起動し、VNC サーバをディスプレイ番号 1 で起動します。
$ vncserver :1

初めて起動するとパスワードを聞かれますので、2 回入力します。
You will require a password to access your desktops.

Password:
Verify:
xauth: creating new authority file /home/linauser/.Xauthority

New 'Lina:1 (linauser)' desktop is Lina:1

Creating default startup script /home/linauser/.vnc/xstartup
Starting applications specified in /home/linauser/.vnc/startup
Log file is /hoem/linauser/.vnc/Linauser:1.log

このように表示されたら起動成功ですね。ディレクトリ /home/linauser/.vnc に設定ファイルやログファイルができています。
ちなみに、パスワードの変更は
$ vncpasswd

です。


4. クライアントから接続

Windows2000 のクライアント側はこれまで通り ultraVNC ビューアを使用します。ディスプレイ番号は 1 ですので、「lina:1」で接続します。

接続すると CUI の画面が表示され、コマンドでの操作が可能になります。


5. GUI で使えるようにする

CUI の画面を表示するところまでは簡単でしたが、せっかくの GNOME を使えるようにしたいものです。ところが、これが大変でした。インターネットを検索してみたのですが、どれもこれも何やら難しいことばかり書いてあって、何とかなりそうなものを試してみてもダメでした。
でも結局は、とても簡単にできてしまうことがわかりました。それは、現在ユーザーが利用している X11 の設定をそのまま使うというもので、それらの情報が書かれている/etc/X11/xinit/xinitrc を直接呼び出せば良い(X-Window を変更する 〜X-VNC)、ということだそうです。

ということで、VNC サーバの xstartup を変更します。
$ vi ./.vnc/xstartup

次の 2 行の行頭の # を削除します。
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc

これ以下の行は無視されるそうなので、そのままにしておいてかまいません。:wq で上書き保存します。たったこれだけです。

いったん VNC サーバを停止します。
$ vncserver -kill :1
Killing Xvnc process ID xxxx

再度 VNC サーバを起動して、クライアントから接続してみましょう。今度は見慣れた GNOME の画面が表示されると思います。

■Zebedee ID 認証

Zebedee によるトンネルは暗号化されているのでデータは守られているけれど、トンネル自体は誰でも入ることができます。で、「man-in-the-middle (第三者による横取り)」を防御するために、ID 認証するようにします。

認証は、クライアント側で秘密鍵を作りサーバ側の公開鍵によってチェックする方法ですが、サーバ側の秘密鍵とクライアント側の公開鍵による双方向認証も可能です。
今回は前者のみの認証を行うことにします。

秘密鍵はクライアント側で生成します。
Windows のコマンドプロンプトを開き、まず Zebedee のフォルダへ移動します。

>cd "C:¥Program Files¥Zebedee"

コマンドプロンプトが「C:¥Program Files¥Zebedee>」になれば OK 。
次に、秘密鍵を生成して mytunnel.key に出力します。ファイル名は任意で良いと思います。

>zebedee -p > mytunnel.key

さらに、秘密鍵から公開鍵を生成し、mytunnel.id を作ります。これもファイル名は任意です。

>zebedee -P -f mytunnel.key > mytunnel.id

出来た mytunnel.id はサーバの /etc/zebedee に保存します。基本的に、鍵の移動は「安全な方法」をとるようにしましょう。

鍵ができたら、設定ファイルを変更します。
サーバ側の server.zbd は、checkidfile の行を変更し、minkeylength を追加します。minkeylength を指定しないと、クライアントが 0 を指定してきた場合に暗号化も認証もしなくなってしまいますので、要注意です。
keylength (コマンドラインでは -k)
特別なケースとして、この値が0に設定されると、キーのネゴシエーションと暗号化は無効にされる。
(「Zebedee --- シンプルでフリーでセキュアなトンネルプログラム」より)


checkidfile '/etc/zebedee/mytunnel.id'
minkeylength 256


クライアント側の client.zbd には次の一行を追加します。


include mytunnel.key


認証されているのかどうかわからないので、鍵ファイルのファイル名を一時変更するなどして、鍵が違うと接続できないことを確認しておけば安心ですね。

■Zebedee クライアント設定ファイルを作る

クライアント側にも設定ファイルを作りましょう。サンプルは「C:¥Program Files¥Zebedee¥vncviewer.zbd」を使用します。
サンプル設定ファイルを同じフォルダにコピーして、client という名前に変更しておきます。メモ帳でこれを開いて、以下のように変更します。


detached false # Don't Detach from terminal
message "Starting Zebedee Client"
# command '"c:¥Program Files¥ORL¥VNC¥vncviewer.exe" localhost:%d'


detached は false として、フォアグラウンドで起動させます。
message は任意の文字列です。
command の行はコメントアウトします。

そして次の行を追加します。


clientport 2121,5901,30000-30030
targetport 2121,5900,30000-30030
serverhost lina
localsouce true


clientport と targetport、serverhost は、コマンドラインのときに指定したポートのリストとリモートホストです。今は自宅の LAN 内でテストしていますので、ホスト名 lina を指定していますが、インターネット経由ではドメイン hoge.domain.net を指定することになります。
localsouce を true にすることで、他のクライアントからトンネルに入れなくします。

保存して終了です。

Windows では .zbd ファイルが Zebedee に関連付けられていますので、client.zbd を実行すれば Zebedee が設定ファイルを読み込んで起動します。適当にショートカットを作っておけば良いですね。

■Zebedee サーバ設定ファイルを作る

VNC と FTP の暗号化が Zebedee で実現できましたので、これらの設定をまとめて設定ファイルを作ることにします。
サーバの設定ファイルのサンプルは、/usr/share/doc/zebedee-2.4.1A/server.zbd ですので、これを変更して使います。

まず、設定ファイルを置いておくディレクトリを作っておこうと思うのですが、そのあたりの作法がよくわかりません。設定ファイルは /etc に置くものらしいので、ここに Zebedee 用のディレクトリを作って、サンプル設定ファイルをコピーします。

# mkdir /etc/zebedee
# cp /usr/share/doc/zebedee-2.4.1A/server.zbd /etc/zebedee

vi で /etc/zebedee/server.zbd を開き、次の 3 行を編集します。


message "SERVER CONFIGURATION FILE"
detached true
redirect 2121,5900,30000-30030


message は起動したときに表示されるものですので、任意です。
detached は true を指定し、バックグラウンドで起動するようにします。
redirect はリダイレクトするポートを指定します。コマンドラインで -r で指定したものと同じです。
:wq で保存終了します。

Zebedee の起動は次のとおり。ゲートウェイはこれまでどおりです。

$ zebedee -f /etc/zebedee/server.zbd
$ tclsh /usr/bin/ftpgw.tcl -p 30000-30030

| 1/4PAGES | >>

■calendar

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
2728293031  
<< August 2017 >>

■search this site.

■recommend





■recommend

■Twitter

@meyon230 からのツイート

■recommend

■recommend

■recommend

■recommend

モーニング娘。'15 コンサートツアー2015秋~ PRISM ~ [Blu-ray]
モーニング娘。'15 コンサートツアー2015秋~ PRISM ~ [Blu-ray] (JUGEMレビュー »)
モーニング娘。’15,石田亜佑美,佐藤優樹,工藤遥,小田さくら,尾形春水,野中美希,牧野真莉愛

■selected entries

■categories

■archives

■recent comment

■recent trackback

■links

■profile

■others

■mobile

qrcode

■powered

無料ブログ作成サービス JUGEM