Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
nmlinux — Linux向け統合ネットワークツールキット — Python 3 + PySide6 | Kitploit
ツール/GitHubGitHub/thongor77/nmlinux
ネットワークマッピングポートスキャン情報収集DNS分析
GitHubthongor77/nmlinux

nmlinux

Linux向け統合ネットワークツールキット — Python 3 + PySide6

リポジトリを見る
9215627日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
# NMLinux · v1.7.14

[![Version](https://img.shields.io/badge/version-1.7.14-brightgreen.svg)](https://github.com/thongor77/nmlinux/releases/latest)
[![Python](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/)
[![License: GPL-2.0](https://img.shields.io/badge/license-GPL--2.0-green.svg)](LICENSE)
[![Platform](https://img.shields.io/badge/platform-Linux%20%7C%20macOS-orange.svg)](#installation)
[![Languages](https://img.shields.io/badge/languages-FR%20EN%20ES%20DE%20IT%20PT%20JA%20ZH-purple.svg)](#features)
[![Donate](https://img.shields.io/badge/Donate-PayPal-blue.svg)](https://www.paypal.com/donate/?business=JFQGY7NU3ANCN&no_recurring=0&item_name=Every+donation%2C+no+matter+how+small%2C+helps+me+keep+this+project+alive.+Thank+you%21%0A&currency_code=EUR)
[![Bitcoin](https://img.shields.io/badge/Donate-Bitcoin-orange.svg)](#support-the-project)

**Linux と macOS 向けの統合ネットワークツールキット — 検査、接続、診断。**

NMLinux は、29 のネットワークモジュールを 1 つのウィンドウにまとめた単一の統合 GUI です。インターフェース監視、Wi-Fi、DNS、SSH ターミナル、ファイアウォールビューア、トポロジマップ、traceroute など。Python と PySide6 (Qt 6) でゼロから構築され、8 つのインターフェース言語を備え、標準的なシステムツール以外の外部依存はありません。

> [!NOTE]
> **NMLinux は Linux のシステムデーモン `/usr/bin/NetworkManager` (Red Hat/GNOME による NetworkManager) とは無関係です。** NMLinux は Python と PySide6 でゼロから構築された独立したプロジェクトです。

> [Claude Code](https://claude.ai/code) (Anthropic) とその作者の貢献によって構築されました。

---

## 開発プロセス

NMLinux は AI の支援 — 具体的には [Claude Code](https://claude.ai/code) — を用いて構築されており、そのことはこのリポジトリのどこにも隠されていません。今日のほとんどすべての真剣なソフトウェアプロジェクトは、公言しているかどうかにかかわらず、そのパイプラインのどこかで AI を使用しています。したがって「AI が関与したか」は興味深い問いではありません。興味深い問いはこれです。AI が何かを間違えたとき、それを見つけるものはあるのか?

私の言葉を信じるよりも自分で確認したいなら、それを担っているのはこれです:

- **162 のテスト** — `pytest tests/ -v`。純粋なロジックに加え、少数の実際の Qt ウィジェットテスト (メニュー、テーブル) があり、興味深い部分をモックでごまかしていません。
- **[`docs/Decisions-Techniques.md`](https://github.com/thongor77/nmlinux/blob/main/docs/Decisions-Techniques.md)** — 自明ではないすべての技術的判断、却下された代替案、そして発見・修正されたバグ (AI が持ち込んだものを含む) と、その理由が書き留められています。
- **[`docs/Architecture.md`](https://github.com/thongor77/nmlinux/blob/main/docs/Architecture.md)** と **[`docs/Carte-des-Modules.md`](https://github.com/thongor77/nmlinux/blob/main/docs/Carte-des-Modules.md)** — コードの実際の構造を、出荷されるものと同期させて維持しています。
- リリース前に毎回実行される **i18n 整合性チェック** で、サポートされる 8 言語にわたる翻訳キーの欠落を検出します。

これらのどれも、AI が信頼できないから存在するわけではありません。手書きのコードを含め、何も検証するプロセスなしに出荷されるべきではないから存在します。評価すべきは、出力とそれがどのように検証されているかであり、書くのを手伝ったツールではありません。

それでもバグを見つけましたか? それは恥ずかしいことではなく、役に立ちます — [issue を開いてください](https://github.com/thongor77/nmlinux/issues)。

---

## コミュニティ

**[GitHub Discussions](https://github.com/thongor77/nmlinux/discussions) はオープンです** — フィードバックの共有、アイデアの報告、質問、あるいはただ挨拶するだけでも。作者はインフラストラクチャと運用の分野で 30 年以上の経験を持ち、優れた、無料で、シンプルなソフトウェアが Linux にも存在すべきだと考えてこのツールを作りました。

---

## スクリーンショット

> Linux のスクリーンショットは v1.2.7 — macOS のスクリーンショットは v1.3.5 のものです。アプリは現在 29 のモジュールと 8 つのインターフェース言語 (FR/EN/ES/DE/IT/PT/JA/ZH) を備えています。

**Linux (KDE)**

| Dashboard | Topology |
|-----------|----------|
| ![Dashboard](https://assets.kitploit.com/production/public/readmes/7933/8c4d0041882b63913349c955a86e2f91ede403d8642162453eae1442292e850c.png) | ![Topology](https://assets.kitploit.com/production/public/readmes/7933/54c953b3974b33d8284c134aef468d1f7c4370be41cce2142ee4445e9f176ce6.png) |

| Traceroute | Wi-Fi |
|------------|-------|
| ![Traceroute](https://assets.kitploit.com/production/public/readmes/7933/48ba34b1dae2a9287ad85466204d728bfa71f2752231fb3e560c74c8ad2a5c63.png) | ![Wi-Fi](https://assets.kitploit.com/production/public/readmes/7933/d271c0c8a07ce0a7fcfe6a936b95ecc2f0a75696a4e11fb5cab78900ae682b98.png) |

**macOS**

| Dashboard | Traceroute |
|-----------|------------|
| ![macOS Dashboard](https://assets.kitploit.com/production/public/readmes/7933/2c47bede13ac773aaedd774b25e8a4c7113dc191778bb6434f8582b191acaaf1.png) | ![macOS Traceroute](https://assets.kitploit.com/production/public/readmes/7933/9fbe381fe228ef64ebe1c8354ec9fdced669d7f6d6d7555db1c9418394ec65d0.png) |

---

## 変更履歴

### v1.7.14 — 2026-09-30

- **AppImage — 起動クラッシュの修正、その 2**: v1.7.13 の修正 (同梱されたシステムライブラリの除去) では不十分でした — 埋め込まれた Python インタプリタ自体 (`libpython3.14.so.1.0`、Arch Linux 開発マシンの glibc 2.44 に対してビルド) が、AppImageHub カタログのテストマシン (Ubuntu 22.04、glibc 2.35) が持つよりも新しい glibc シンボルを依然として要求していたため、AppImage は起動直後にクラッシュし続けました。`build-appimage.sh` は PyInstaller バンドルをホスト上ではなく `ubuntu:22.04` コンテナ内で (`podman` 経由で) ビルドするようになり、埋め込まれるすべてのバイナリが、AppImage がサポートする必要のある glibc バージョンに対して正確にリンクされるようになりました。

### v1.7.13 — 2026-09-30

- **AppImage — 起動クラッシュの修正 (不完全、v1.7.14 を参照)**: `build-appimage.sh` は共有ライブラリ (`libz.so.1`、`libstdc++.so.6`、`libX11.so.6`、`libfontconfig.so.1` など) を Arch Linux ビルドマシンの非常に新しい glibc からそのまま同梱していました。古いディストリビューションでは AppImage が起動直後にクラッシュし (`GLIBC_ABI_DT_RELR' not found`)、AppImageHub カタログの自動テストで検出されました。これらのライブラリはバンドルから除去され、AppImage はホストシステム自身のコピーにフォールバックするようになりました。これは AppImage の標準的なアプローチです。

### v1.7.12 — 2026-08-12

- **Traceroute — 修正**: Flatpak 環境下 (v1.7.11、下記参照 — 現在は削除済み) では、ホストに実際の `traceroute` バイナリがインストールされていなくても、`traceroute` は常にホストシム経由で `PATH` 上で解決されていたため、ワーカーが `tracepath` にフォールバックすることはなく、トレースはホップもエラー表示もなく即座に終了していました。`traceroute` が解析可能な出力をまったく生成しない場合は常に `tracepath` にフォールバックするようになり、失敗の*理由*に関係なく動作します。
- **SSH ターミナル — askpass 修正**: `DISPLAY`/`WAYLAND_DISPLAY` が設定されている場合 (任意の GUI セッション)、ssh がクリーンな tty を持たないとき、パスワードプロンプトに埋め込みターミナルではなく `$SSH_ASKPASS` を試みることがあり、askpass ヘルパーがインストールされていないと認証が黙って失敗していました。`SSH_ASKPASS_REQUIRE=never` により、パスワードプロンプトは常にターミナル自体を経由するよう強制されるようになりました。
- **Flatpak パッケージングの削除**: v1.7.11 で同梱されたローカル KDE Linux マニフェストは廃止されました。上記の SSH パスワードプロンプトのバグを調査した結果、カーネルレベルの制約が明らかになりました。`flatpak-spawn --host` 経由で中継されたプロセスは、転送された pty の制御端末の所有者になることが決してできません (`TIOCSCTTY` が `EPERM` で拒否される — 別の無関係なセッションがすでに所有しているため。これはバグではなく、意図的なカーネルのセキュリティ境界です)。唯一機能する回避策 (`script` で新しい pty を割り当てる) はパスワードプロンプトを修正しますが、そのセッションのライブターミナルリサイズ伝播を壊してしまい、Flatpak をまったく出荷しないよりも悪いトレードオフと判断されました。今後、サポートされる Linux インストール経路は AUR と AppImage です。

### v1.7.11 — 2026-08-03

- **Flatpak パッケージング (KDE Linux)**: `packaging/flatpak/` 配下のローカルビルドマニフェストは、KDE Linux およびその他の Flatpak 専用ディストリビューションを対象としています。nmlinux がシェルアウトするホスト CLI ツール (`nmcli`、`pkexec`、`mount.cifs`、`ssh`、`nmap` など) は、それぞれを個別にサンドボックス化するのではなく、`PATH` 上の `flatpak-spawn --host` シム経由でブリッジされます。PySide6 は PyPI ホイールではなく Flathub の `io.qt.PySide.BaseApp` から取得されます。Flathub には公開されておらず、代わりに単一の `.flatpak` バンドルが `packaging/flatpak/build-bundle.sh` でビルドされ、AppImage と同様に各リリースに添付されます。**v1.7.12 で廃止 — 上記参照。**

### v1.7.10 — 2026-08-03

- **SSH ターミナル — 修正**: セッション起動時にターミナルウィジェットの実際のサイズがまだ判明していない場合、PTY が誤った (デフォルトの 24×80) サイズで開始され、リサイズ要求が黙って破棄される可能性がある競合状態を修正しました。これにより、リモートの全画面アプリ (例: Claude Code CLI、htop、vim) が実際のウィンドウサイズと同期しなくなり、画面下部に古い/残ったテキストが表示され、新しい出力がスクロールして通過するまで消えませんでした。ユーザーによって報告され、実際の対話セッションで再現されました

### v1.7.9 — 2026-08-02

- **SSH ターミナル — コピー/ペースト**: マウスでテキストを選択し (クリックドラッグ、ハイライト)、`Ctrl+Shift+C` または右クリックメニューでコピー、`Ctrl+Shift+V` でペースト (既存)。以前はコピーが不可能でした — テキスト選択自体が存在しませんでした
- **SSH ターミナル — 複数の同時セッション**: SSH ページは、単一の共有セッションではなく、各接続を独自のタブで開くようになりました。保存された接続への再接続 — 同じものに 2 回でも — は、以前は動作する代替を開かずにアクティブなセッションを終了させていました。現在は、すべての接続操作が新しく独立したタブを開きます

### v1.7.8 — 2026-07-14

- **Speed Test — 新しい LAN (iperf3) タブ**: 既存のインターネット速度テストに加えて、新しいタブでクライアント専用の `iperf3` テストを、同梱の公開サーバーリスト (26 か国) または保存されたカスタムサーバー (例: 組織内サーバー) に対して実行します。TCP/UDP、IPv4/IPv6/自動、およびリバース (ダウンロード) 方向をサポートし、UDP テストではジッター/ロスが表示されます。[issue #6](https://github.com/thongor77/nmlinux/issues/6) による提案
- **新しいオプション依存関係**: `iperf3` — LAN タブを有効にするにはインストールしてください。それ以外の場合、タブはバナーを表示して無効のままです

### v1.7.6 — 2026-07-05

- **Asset Inventory — 右クリック更新**: すでにスキャン済みの 1 つ以上の行 (複数選択対応) を右クリックし、「選択項目を更新」を選ぶと、ネットワーク全体のスキャンを再実行する代わりに、それらのホストだけをその場で再スキャンします
- **Asset Inventory — SSH 認証失敗のフィードバック**: 拒否された SSH ログインは、黙って失敗する代わりに「SSH 認証失敗」を表示するようになり、Nmap が検出したホスト名/OS のベースラインを失いません — 実際の Synology NAS で確認されました。そこでは、他の設定済み認証情報セットが先に試された後、DSM の Auto Block が正しいパスワードを拒否しました

### v1.7.5 — 2026-07-04

- **Ping Monitor — 保存済みターゲットディレクトリ**: 新しい左側のパネルで、ping ターゲット (名前、ホスト、間隔) を永続リストに保存できるようになり、監視中のホストがアプリの再起動後も保持され、再入力する必要がなくなりました。アクティブに監視されている各行の ★ ボタンで、セッション中いつでもそのホストをディレクトリに保存できます — アプリが予期せず終了する前に事前に計画しておく必要はありません
- **Ping Monitor — 「監視を開始」**: 保存済みターゲットを選択し、保存された間隔を再利用してワンクリックで監視を開始します

### v1.7.4 — 2026-07-04

- **Asset Inventory — 一貫性のないスキャン結果を修正**: 生存確認は再試行なしの単一の 1 秒タイムアウト ping を送信していたため、スキャナ自身の同時負荷 (最大 40 ホストを同時にプローブ) や、Wi-Fi ホストがビーコン間で一時的にスリープしているときに、実在するデバイスを取りこぼす可能性がありました — 同じ範囲を繰り返し実行すると異なるデバイス数が返される実際のサブネットでライブ確認されました。このチェックは、TCP ポートプローブにフォールバックする前に ping を再試行するようになりました
- **Asset Inventory — 新しい「空を更新」ボタン**: スキャン後、範囲全体を再度スキャンする代わりに、データを返さなかった IP のみを再スキャンします。新たに見つかったホストは既存の結果にマージされます

### v1.7.3 — 2026-07-03

- **SMB — 右クリックメニューから共有をマウント**: SMB タブで共有を右クリックし、マウント/アンマウントを選ぶと、安定したローカルパス (`~/mnt/<host>_<share>`) にマウントされ、ターミナルや他のあらゆるアプリから使用できます — 一時的なブラウズビューではありません。セッション限り (fstab/systemd による永続化なし)、認証情報は既存のユーザー/パスワードフィールドから再利用されます。Linux は制限されたパーミッションの認証情報ファイル (決して `ps` 経由で露出しない) を用いて `pkexec mount -t cifs` を使用し、macOS は `mount_smbfs` を直接使用します。サーバーがデフォルトのネゴシエーションを拒否した場合 (古い NAS でよくある)、古い SMB ダイアレクト (`vers=2.0`) で自動的に再試行します — 両方の試行は専用のヘルパープロセスを介して単一の認証プロンプトの下で行われます
- **新しいオプション依存関係**: `cifs-utils` (Linux) は SMB マウント用。macOS には組み込み

### v1.7.2 — 2026-07-03

- **macOS インストール — 素の Mac で見つかった 2 つのブートストラップバグを修正**: `bootstrap_macos.sh` は Homebrew インストーラに `NONINTERACTIVE=1` を強制しなくなりました。これは新しい管理者アカウントで sudo パスワードを求める代わりに即座に中止していました。また、ドキュメント化されたワンライナーは、スクリプトを `bash` に直接パイプするのではなく、まずダウンロードするようになりました。ネストされた対話ステップ (Xcode CLT インストーラ、Homebrew 自身の sudo プロンプト) が、パイプ時に外側のスクリプト自身の入力ストリームに干渉する可能性があったためです
- **ユニバーサル右クリックメニュー — SMB を追加**: `SmbNfsPage` は、v1.7.0 で出荷されたモジュール間右クリックシステムから唯一欠けていたターゲットページでした。ホストを右クリックして SMB を選ぶと、ホストフィールドが事前入力され、スキャンが即座に起動します。ポート 445 が開いていると検出された場合はメニュー内で太字になります
- **i18n — 残りの Dashboard 文字列を翻訳**: ゲートウェイレイテンシラベル、TLS Watchlist カードのタイトルとそのステータス行がまだフランス語でハードコードされていました。現在は 8 つのインターフェース言語すべてで翻訳されています

### v1.7.1 — 2026-07-02

- **macOS 26 (Tahoe)** — Wi-Fi SSID 修正: 主要なデータソースを `system_profiler` (位置情報サービスなしでは `<redacted>` を返す) から **CoreWLAN** に切り替えました。アプリは初回起動時に位置情報サービスの許可を要求するようになりました。許可されると、Wi-Fi ページはすべてのネットワークを実際の名前で表示します
- **macOS** — Connection Manager: 接続中の SSID は CoreWLAN 経由で読み取られ、セキュリティモードは `system_profiler` を使用します
- **macOS** — SMB: NAS が認証情報を要求する場合に明確な「認証が必要」メッセージを表示。Homebrew smbclient からの誤った smb.conf 警告を修正
- **macOS** — 初回の位置情報サービス許可ダイアログ後の終了時の潜在的なクラッシュを修正

### v1.7.0 — 2026-07-02

- **ユニバーサル右クリックコンテキストメニュー** — IP またはホスト名を含むすべてのテーブルで、コピー&ペーストなしでモジュール間を直接移動できます。検出された任意のホストを右クリックし、Ping、ポートスキャン、Whois、DNS、Traceroute、MTR、SSH、RDP、VNC、トポロジで表示、またはインベントリに追加を選びます。対応するポートが開いていると検出された場合、メニュー項目 SSH/RDP/VNC は**太字**で表示されます。ラベルは 8 つのインターフェース言語すべてで完全に翻訳されています。
- **ソースページ** (右クリックアクションを発行): IP Scanner、Nmap、Ping、Port Scanner、Traceroute、MTR、Topology (ノード右クリック)
- **ターゲットページ** (ホストを受け取り事前入力): Whois (`set_target` + 自動クエリ)、DNS (`set_target` 事前入力のみ)、Ping (`set_target` + 自動開始)、Traceroute (`set_target` + 自動開始)、MTR (`set_target` + 自動開始)、Port Scanner (`set_target` + フォーカス)、SSH / RDP / VNC (`set_target` が事前入力された新規接続フォームを開く)、Topology (`load_hosts` が再スキャンなしで IP Scanner/Nmap スキャンからノードを注入 — ゲートウェイは自動検出、エッジが描画され、起点ノードは赤でハイライト)、Asset Inventory (`prefill_hosts` が検出されたホストに対して直接認証情報スキャンを開始し、ICMP 検出フェーズをスキップ)
- **Dashboard — ゲートウェイ ping グラフ**: 2 秒ごとに更新されるライブレイテンシスパークライン。色分け (<20 ms 緑 / 20–100 ms オレンジ / >100 ms 赤 / タイムアウト 赤)
- **Dashboard — TLS Watchlist サマリー**: Dashboard のステータスカードが、再クエリなしで TLS Watchlist の状態 (OK / 期限切れ間近 / アラート) を自動的に反映します
- **Dashboard — ジオマップのリサイズ**: ウィンドウのリサイズ時に世界地図が水平方向に拡大するようになりました

### v1.6.4 — 2026-06-28

- **macOS**: メニューバーが **Python** ではなく **NMLinux** を表示するようになりました — 根本原因: Python に `exec()` した後、`NSBundle.mainBundle()` は Qt が QApplication 構築中に読み取る `Python.framework` バンドル (CFBundleName = "Python") に解決されます。バンドルの `infoDictionary()` にパッチを当て、アプリケーションメニューが作成される前に AppKit 経由でネイティブメニュー項目の名前を変更することで修正しました

### v1.6.3 — 2026-06-28

- **macOS**: `pyobjc-framework-Cocoa` 経由で `NSProcessInfo.setProcessName_` を使ってメニューバーを修正する最初の試み (v1.6.4 で置き換え)

### v1.6.2 — 2026-06-28

- **macOS**: `install_macos_app.sh` 内の bash ランチャースクリプトをコンパイル済み C スタブに置き換え、macOS が `.app` バンドルを実行中のプロセスに正しく関連付けるようにしました。フォールバックとして `setprogname` と `sys.argv[0]` のオーバーライドを追加

### v1.6.1 — 2026-06-25

- **SSH ターミナル — リモートエコーを修正**: 埋め込み SSH ターミナルで入力したキーストロークはリモートシェルに送信されましたが、決してエコーバックされませんでした (ログイン後、キーボードが「死んだ」ように見えました)。nmlinux はローカル PTY のエコーを強制的にオフにし、ssh はその「エコーなし」を自身のターミナルモード (pty-req) を介してリモート pty に伝播したため、リモートシェルは入力のエコーを停止しました。新しい Ubuntu 26.04 VM で再現されました (最近の OpenSSH はこれらのモードを忠実に適用します)。ターミナルは PTY を通常モードに保ち、実際のターミナルエミュレータと同様に ssh にエコーを管理させるようになりました。

### v1.6.0 — 2026-06-24

- **Asset Inventory — WinRM Windows (完成)**: Windows Firewall によって ICMP がブロックされている場合の TCP ポートプローブによるホスト検出。PowerShell は cmd.exe がパイプ `|` を解釈するのを防ぐため、完全な絶対パス + **EncodedCommand (base64)** を使用するようになりました。管理者権限なしの完全なフォールバックチェーン: OS は `ver` 経由、CPU はレジストリ経由、RAM は `systeminfo` 経由、ディスクは `wmic` → `fsutil` (ロケール対応 EN カンマ / FR スペース) → `dir /-C` 経由
- **Asset Inventory — マルチ認証情報 SSH**: 複数の SSH 認証情報セットをサポート。macOS ディスクを修正 (`/System/Volumes/Data`)、Apple Silicon CPU フォールバック (`hw.model`)、Synology (`/volume1`)、Unraid (`/mnt/user`)
- **バグ修正**: WinRM エラーが黙ってフォールバックする代わりにテーブルに表示されるようになりました。WinRM/SNMP ホスト検出が SSH 認証情報の存在によってブロックされなくなりました。pywinrm のタイムアウトを修正

### v1.5.3 — 2026-06-24

- **macOS .app — Homebrew ツール検出**: Homebrew 経由でインストールされた `sshpass`、`nmap`、`snmpget` が絶対パスを使用して検出・呼び出されるようになりました。macOS の `.app` バンドルは Homebrew の PATH (`/opt/homebrew/bin`、`/usr/local/bin`) を継承しないため、以前はインストール済みのツールが黙って無視されていました
- **macOS 更新パス**: リポジトリルートから `git pull && bash packaging/install_macos_app.sh` を実行することが、ドキュメント化されたアップグレード方法になりました。スクリプトは自身の venv (`~/.local/share/nmlinux/venv`) を管理し、システムレベルの `pip` や `pipx` を必要としません

### v1.5.2 — 2026-06-24

- **Asset Inventory** — 新モジュール (29 番目)。CIDR 範囲をスキャンし、SSH、WinRM、SNMP、または Nmap 経由で各ホストから OS、CPU、RAM、ディスク、稼働時間を収集します。プロトコルごとに複数の認証情報セットをサポート (順番に試行)。ゼロ保持ポリシー: 認証情報はディスクに書き込まれず、スキャン後にメモリから消去されます。結果を JSON、CSV、または Markdown としてエクスポート。Dashboard の IP Geolocation セクションにアニメーションジオマップを追加
- **SSH 収集の修正**: ディスクコマンドの awk クォートエラーを修正。`free -h` を BusyBox 互換の `free` に置き換え。macOS コードパスは OS 名に `sw_vers`、Apple Silicon CPU に `hw.model` フォールバック、APFS ユーザーデータボリュームに `/System/Volumes/Data` を使用するようになりました。Synology/Unraid ボリューム (`/volume1`、`/mnt/user`) は root より前に検出されます。`df | tail -1 || …` の偽成功パターンを `test -d` ガードで修正。`lsb_release` の出力から周囲の引用符を除去。複数の SSH/WinRM 認証情報セットをサポート (ホストごとに順番に試行)

### v1.5.0 — 2026-06-17

- **File Transfer Server** — アプリから直接軽量な TFTP または HTTP サーバーを起動/停止する新モジュール。典型的なユースケース: ルーター、スイッチ、プリンターの設定のバックアップと復元。同時に 1 つのサーバー (TFTP または HTTP)、設定可能なポートとルートディレクトリ、ローカル IP はクリップボードにコピーするボタンとして表示。HTTP はディレクトリリスティング (LAN 上の任意のブラウザから閲覧)、GET (ダウンロード)、POST/PUT (アップロード) を含みます。TFTP は GET と PUT (双方向) をサポートし、ポート 69 は root を必要とします — 権限エラー時にアプリは「root として起動 (pkexec)」ボタンを表示します。ライブ転送ログテーブル (タイムスタンプ、ファイル名、クライアント IP、方向 ↑/↓、サイズ)。ポートトラバーサル保護。8 つのインターフェース言語。新しい依存関係: `tftpy`

### v1.4.3 — 2026-06-14- **TLS Watchlistの修正**: 自己署名証明書と信頼されていない証明書が緑ではなく「⚠ Invalid / untrusted cert」(オレンジ) として正しく表示されるようになりました。SSL例外のキャッチが拡張され、すべての `ssl.SSLError` サブクラスをカバーするようになりました。エントリはバックグラウンドチェックの実行中に「… (checking)」、ホストに到達できない場合は「— (unreachable)」を表示するようになりました

### v1.4.2 — 2026-06-14

- **TLS Watchlist** — 証明書の有効期限を監視するホスト名の永続リスト。`+ Watch` (現在のホスト/ポートを使用) またはパネルで手動でホストを追加できます。バックグラウンドチェックは起動の2秒後に自動的に実行されます。サイドバーの「TLS Inspector」エントリには色付きのドットが表示されます: いずれかの証明書が期限切れの場合は赤、いずれかの証明書が30日以内に期限切れになる場合はオレンジ。パネルには再チェックボタンがあります。リストはエントリごとのステータス (✓ / ⚠ / EXPIRED) を色分けして表示します

### v1.4.1 — 2026-06-14

- **macOS — IP Scanner**: macOSでのMACアドレス、ベンダー、インターフェースの検索を修正しました。`_arp_entry()` はmacOS上で `arp -n <ip>` を呼び出し、`/proc/net/arp` (Linux専用) を読み取る代わりにその出力形式 (`? (IP) at AA:BB:CC on en0`) を解析するようになりました。4つのスキャナ列すべてがmacOS上で正しく入力されるようになりました
- **VNCヘルプ**: LinuxにはデフォルトでVNCサーバーが存在しないことを明確にし、インストールする一般的なオプション (x11vnc、tigervnc-server、wayvnc) を列挙した注記を8言語すべてに追加しました

### v1.4.0 — 2026-06-14

- **macOS — IP Scanner**: クロスプラットフォームの逆引きDNS解決のために、`getent` (Linux専用) をPythonの `socket.gethostbyaddr()` に置き換えました。ホスト名検索が追加ツールなしでmacOS上でネイティブに動作するようになりました
- **macOS — SMB Browser**: `smbclient` (Homebrew sambaが必要) から `smbutil view` (macOS内蔵ツール) に切り替えました。SMB共有の一覧表示がインストールなしでmacOS上で動作するようになりました
- **macOS — NFS Browser**: `showmount` はmacOSに内蔵されていますが `--no-headers` をサポートしていません。macOSではフラグを削除し、パーサーでヘッダー行をスキップするようにしました。NFSエクスポートの一覧表示がネイティブに動作するようになりました
- **macOS — RDP**: `xfreerdp` が見つからない場合、`open rdp://` URLスキームにフォールバックします。インストールされていればMicrosoft Remote Desktop (App Store) を開き、ホスト、ポート、ユーザー名、ドメインが事前入力されます
- **macOS — VNC**: `vncviewer` が見つからない場合、`open vnc://` URLスキームにフォールバックします。macOS Screen Sharing (内蔵、インストール不要) を開きます

### v1.3.9 — 2026-06-13

- **SSHエージェント転送** — SSH接続フォームに新しい「Agent forwarding」チェックボックスを追加しました。`ssh` コマンドに `-A` を追加します。秘密鍵をコピーせずにサーバー間をジャンプできます (PC → A → B)。アクティブなSSHエージェント (`SSH_AUTH_SOCK`) が必要です。コンテキストヘルプを8言語すべてで更新しました

### v1.3.8 — 2026-06-13

- **コマンドパレット (Ctrl+P)** — 27個のモジュールのいずれかへ瞬時にキーボードナビゲーションできます。名前とキーワード (例: "firewall"、"tls"、"ssh key"、"scan") でファジー検索できます。Up/Down矢印 + Enter またはシングルクリックで移動できます。アプリ内のどこからでもCtrl+Pで開きます

---

[Read more](https://github.com/thongor77/nmlinux)
ツールをダウンロード