Пакетная или PowerShell для монтирования дисков на FQDN


2

В настоящее время я использую пакетный скрипт для монтирования сетевых ресурсов каждое утро:

NET USE * /DELETE /Y
NET USE Z: \\<IP>\<SHARE> <AUTHENTICATION> /persistent:no
...

Что хорошо, когда я в сети, но не работает за пределами сайта. У нас есть домен, который указывает на наш общедоступный IP, а затем включается переадресация портов, поэтому теоретически я могу

NET USE * /DELETE /Y
NET USE Z: \\fqdn.com\<SHARE> <AUTHENTICATION> /persistent:no
...

За исключением того, что не работает в пакетном скрипте или пользовательском интерфейсе Windows.

Я думаю, что был бы способ получить IP-адрес fqdn.com (который также удобно хранится по адресу fqdn2.com/ip.txt), но мой опыт пакетирования намного превосходит мой.

Любой вклад высоко ценится.


Хм, почему бы просто не изменить конечную часть на / persistent: да? и не отображать ваши диски каждый день.
Spencer5051

Вы позволяете SMB из Интернета ?! Это смело.
afrazier

Ответы:


1

С PowerShell эта задача немного проще, поскольку в вашем распоряжении все возможности платформы .Net. Существует класс System.Net.WebClient, который можно использовать для загрузки файла и получения его содержимого. Вы можете использовать сценарий PowerShell, аналогичный приведенному ниже, чтобы получить содержимое файла ip.txt и затем выполнить команды cmd.exe.

$fqdn = "fqdn domain name goes here"
$url  = "http://$fqdn/ip.txt"

$fqdnIp = (new-object System.Net.WebClient).DownloadString($url)

Write-Host -ForegroundColor Green "Retrieved contents of ${url}: $fqdnIp"

$cmd = "`"NET USE * /DELETE /Y`""
&cmd.exe /c $cmd

$cmd = "`"NET USE Z: \\$fqdnIp\<SHARE> <AUTHENTICATION> /persistent:no`""
&cmd.exe /c $cmd

ИДЕАЛЬНО! Спасибо, что действительно ответили на мой вопрос!
LuckySpoon

0

То, что вы можете перейти на веб-сайт fqdn.com, не дает вам доступа к внутренней сети или внутреннему домену. Порт 80 - это стандартный порт для HTTP (веб-сайтов), который пересылается с общедоступного IP-адреса на ваш внутренний веб-сервер. Однако, возможно, с некоторыми другими исключениями, это все, что разрешено.

Для доступа к вашей внутренней сети и ресурсам вам нужна виртуальная частная сеть ( VPN ). VPN - это защищенное (зашифрованное) соединение из Интернета с вашей внутренней сетью. VPN позволяет компьютеру вне вашей внутренней сети «чувствовать», как будто он внутри.

Как только вы установили VPN-соединение, ваш пакетный скрипт будет работать. Вы можете получить доступ к внутренним сетевым дискам и принтерам и делать все, что можете, находясь в офисе.

Microsoft предлагает бесплатный VPN-сервер со всеми версиями Windows Server, а клиент встроен во все версии Windows. Существуют и другие решения VPN, как аппаратные, так и программные, бесплатные и платные.

Поговорите с вашим Windows / сетевым администратором, возможно, VPN уже установлен.


Я думаю, что я, возможно, не прояснил свой вопрос - все порты перенаправлены и т. Д. Моя точка зрения - если я могу получить IP-адрес, который fqdn.com разрешает внутри моего пакетного сценария, все в порядке.
LuckySpoon

0

ваши сценарии должны работать, за исключением того, что вы должны проверить 4 вещи

  1. DNS работает? попробуйте проверить это на вашем внешнем компьютере с помощью ping.
  2. попробуйте отключить WINS на стороннем клиенте.
  3. Вы перенаправили все необходимые порты? попробуйте поставить сервер на хост DMZ и посмотреть, работает ли он.

    если публичный ip не изменится, то просто жестко запишите его в ваши systems32 \ etc \ hosts.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.