第5回 PuTTYでSSH2接続
Windowsマシンからリモートで操作したい!
もしDebianサーバの他にWindowsが動くPCを持っていれば、ぜひWindowsマシンから遠隔操作できるように設定しましょう。
この設定をしておけば、何よりもサーバを管理するのに自分がサーバが置いてある部屋の中にいる必要がなくなります。インターネットに繋がったPCがあれば、外出先からでも自室にいるのと同じような感覚でサーバ管理が行えてしまいます。
なんだかこれは便利そう。
遠隔操作を行うのに使われる通信方式としてTelnet("てるねっと"と読みます)とSSH(こっちは"えすえすえいち"と読みます)と呼ばれるものがあります。
Telnetはこれまでネットワークを使う人間がみんな善人だった古き良き時代に使われました。しかしネットワークの世界に悪人がはびこる今日、Telnetは暗号化せずに通信を行うため、悪人に通信が傍受されてしまうとパスワードから何から何まで全てバレバレになってしまうという問題点があります。
一方それに対してSSH(Secure SHellの略)は暗号化して通信を行うので、もし悪人に通信が傍受されても通信内容がバレることはありません。
(fig 4.1とfig 4.2を苦労して作った割にはあまり役に立ってないぞ)
Debian(sarge)はセキュリティ上の観点から初期設定ではTelnetは使えなくなっています。
ここではSSHの設定を行いWindowsからリモートで操作するまでの手順を紹介します。
PuTTYの入手とインストール
WindowsマシンからPuTTY(なんて読むんでしょう……)というソフトを使ってSSHでサーバを操作します。PuTTYは高機能にも関わらず無料で使えます。すばらしすぎ。
日本語化パッチをあてたPuTTYがあるので、「最新版ダウンロード-hdkの自作ソフトの紹介」から"PuTTY で ISO 2022 による日本語入力・表示を可能にするパッチ"を入手します。
ダウンロードしたzipファイルを解凍し、中のファイルを適当なフォルダに置きます(ここではD:\Tools\puttyフォルダ以下に置きました)。
あとは実行ファイル(puttyjp.exe)をダブルクリックすればPuTTYが起動します。インストールいらず。簡単でしょう?
PuTTYでサーバにアセクスする(パスワード認証)
サーバのIPアドレスを知る
そう言えば、リモート(遠隔地)でアクセスするからにはサーバのIPアドレスを知らないといけません。Debianをインストールするときには自動的に設定してくれたので「そういえばIPアドレスっていくつだっけ……」とふと思ってします。
たいていはブロードバンドルータの設定を見ればわかりますが、サーバで以下のコマンドを入力すればわかります。
すると次のような情報が出力されます。このうちeth0のinetアドレスの部分がサーバに割り振られたIPアドレスです。このサーバは192.168.1.7というIPアドレスが割り振られています。
PuTTYの設定
ほとんどありません。
puttyjp.exeをダブルクリックしてPuTTYを起動します(fig 4.5)。
カテゴリから"セッション"を選択して(fig 4.5の(1)の部分)、ホスト名(またはIPアドレス)の欄(fig 4.5の(2)の部分)に先ほど調べたサーバのIPアドレスを設定します。
プロトコルとポートはそのまま(プロトコル:SSH、ポート:22)にしておきます。
最後に「開く」ボタン(fig 4.5の(3)の部分)を選択して接続します。
初めて接続するときに「このサーバを信用しますか?」という内容の警告ダイアログ(fig 4.6)が表示されますが、構わず「はい」を選択します。
サーバのIPアドレスが合っていればコンソール(端末)画面が表示されます(fig 4.7)。
コンソール(端末)では「login as:」とユーザ名の入力待ち状態になっていますので、ユーザ名"hoge"を入力します。
続いてユーザ"hoge"のパスワードを聞かれますので、パスワード"hogehoge"を入力します。
※入力したパスワードは画面には表示されません。
ユーザ名とパスワードが合っていれば、サーバでログインしたときと同じようにプロンプトが表示されます。ちなみにユーザ名とパスワードを入力するときから通信は暗号化されているので傍受されたとしても安心です。
特に設定もすることなく簡単にログインできました。いやぁ~楽チン、楽チン。
以降の操作は全部PuTTYを使ってWindows側から行うことにします。