Kali Linux における基本ネットワークツール

Kali LinuxKali LinuxBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

導入

この実験で、Kali Linux における基本的なネットワークツールの使用方法を学び、基本的なネットワーク診断と管理タスクを実行します。この実践セッションは初心者向けに設計されており、ネットワークステータスの確認、接続性のテスト、ネットワーク上のデバイスの発見、およびオープンなポートのスキャンをガイドします。ip apingnetdiscover、および nmap などのツールを使用して、LabEx VM 環境内でネットワーク分析の基礎スキルを構築します。端末を開くと、自動的に Kali Linux コンテナのシェルに接続され、練習を開始する準備が整います。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL kali(("Kali")) -.-> kali/KaliGroup(["Kali"]) kali/KaliGroup -.-> kali/file_ctrl("File Management") kali/KaliGroup -.-> kali/net_conf("Network Configuration") kali/KaliGroup -.-> kali/nmap_ops("Nmap Tool") kali/KaliGroup -.-> kali/sys_obs("System Monitoring") kali/KaliGroup -.-> kali/vuln_scan("Vulnerability Scanning") subgraph Lab Skills kali/file_ctrl -.-> lab-552191{{"Kali Linux における基本ネットワークツール"}} kali/net_conf -.-> lab-552191{{"Kali Linux における基本ネットワークツール"}} kali/nmap_ops -.-> lab-552191{{"Kali Linux における基本ネットワークツール"}} kali/sys_obs -.-> lab-552191{{"Kali Linux における基本ネットワークツール"}} kali/vuln_scan -.-> lab-552191{{"Kali Linux における基本ネットワークツール"}} end

ip a を使用したネットワークインターフェースの確認

この最初のステップで、ip a コマンドを使用してシステム上のネットワークインターフェースを検査する方法を学びます。これはネットワーク構成を理解するための基本的なスキルです。

LabEx VM 環境で端末を開くと、自動的に Kali Linux コンテナのシェルに接続されます。コンテナを手動で開始したりシェルに入力したりする必要はありません;環境はすでに設定されています。

まず、iproute2 パッケージがインストールされていない場合、インストールする必要があります。端末で以下のコマンドを入力して Enter キーを押してください:

apt update && apt install -y iproute2

次に、端末で以下のコマンドを入力して Enter キーを押してください:

ip a

このコマンドは、システム上のすべてのネットワークインターフェースとその詳細(例:IP アドレスとステータス)をリスト表示します。

期待される出力 (例:実際の出力は異なる可能性があります):

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
4: eth0@if5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
    link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0
       valid_lft forever preferred_lft forever

出力で、lo (ループバック) や eth0 (主なネットワークインターフェース) などのインターフェースが表示されます。eth0 以下の inet 行を探して、IP アドレス(例:172.17.0.2)を見つけます。<UP> ステータスはインターフェースがアクティブであることを示します。この出力を理解することで、システムがネットワークに接続されており、さらなるタスクに備えていることを確認できます。

ping を使用したネットワーク接続性のテスト

ネットワークインターフェースを確認したので、次のステップとして、システムが外部サーバーと通信できるかをテストします。ping コマンドを使用してインターネット接続性を検証します。

ping がインストールされていない場合、インストールします。

apt install -y iputils-ping

Kali Linux コンテナの端末で以下のコマンドを入力して Enter キーを押してください:

ping -c 4 8.8.8.8

-c 4 オプションは ping 試行回数を 4 に制限し、8.8.8.8 は Google の公開 DNS サーバーで、接続性テストに信頼できるターゲットです。

期待される出力 (例:実際の出力は異なる可能性があります):

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=10.2 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=9.8 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=10.1 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=117 time=9.9 ms

--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3004ms
rtt min/avg/max/mdev = 9.800/10.000/10.200/0.141 ms

この出力は、8.8.8.8 からの応答を示し、time (ミリ秒単位の遅延) や icmp_seq (シーケンス番号) などの詳細を表示します。0% packet loss は接続の成功を示します。100% packet loss が表示された場合、接続性に問題があることを意味します。ping コマンドは、システムが外部ネットワークに到達できることを確認するためのシンプルで強力なツールです。

netdiscover をインストールして使用し、ネットワークデバイスを特定する

ネットワーク接続を確認したので、次に netdiscover ツールを使用してローカルネットワーク上のデバイスを発見する方法を学びます。このツールは Kali Linux コンテナに事前にインストールされていない可能性があるため、まずインストールします。

パッケージリストを更新し、netdiscover をインストールします。端末で以下のコマンドを入力し、それぞれの後に Enter キーを押してください:

apt install -y netdiscover

これらのコマンドはパッケージリストを更新し、netdiscover を確認なしでインストールします。インストールが完了するまで待ちます;数秒かかる可能性があります。

次に、スキャンするネットワークインターフェースを特定する必要があります。ステップ 1 で ip a を使用したので、出力を確認するか再実行して、インターフェース名(おそらく eth0)と IP 範囲(Docker 環境ではおそらく 172.17.0.0/16)を確認します。

今度は、ローカルネットワークをスキャンするために netdiscover ツールを実行します。以下のコマンドを入力して Enter キーを押してください:

netdiscover -i eth0 -r 172.17.0.0/16

-i eth0 はインターフェースを指定し、-r 172.17.0.0/16 はスキャンする IP 範囲を定義します。インターフェース名が異なる場合、eth0 を適切に置き換えてください。

期待される出力 (例:実際の出力は異なる可能性があります):

Currently scanning: 172.17.0.0/16   |   Screen View: Unique Hosts

2 Captured ARP Req/Rep packets, from 2 hosts.   Total size: 120
_____________________________________________________________________________
  IP            At MAC Address     Count     Len  MAC Vendor / Hostname
-----------------------------------------------------------------------------
172.17.0.1      02:42:ac:11:00:01      1      60  Unknown vendor
172.17.0.2      02:42:ac:11:00:02      1      60  Unknown vendor

この出力は、ネットワーク上のデバイスの IP アドレスと MAC アドレスをリスト表示します。例えば、172.17.0.2 はお使いのシステム、172.17.0.1 はゲートウェイである可能性があります。スキャンを数秒実行してデバイスを検出したら、Ctrl+C を押して停止します。

netdiscover ツールは ARP リクエストを使用してローカルネットワーク上のアクティブなデバイスを検出します。これは、システムと同じネットワークセグメントに接続されているデバイスをマッピングする一般的なネットワーク診断タスクに役立ちます。

nmap をインストールして基本的なポートスキャンを実行する

ネットワーク上のデバイスを特定したので、次に nmap ツールを使用して特定のデバイスのオープンなポートをスキャンします。これにより、ターゲットシステムで実行されているサービスを理解できます。nmap が事前にインストールされていない可能性があるため、まずインストールします。

端末で以下のコマンドを入力してパッケージリストを更新し、nmap をインストールします。それぞれの後に Enter キーを押してください:

apt install -y nmap

インストールが完了するまで待ちます;数秒かかる可能性があります。

前のステップの netdiscover 出力から、ネットワーク上のデバイスの IP アドレス(例:172.17.0.1)をメモしておくべきです。この IP アドレスをオープンなポートに対してスキャンします。スキャンで異なる IP を取得した場合、それを使用してください。

端末で以下のコマンドを入力して Enter キーを押して基本的なポートスキャンを実行してください:

nmap 172.17.0.1

期待される出力 (例:実際の出力は異なる可能性があります):

Starting Nmap 7.95 ( https://nmap.org ) at 2025-04-11 06:04 UTC
Nmap scan report for 172.17.0.1
Host is up (0.0000060s latency).
Not shown: 997 closed tcp ports (reset)
PORT     STATE SERVICE
22/tcp   open  ssh
3000/tcp open  ppp
3001/tcp open  nessus
MAC Address: 02:42:06:F2:C3:B0 (Unknown)

Nmap done: 1 IP address (1 host up) scanned in 0.15 seconds

この出力は、ターゲット IP のオープンなポートをリスト表示します。例えば、22/tcp open ssh は SSH サービスが実行中であることを示し、3000/tcp3001/tcp はウェブサーバーを示唆します。nmap ツールは Network Mapper の略で、ネットワーク発見とセキュリティ監査に広く使用され、デバイスの潜在的なアクセスポイントを特定できます。

nmap スキャン結果をファイルに保存する

この最終ステップでは、nmap スキャンの結果をファイルに保存する方法を学びます。これにより、後で参照できます。これは、前のステップで基本的なポートスキャンを実行したことに基づきます。

ステップ 4 から同じターゲット IP アドレス(例:172.17.0.1)を使用して、端末で以下のコマンドを実行して Enter キーを押し、スキャンを実行し、出力を scan_results.txt という名前のファイルに保存します:

nmap 172.17.0.1 -oN /root/scan_results.txt

-oN オプションは、nmap に結果を通常形式で指定されたファイルパス /root/scan_results.txt に保存するよう指示します。ステップ 4 で異なる IP を使用した場合、172.17.0.1 をその IP に置き換えてください。

出力はこれまで通り端末に表示されますが、同時に /root/scan_results.txt に保存されます。ファイルに結果が含まれていることを確認するために、以下のコマンドを入力して Enter キーを押してください:

cat /root/scan_results.txt

期待される出力 (例:実際の出力は異なる可能性があります):

Starting Nmap 7.95 ( https://nmap.org ) at 2025-04-11 06:05 UTC
Nmap scan report for 172.17.0.1
Host is up (0.0000060s latency).
Not shown: 997 closed tcp ports (reset)
PORT     STATE SERVICE
22/tcp   open  ssh
3000/tcp open  ppp
3001/tcp open  nessus
MAC Address: 02:42:06:F2:C3:B0 (Unknown)

Nmap done: 1 IP address (1 host up) scanned in 0.15 seconds

スキャン結果をファイルに保存することは、発見を文書化する実用的方法です。これにより、スキャンを再実行せずに後で情報を確認したり共有したりできます。これは、ネットワーク分析とトラブルシューティングで特に役立ちます。

まとめ

この実験で、Kali Linux における基本的なネットワークツールの使用方法を学び、必要なネットワーク診断を実行する方法を習得しました。まず、ip a でネットワークインターフェースを確認し、ping を使用して接続性をテストし、netdiscover でローカルネットワーク上のデバイスを発見し、nmap で基本的なポートスキャンを実行し、スキャン結果をファイルに保存して後で参照できるようにしました。これらのスキルは、Linux 環境でのネットワーク分析とトラブルシューティングのためのしっかりした基盤を提供します。