Power Shell віддалено активує Windows


0

Тож у мене є ПК з повним доступом до внутрішньої мережі (для того, що мені потрібно зробити) І я не впевнений, чи це проблема з кодом чи мої речі не розуміють.

Але я намагаюся активувати Windows 7 к.с. віддалено на 300+ одиниць. немає домену, всі віддалені ПК є робочою групою. Сервера ліцензій немає, ключі знаходяться в текстовому файлі, брандмауери є на обох ПК. Одне ім’я для всіх, Different Ips, і цільовий ПК має захищений паролем обліковий запис.

Я намагався активувати його безпосередньо, але все-таки заблокувався, я зрозумів, що це стіна пожежі, але намагався її відключити безпосередньо, тому тепер я вмикаю, щоб увімкнути спільний доступ до файлів та Pritner & WMI, тому що це дозволило мені активувати його без проблем. (Немає доступу до Інтернету)

ForEach ($IP in Get-Content "input.txt")
Invoke-Command { netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes }
psexec \\E:\FINAL\Enable FP\test.txt]][-u David [-p ] netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=yes

Відповіді:


0

Домен або робоча група, ви не можете використовувати це ...

Invoke-Command

…, Якщо PowerShell Remoting не ввімкнено, і ви користуєтесь обліковим записом користувача, який знаходиться в локальній групі адміністраторів на віддаленому комп’ютері, і брандмауер повинен бути налаштований для його дозволу.

Налаштування PSRemoting в робочій групі вимагає більше кроків для його налаштування.

Тиждень видалення: видалення без домену

Видалення PowerShell між двома машинами робочих груп

Не потрібно використовувати psexec, якщо ви використовуєте PSRemoting. Це не є підставою для використання PSRemoting, якщо ви використовуєте psexec.

Єдиною причиною поєднання psexec і PSremoting є те, що PSRemoting не дозволяє запускати локальний обліковий запис користувача на машині, тоді як psexec буде.

Щоб встановити програмне забезпечення / включити функції, обліковий запис користувача повинен бути локальним адміністратором на віддаленому хості.

Ваш Invoke-Command Синтаксис теж не правильно. Ваш синтаксис ForLoop невірний.

ForEach ($IP in (Get-Content 'input.txt'))
{
    Invoke-Command -ComputerName $IP -Credential 'domain01\user01' -ScriptBlock {
        netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes 
    }
}

яку версію PowerShell ви використовуєте? Що ви не використовуєте командлет брандмауера, проти netsh?

Щоб робити те, що ви хочете, використовуйте PSRemoting або psexec.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.