Загрузка данных


# Удаляем неудачную шару, если она успела создаться
Remove-SmbShare -Name "ApexScan" -Force -ErrorAction SilentlyContinue

# Папка
New-Item "C:\ApexScan" -ItemType Directory -Force | Out-Null

# Получаем локализованное имя группы Everyone/Все через SID
$Everyone = (New-Object System.Security.Principal.SecurityIdentifier("S-1-1-0")).Translate(
    [System.Security.Principal.NTAccount]
).Value

Write-Host "Группа: $Everyone"

# NTFS-права
$acl = Get-Acl "C:\ApexScan"

$rule = New-Object System.Security.AccessControl.FileSystemAccessRule(
    $Everyone,
    "FullControl",
    "ContainerInherit,ObjectInherit",
    "None",
    "Allow"
)

$acl.SetAccessRule($rule)
Set-Acl "C:\ApexScan" $acl

# SMB-шара
New-SmbShare `
    -Name "ApexScan" `
    -Path "C:\ApexScan" `
    -FullAccess $Everyone

# Разрешаем SMB в брандмауэре
Get-NetFirewallRule |
    Where-Object {
        $_.DisplayGroup -eq "Общий доступ к файлам и принтерам" -or
        $_.DisplayGroup -eq "File and Printer Sharing"
    } |
    Enable-NetFirewallRule

Write-Host ""
Write-Host "=== ГОТОВО ==="
Write-Host "\\192.168.88.49\ApexScan"