Windows で管理共有 (Admin$、IPC$、C$) を効果的に管理する方法

Windowsの管理共有はリモート管理には便利ですが、放置しておくとセキュリティ上の頭痛の種になりかねません。ネットワークツールで「」や「$」などの隠し共有が表示され、無効化または有効化の方法がわからない場合は、このガイドが役立ちます。また、セキュリティを強化したい場合や、ネットワークを整理したい場合にも便利です。Windowsは当然のことながら、必要以上にセキュリティを強化しているためです。Admin$C$

Windowsで管理共有を削除または無効にする方法

なぜこれが役立つのか

管理共有を削除すると、特にリモートアクセスを想定していないマシンでは、攻撃対象領域が狭まります。これらの共有を無効にすると、権限のないユーザーがネットワーク経由でファイルシステムを覗き見することができなくなります。ただし、リモート管理ツールに依存している場合や、すぐにアクセスする必要がある場合は、これらの共有を無効にすると、別の接続方法が必要になることに注意してください。セキュリティ強化と利便性の両立は、ある意味トレードオフと言えるでしょう。

いつ使うか

サーバーや職場の PC を強化する場合、または適切な認証情報なしでリモートからシステム ドライブにアクセスできないようにしたい場合は、これが最適な方法です。

何を期待するか

これらの共有を削除または無効化すると、ネットワークエクスプローラやnet viewなどのツールには表示されなくなります。ただし、レジストリを変更しない限り、Windowsは再起動後にこれらの共有を再作成する傾向があります。そのため、レジストリの変更やスクリプトによる修正が常に必要になります。

方法1: 管理共有を手動で削除する

  • コンピュータの管理を開きます(スタートを右クリックし、コンピュータの管理を選択します)
  • 共有フォルダ > 共有へ移動
  • Admin$共有またはC$などの他の管理共有を見つけます
  • 右クリックして共有を停止を選択します

または、コマンド ラインを使用する場合は、管理者 PowerShell を開いて次のコマンドを実行します。

net share Admin$ /delete

これにより共有は直ちに削除されますが、さらに調整を行わない限り、再起動後に Windows によって共有が再作成される可能性があるので注意してください。

方法2: Windowsの起動時に管理共有を作成しないようにする

  • レジストリエディターを開くには、次のように入力します。regedit
  • HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parametersに移動します
  • AutoShareWks (ワークステーションの場合) またはAutoShareServer (サーバーの場合)という名前の新しい DWORD 値を追加します。
  • 値を0に設定する

コマンドラインでこれを行うには、次のコマンドを実行します。

reg add HKLM\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters /f /v AutoShareWks /t REG_DWORD /d 0

サーバー版をご利用の場合は、この手順を繰り返してくださいAutoShareServer。その後、再起動してください。

一部の設定では、最初の再起動時に共有が表示される場合がありますが、通常は長期間は表示されません。それでも共有が繰り返し表示される場合は、レジストリ設定を再確認し、複数のマシンを管理している場合はグループポリシーの使用を検討してください。

オプション: ドメイン全体の制御にグループポリシーを使用する

  • オープングループポリシー管理
  • 新しいGPOを作成するには、「コンピューターの構成」>「基本設定」>「Windowsの設定」>「ネットワーク共有」に移動します。
  • アクションを削除に設定し、「すべての管理ドライブ文字の共有を削除する」をチェックします。

この方法では、すべてのドメイン PC に設定を適用できるため、大規模な環境では便利です。

必要に応じて管理共有を再度有効にする

なぜこれが必要なのか

無効化すると制限が厳しすぎる場合や、気が変わった場合は、共有を元に戻すことができます。共有が削除されると、サーバーや管理ツールが突然動作しなくなる場合があるため、再度有効にする方法を知っておくと便利です。

管理者共有を再度有効にする方法

  • レジストリエディターを開き、AutoShareWksまたはAutoShareServerを1に設定します。
  • または、PowerShell で次のコマンドを実行します。
Set-ItemProperty -Name AutoShareWks -Path HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters -Value 1

その後、次のコマンドでLanmanServerサービスを再起動します。

Get-Service LanmanServer | Restart-Service -Verbose

管理者共有が再び表示されるかどうかを確認してくださいGet-SmbShare。設定によっては、管理者共有が「オフ」に設定されている場合でも、再起動またはサービスの再起動後に再び表示されることがあります。

リモートアクセスとUACバイパスについて覚えておく

管理共有へのリモートアクセスが機能しない場合、特にWindowsワークグループコンピュータで機能しない場合は、リモートUAC(ユーザーアカウント制御)が原因である可能性があります。Windowsはセキュリティ上の理由から、デフォルトでリモート管理アクセスをブロックします。この問題を解決するには、 LocalAccountTokenFilterPolicyというレジストリエントリを作成し、値を1に設定します。

管理者として PowerShell でこのコマンドを実行します。

reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v "LocalAccountTokenFilterPolicy" /t REG_DWORD /d 1 /f

再起動後、管理者の資格情報を使用して再度接続してみてください。通常、これはドメインアカウント以外のアカウントが管理共有にリモートアクセスできるようにするために必要ですが、セキュリティ上のトレードオフとなります。

レジストリを操作するのは確かに最善の方法ではありませんが、厳密に制御するにはこれが唯一の方法である場合もあります。ただし、これらの設定をいじると、慎重に管理しないとセキュリティリスクが生じる可能性があることに注意してください。

まとめ

  • コンピューターの管理または net share コマンドを使用して管理共有を削除できます。
  • Windows による再作成を停止するには、レジストリ設定を変更します (AutoShareWks/AutoShareServer を 0 に変更します)。
  • 変更を有効にするには、サービスまたはマシンを再起動します。
  • ドメイン上の複数のコンピューターを管理する場合は、グループ ポリシーを使用します。
  • リモート アクセスの場合は、LocalAccountTokenFilterPolicyを調整します。

まとめ

管理共有を無効化または有効化することは可能ですが、バランスを取ることが重要です。削除するとセキュリティは向上しますが、リモート管理に支障をきたす可能性があります。システムの強化やクリーンアップだけを目的としている場合は、これらの手順で簡単に解決できるはずです。ただし、レジストリをロックダウンしない限り、Windowsは再起動後にこれらの共有を再作成する傾向があることに注意してください。この方法がお役に立てば幸いです。誰かの頭痛の種が少しでも解消されることを願っています。