未来を変える日記

システム自主開発とトライアスロン

Ubuntuを使ってみる - SSH接続

 前回はLinux学習の必要性とその派生形の一つUbuntuのインストールまでを記載しました。今回は、Ubuntuを実際に使えるようにすることを目指します。

www.masa-nakajima.com

目次

使えるとは?

 しかし、何をもって使えると言えば良いでしょうか?先ず、これまでの記事を振り返ると、以下の2つが明確になってます。

  1. Webアプリケーションの自主開発をしたい
  2. それにはLinux操作スキルが必要だ

 従って、2番目の操作スキルの取得を「使える」と定義して良さそうです。ですが、1番目の目的と照らし合わせせると、表現として今少し足らない感がある。
 そこで、もう少し具体化します。以下の3つではどうでしょうか?

  1. Linux サーバーへリモートで接続できること
  2. セキュリティの設定ができること
  3. 必要なソフトの導入、設定ができること

 目標設定としては、なんだか、良さそうな気がします!

リモート接続

 1番目のリモート接続から。クライアント側から遠隔のサーバーに接続して、操作することですね。一昔前は、telnetだった記憶がありますが、今は暗号化通信できるSSH(Secure SHell)が主流。

f:id:corgi-eric:20201031143913j:plain

SSHをインストール

 今回の勉強用LenovoにはSSHは入っていないようです。なお、この後、契約したVPS(Virtual Private Server:仮想専用サーバー)の Ubuntu にはSSHが導入済みでした。

 後日談はさておき、この時点ではないので、先ずはUbuntu起動後の画面からターミナルを開きます。

f:id:corgi-eric:20201031150723p:plain
ターミナルを開く

 ターミナルから以下のコマンドで、SSHをインストールし、起動してやります。

$ sudo apt-get install ssh  
$ sudo systemctl start ssh
$ sudo systemctl status ssh

 3行目のコマンドで、activeが確認できればSSHは動いてる。
f:id:corgi-eric:20201031151502p:plain

Windowsから接続

 早速、Windowsから接続してみます。と、その前に、Ubuntuを導入したPCのIPアドレスを確認しておきます。

$ ifconfig

f:id:corgi-eric:20201031153724p:plain

画面に表示されるのは以下の情報。

  1. lo:ローカルループバック(通信出力の検証用アドレス)
  2. wlp5s0:無線ランのイーサネットアダプタ

 要するに、このPCのIPアドレスは、192.168.1.11 です。
 但し、192.168系統は、プライベートアドレスというもの。屋内ネットワーク内でのみ利用可能です。外部との通信には、ルーターに割り当てられているグローバルIPが必要になります(下に概要図)。

f:id:corgi-eric:20201031155518j:plain
屋内ネットワーク

 ここまでわかったら、Windowsに戻ります。
 上の絵に描いたように、Surfaceをクライアント、Lenovoをサーバーに見立てて接続してみます。直接通信しているように見えますが、ネットワーク的にはルーター経由となるため、SSH通信の矢印を点線にしています。
 Windowsなので、TeratermとかGUIのソフトもありますが、シンプルなコマンドラインでつないでみます。コマンドプロンプトを起動し、以下のコマンド。[user name]はUbuntuのインストール時に作成したアカウント名です。

ssh 192.168.1.11 -l [user name]

 画面にWelcome to Ubuntuと表示され、ログインできるようになりました!
f:id:corgi-eric:20201031160156p:plain

 さて、次回はセキュリティ設定です。