” ssh ” は他のLinuxマシンにリモートでログインしてこれを操作するための、接続用プロトコルです。
ラズパイはリモート接続も良く使われます。
今回はonline password attackの前フリとしてsshを取り上げます。
ラズパイが自宅に2個になったので、早速接続モノをやります。
sshについて
” ssh ” はセキュアシェル(secure shell)の略です。
ssh通信は暗号化されています。
ちなみに暗号化されていない接続は ” telnet ” などがありますが、これはセキュリティ上の問題があります。
sshは22番ポートがデフォルトのポートです。
Kali Linux on ラズパイでは、最初から22番ポートが開いておりsshデーモン(sshd)が常駐しています。
=マンションの22号室のドアが開いており、そこにはsshdという住人が待機していて接続要請が来るのを待ち構えています。
このポート番号22番はセキュリティ上の理由で変更されることがあります(変更出来ます)。
ターゲットの確認
それでは左のラズパイ5から、隣のラズパイ4Bに接続してみます。
- 自分(ラズパイ5/接続する側:sshクライアント)のIPアドレス:192.168.11.15
- 相手(ラズパイ4B/接続される側:sshサーバー)のIPアドレス:192.168.11.21
の設定です。
nmapで偵察
まずはnmapで接続相手の状況を確認してみます。ここでは2つの偵察例を示しています。
上段のコマンド
nmap -Pn 192.168.11.21
192.168.11.21は22番ポートが開いており、対応サービスはsshであることが分かります。
このコマンドでは合計1000個のポートを調査しています。
下段のコマンド
nmap -sV 192.168.11.21 -p- –open
やはり22番ポートが開いており、sshサービスが待機しているのが分かります。
こちらの例では全てのポート(65355個: ” -p- ” オプション)を調査しています。(開いているもののみ限定で調査: ” –open ” オプション)
こちらの偵察方法はデフォルトの22番ポートが変更されて、1000番以上のポート番号に変更されている場合にも対応出来ます。
今回の環境まとめ
sshサービスは22番ポートでデフォルトのままです。
マシン | IPアドレス | ホスト名 | ユーザー名 | パスワード | |
接続元 | ラズパイ5 | 192.168.11.15 | kali-raspberrypi-5 | kali | kali |
接続先 | ラズパイ4B | 192.168.11.21 | kali-raspberry-pi | kali | j******** |
sshコマンド実行
ssh -l ユーザ名 -p ポート番号 接続先IPアドレス
最初のみ下記のメッセージが出ますが、” yes “とします。
ssh -l kali -p 22 192.168.11.21
- 接続元と接続先が同じユーザー名であれば、 ” -l ” オプションは省略可です。
- ポート番号は、デフォルトの22番の場合は省略可です。
つまり、つまりラズパイ5とラズパイ4Bのログイン名が同じ ” kali ” であり、ラズパイ4Bのsshサービスのポート番号が22番であれば、下記コマンドでもOKです。
ssh 192.168.11.21
正しいパスワードを入れると、ホスト名が ” kali-raspberry-pi5 ” から、 ” kali-raspberry-pi ” に変わっており、最後の” 5 ” がなくなっています。
これはつまりラズパイ4Bにログイン出来ています。
ここからの作業は、接続先のラズパイ4B内での作業になります。
例えばラズパイ4Bのアップグレードなどのメンテナンス作業をここから行うことが出来ます。
ssh接続の終了の仕方
” exit ” で終わります。
exit
ssh接続が切断されてホスト名が ” kali-raspberry-pi5 ” に戻っています。
接続先のシャットダウン
ちなみに接続相手のマシンをシャットダウンすることも出来、そうすると当然接続が終了します。
sudo shutdown
” sudo shutdown ” とすると、60秒間の猶予ののち、
接続先がシャットダウンされ、その直後に接続が解除されます。
60秒待たずにすぐにシャットダウンするには、 ” sudo shutdown now ”
付録:scpコマンド
sshの技術を使ってファイルの受け渡しを行うのが ” scp ” コマンドです。
” cp ” コマンドのssh版なので、scp (secure copy) 。
scp コピー元ファイル コピー先ファイル
リモート接続先の指定方法は、 ” ユーザー名@ホスト名:コピーしたいディレクトリまたはファイル ” となります。
下図は、接続元の ” text.txt ” ファイルを、接続先ホスト192.168.11.21の ” /home/kali ” ディレクトリにコピーした例。
接続先の正しいログインパスワードを入力するとコピーが実行されます。
下図は、逆に接続先ホスト192.168.11.21の ” /home/kali/text2.txt ” のファイルを、接続元のホームディレクトリにコピーした例。
どちらもそれぞれ接続先のパスワードを求められます。
ちなみに ” -r ” オプションでディレクトリ丸ごとのコピーも出来ます。
コメント