Salesforce, Python, SQL, & other ways to put your data where you need it

Need event music? 🎸

Live and recorded jazz, pop, and meditative music for your virtual conference / Zoom wedding / yoga class / private party with quality sound and a smooth technical experience

💬 EN

#


I can’t figure out whether or not a “windows-2022/latest”-typed “Microsoft.DevOpsInfrastructure/pools” (“MDP”) instance’s CLI would be able to successfully return data from “Get-ChildItem -Path ‘\on.prem.windows.server.vm\smb-based\dfs-share’” as long as the MDP instance was networked in a way that allowed “nslookup on.prem.windows.server.vm” to resolve an IP address and as long as firewall rules didn’t block traffic from the MDP instance into “on.prem.windows.server.vm”

Based on the information provided in the search results, a “windows-2022/latest”-typed Managed DevOps Pool (MDP) instance should be able to successfully return data from “Get-ChildItem -Path ‘\on.prem.windows.server.vm\smb-based\dfs-share’” under certain conditions12.

The key factors that would enable this functionality are:

  1. Private Networking: MDP allows teams to create pools that connect to resources on their private network2. This feature would allow the MDP instance to communicate with on-premises resources.
  2. Network Configuration: The MDP instance needs to be networked in a way that allows it to resolve and connect to the on-premises Windows server VM1. This includes:
    • Proper DNS resolution: The ability to resolve “on.prem.windows.server.vm” to an IP address.
    • Appropriate firewall rules: Ensuring that traffic from the MDP instance to the on-premises server is not blocked.
  3. Authentication: The MDP instance would need appropriate credentials to access the SMB-based DFS share on the on-premises server.

Assuming these conditions are met, the MDP instance should be able to execute the PowerShell command and return data from the specified path. However, it’s important to note that the specific configuration steps to enable this connectivity are not detailed in the provided search results. You would need to configure the MDP’s networking settings to connect it to your organization’s network, possibly using features like Express Route or other VPN solutions1.


I’m all set on networking. Please tell me more about getting authentication right, given that the MDP instance is of Azure type “Managed DevOps Pool.”

To set up authentication correctly for a Managed DevOps Pool (MDP) instance, you need to consider several aspects:

User Assigned Managed Identity

  1. Create a user assigned managed identity in the same Microsoft Entra directory as your Azure DevOps organization3.
  2. Add this identity to your Managed DevOps Pool:
    • Go to your MDP in the Azure portal
    • Navigate to Settings > Identity
    • Click “Add” and select the created managed identity3

Azure DevOps Integration

  1. Grant the managed identity a Basic license in Azure DevOps4.
  2. Assign permissions to the identity:
    • Give “Read and Manage Agent Pools” permission at the Organization level
    • Grant “Administrator” permission to the specific pool instance4

Pool Administration Permissions

When creating the pool, configure the “Pool administration permissions” setting:

  • “Creator only” (default): The pool creator is added as an administrator, with inheritance off
  • “Inherit permissions from project”: The creator is an administrator, with inheritance on
  • “Specific accounts”: Manually specify administrator accounts5

Agent Authentication

For the agents within the pool to authenticate with Azure DevOps, the following methods are typically used:

  1. Personal Access Token (PAT): This is the standard method for self-hosted agents6.
  2. Service Principal: If using a service connection from Azure DevOps, ensure the underlying principal has:
    • “Agent pools administrator” permissions
    • A stakeholder license in Azure DevOps7

Key Vault Integration

If you need to fetch certificates from Azure Key Vault:

  1. Configure an identity for your pool
  2. Assign this identity the “Key Vault Secrets User” role
  3. Set up Key Vault integration in Settings > Security of your MDP5

Remember, the specific authentication setup may vary based on your organization’s security requirements and the particular use case for your Managed DevOps Pool.


No, not that. I meant please elaborate on what I need to do for making the running Managed DevOps Pools agent able to access the SMB-based DFS share on the on-premises server.

To enable a Managed DevOps Pools (MDP) agent to access an SMB-based DFS share on an on-premises server, you need to focus on authentication and network connectivity. Here are the key steps to accomplish this:

Authentication Setup

  1. Create a user-assigned managed identity for your MDP:
    • Go to the Azure portal and create a new user-assigned managed identity
    • Assign this identity to your Managed DevOps Pool in the Azure portal under Settings > Identity8
  2. Configure the on-premises server:
    • Ensure the on-premises Windows server recognizes the managed identity
    • Set up appropriate permissions for the managed identity on the SMB-based DFS share

Network Configuration

  1. Ensure private network connectivity:
    • Configure your MDP to use a private network by specifying the Azure VNET subnet’s resource ID in the VmssFabricProfile.networkProfile.subnetId property of your Microsoft.DevOpsInfrastructure/pools resource9
  2. Set up hybrid connectivity:
    • Establish a connection between your Azure VNET and on-premises network using Azure ExpressRoute or a Site-to-Site VPN
  3. DNS resolution:
    • Configure DNS settings to ensure the MDP can resolve the on-premises server’s hostname

Access Configuration

  1. Firewall settings:
    • Adjust firewall rules on the on-premises server to allow incoming connections from the MDP’s subnet
  2. SMB protocol:
    • Ensure SMB protocol is enabled and properly configured on the on-premises server
  3. DFS namespace configuration:
    • Verify that the DFS namespace is accessible from the Azure network

By implementing these steps, your Managed DevOps Pools agent should be able to access the SMB-based DFS share on the on-premises server using a command like Get-ChildItem -Path '\\on.prem.windows.server.vm\smb-based\dfs-share'. Remember to test the connection thoroughly and monitor for any authentication or access issues that may arise.


But Azure managed identities don’t exist as far as on-prem servers are concerned, I thought!

You’re correct in thinking that Azure managed identities don’t directly exist for on-premises servers. However, there are some nuanced approaches that can bridge this gap:

  1. Azure Arc: This technology extends Azure’s management capabilities to resources outside of Azure, including on-premises servers. With Azure Arc, you can use managed identities for on-premises servers that are Arc-enabled1011.
  2. Hybrid Worker Groups: In Azure Automation, you can use Hybrid Worker Groups to run runbooks on on-premises machines. When configured, these on-premises machines can leverage the managed identity of the Automation Account12.
  3. Azure Connected Machine Agent: This agent allows you to manage Windows and Linux machines hosted outside of Azure, including on-premises environments. It enables the use of managed identities for these connected machines10.
  4. SQL Server 2022: Microsoft introduced support for Microsoft Entra authentication (formerly Azure AD) in SQL Server 2022, which could potentially work with managed identities for on-premises SQL Server instances13.

While these solutions don’t make managed identities directly available to on-premises servers in the same way they work for Azure resources, they do provide mechanisms to extend some of the benefits of managed identities to on-premises environments. It’s important to note that these are relatively recent developments and may require specific configurations or Azure services to implement.


Can the on-prem SMB-based DFS share be set up authz-wise so that only 1 or 2 employees have write access and the rest all have read-only access, presuming employees exist in the on-prem Active Directory instance?

Yes, the on-premises SMB-based DFS share can be configured to provide different levels of access to employees based on their roles, using the existing on-premises Active Directory for authentication and authorization. Here’s how you can set it up:

Share Permissions

  1. Set the share permissions to allow “Everyone” full control. This simplifies management and allows NTFS permissions to handle access control.

NTFS Permissions

  1. Configure NTFS permissions on the DFS share folder:
    • Create two Active Directory security groups: “DFS_Writers” and “DFS_Readers”
    • Assign “Modify” permissions to the “DFS_Writers” group
    • Assign “Read \& Execute” permissions to the “DFS_Readers” group
    • Remove inheritance and convert inherited permissions to explicit permissions
  2. Add the 1-2 employees who need write access to the “DFS_Writers” group.
  3. Add all other employees to the “DFS_Readers” group.

DFS Namespace Configuration

  1. Enable access-based enumeration on the DFS namespace to hide folders users don’t have permissions to access14.
  2. Ensure the DFS namespace servers are running Windows Server 2008 or newer, and domain-based namespaces use Windows Server 2008 mode or later14.

Additional Considerations

  • Use Group Policy to map the DFS share for users, ensuring they access it through the namespace path (e.g., \domain.name\dfsshare) rather than direct server paths15.
  • Regularly audit and review group memberships to maintain proper access control.
  • Consider using NTFS auditing to monitor file access and changes if required for compliance or security purposes.

By implementing these steps, you can effectively control access to the SMB-based DFS share, allowing only specific employees write access while granting read-only access to others, all managed through your existing on-premises Active Directory.


Can an Azure system-assigned managed identity be set up to somehow be recognized in on-prem Active Directory as if it were an on-prem managed service account?

No, an Azure system-assigned managed identity cannot be directly recognized in on-premises Active Directory as if it were an on-premises managed service account. Azure managed identities are designed to work within the Azure ecosystem and are not natively compatible with on-premises Active Directory1617.

However, there are some approaches that can help bridge the gap between Azure managed identities and on-premises resources:

  1. Azure Arc: This technology extends Azure management to on-premises servers, allowing some Azure features, including managed identities, to be used with on-premises resources16.
  2. Hybrid Worker Groups: In Azure Automation, Hybrid Worker Groups can run runbooks on on-premises machines, leveraging the managed identity of the Automation Account16.
  3. Azure Connected Machine Agent: This agent enables management of on-premises Windows and Linux machines, providing some managed identity functionality for connected machines16.
  4. SQL Server 2022: This version introduced support for Microsoft Entra authentication, which could potentially work with managed identities for on-premises SQL Server instances16.

It’s important to note that these solutions do not make Azure managed identities directly equivalent to on-premises managed service accounts. They are workarounds that extend some of the functionality of managed identities to on-premises environments, but do not fully integrate Azure managed identities into the on-premises Active Directory structure1718.

For applications that require direct integration with on-premises Active Directory, you may need to explore alternative authentication methods or identity solutions that are compatible with both Azure and on-premises environments1920.


Okay, new idea. What are the easiest ways to get the on-prem SMB/DFS share listening to Azure Event Grid or Azure Event Hubs so that it can know when to go overwrite its own contents from the contents of an Azure Storage Account?

To enable an on-premises SMB/DFS share to listen to Azure Event Grid or Azure Event Hubs and update its contents based on changes in an Azure Storage Account, you can consider the following approaches:

Azure Hybrid Runbook Worker

  1. Set up an Azure Automation account
  2. Configure a Hybrid Runbook Worker on an on-premises server
  3. Create a runbook that:
    • Listens to Azure Event Grid/Event Hubs
    • Triggers file synchronization when events occur
  4. Schedule the runbook to run continuously

This method allows you to use Azure’s managed services while executing actions on-premises21.

Azure Function with Hybrid Connections

  1. Create an Azure Function app
  2. Set up a Hybrid Connection in Azure App Service
  3. Develop a function that:
    • Subscribes to Event Grid/Event Hubs
    • Executes file copy operations to the on-premises share
  4. Configure the function to run continuously

This approach leverages serverless computing while maintaining on-premises connectivity21.

Custom Windows Service

  1. Develop a Windows service that:
    • Connects to Azure Event Hubs using the Azure SDK
    • Performs file synchronization when events are received
  2. Install the service on an on-premises server with access to the SMB/DFS share
  3. Ensure the service has necessary permissions to modify the share

This method provides more control but requires custom development and maintenance22.

Azure IoT Edge

  1. Set up an Azure IoT Edge device on an on-premises server
  2. Create an IoT Edge module that:
    • Subscribes to Event Grid/Event Hubs
    • Executes file synchronization tasks
  3. Deploy the module to the IoT Edge device

This approach is suitable if you’re already using Azure IoT services or plan to expand IoT capabilities23.

Remember to consider security implications and ensure proper authentication and authorization mechanisms are in place for accessing both Azure resources and on-premises shares. Additionally, implement error handling and logging to manage potential network interruptions or synchronization issues.


Please help me threat model putting Azure File Sync onto the onprem server versus writing to it via Azure Automation.

When considering Azure File Sync on an on-premises server versus writing to it via Azure Automation, there are several security implications to consider:

Azure File Sync on On-Premises Server

Advantages:

  1. Local access control: Maintains existing NTFS permissions and Active Directory integration24.
  2. Encryption in transit: All communications between the Azure File Sync agent and Azure services are encrypted25.
  3. Offline access: Files can be accessed even without internet connectivity.

Risks:

  1. Increased attack surface: The on-premises server becomes a potential entry point for attackers26.
  2. Credential exposure: If not properly secured, the server could expose Azure credentials.
  3. Data exfiltration: Physical access to the server could lead to data theft24.

Azure Automation

Advantages:

  1. Reduced on-premises footprint: Minimizes the need for local infrastructure27.
  2. Centralized management: Easier to control access and apply security policies.
  3. Automated updates: Reduces the risk of vulnerabilities from outdated software.

Risks:

  1. Network dependency: Requires constant internet connectivity for file access.
  2. Latency issues: File operations may be slower due to network constraints.
  3. Authentication challenges: Requires careful management of service principals or managed identities24.

Mitigation Strategies

  1. Implement strong encryption: Use BitLocker for on-premises servers and ensure Azure storage encryption is enabled24.
  2. Use managed identities: Leverage Azure AD managed identities to reduce the risk of credential exposure28.
  3. Implement least privilege access: Carefully control permissions for both on-premises and Azure resources.
  4. Regular auditing: Monitor file access patterns and changes in both environments.
  5. Network segmentation: Isolate file servers and implement proper firewall rules26.
  6. Multi-factor authentication: Implement MFA for accessing Azure resources and on-premises servers27.

By carefully considering these factors and implementing appropriate security measures, you can choose the approach that best balances your organization’s needs for performance, security, and compliance.


I’d like to experiment with Azure File Sync, at home, on my own hardware (I’ve got 2 Windows laptops to spare as well as an extra Windows or Windows Server license key or few if needed). Can you please walk me through setting up my own imitation of the corporate CIFS/SMB-based DFS share that I have in mind, so that I can watch Azure File Sync at work and see if I like it?

Certainly! Here’s a step-by-step guide to set up an Azure File Sync experiment at home using your own hardware:

Prerequisites

  1. Two Windows laptops (we’ll call them Laptop1 and Laptop2)
  2. Azure subscription
  3. Windows Server license (recommended for better compatibility)

Step 1: Set up Windows Server

  1. Install Windows Server on Laptop1
  2. Configure it as a file server
  3. Create a shared folder (e.g., “\Laptop1\SharedFolder”)

Step 2: Create Azure Resources

  1. Log in to the Azure portal
  2. Create a new resource group
  3. Create a Storage Account
  4. Within the Storage Account, create an Azure File Share

Step 3: Install Azure File Sync Agent

  1. Download the Azure File Sync agent from the Microsoft Download Center
  2. Install the agent on Laptop1
  3. When prompted, register Laptop1 with your Azure subscription

Step 4: Configure Sync Group

  1. In the Azure portal, create a Storage Sync Service
  2. Create a new sync group within the service
  3. Add the Azure File Share as a cloud endpoint
  4. Add the “\Laptop1\SharedFolder” as a server endpoint

Step 5: Test Synchronization

  1. Add some files to “\Laptop1\SharedFolder”
  2. Verify that the files sync to the Azure File Share
  3. Access the Azure File Share from Laptop2 to confirm the files are available

Step 6: Enable Cloud Tiering (Optional)

  1. In the Azure portal, go to the server endpoint settings
  2. Enable cloud tiering and set your desired policies

Step 7: Monitor and Experiment

  1. Use the Azure portal to monitor sync status and health
  2. Experiment with adding, modifying, and deleting files on both Laptop1 and through the Azure File Share
  3. Observe how changes propagate between the on-premises share and the cloud

By following these steps, you’ll have a small-scale representation of Azure File Sync that mimics a corporate CIFS/SMB-based DFS share. This setup will allow you to experience Azure File Sync’s functionality firsthand and evaluate its suitability for your needs293031.


Thanks! I need more detail about what’s involved in turning Laptop1 into a file server, though.

To turn Laptop1 into a file server, you’ll need to follow these detailed steps:

Install Windows Server

  1. Boot Laptop1 from the Windows Server installation media
  2. Follow the installation wizard, selecting “Windows Server 2022 Standard (Desktop Experience)”
  3. Choose custom installation and format the drive as needed
  4. Set up the administrator account when prompted

Configure Windows Server

  1. Set a static IP address:
    • Open Network Connections
    • Right-click the network adapter and select Properties
    • Select “Internet Protocol Version 4 (TCP/IPv4)” and click Properties
    • Choose “Use the following IP address” and enter the appropriate details
  2. Rename the server (optional):
    • Open System Properties
    • Click “Change” next to the computer name
    • Enter a new name (e.g., “FileServer1”) and restart when prompted

Install File Server Role

  1. Open Server Manager
  2. Click “Manage” > “Add Roles and Features”
  3. Choose “Role-based or feature-based installation”
  4. Select the local server
  5. In Server Roles, check “File and Storage Services” > “File and iSCSI Services” > “File Server”
  6. Complete the wizard and install

Create Shared Folder

  1. Open File Explorer and navigate to the desired location (e.g., E:$$
  2. Create a new folder (e.g., “SharedFiles”)
  3. Right-click the folder and select “Properties”
  4. Go to the “Sharing” tab and click “Advanced Sharing”
  5. Check “Share this folder” and configure the share name
  6. Click “Permissions” to set share-level permissions
  7. Click “Apply” and “OK” to close all windows

Configure NTFS Permissions

  1. In the folder properties, go to the “Security” tab
  2. Click “Edit” to modify permissions
  3. Add or remove groups/users as needed
  4. Set appropriate permission levels for each group/user
  5. Click “Apply” and “OK” to save changes

Enable File and Printer Sharing in Windows Firewall

  1. Open Windows Defender Firewall with Advanced Security
  2. Click “Inbound Rules”
  3. Find and enable rules for “File and Printer Sharing (SMB-In)”

By following these steps, you’ll have transformed Laptop1 into a basic file server running Windows Server with a shared folder accessible to network users323334.


Do you know if anyone already set up a container or VM or something I can just use instead? Especially that’s got not only the SMB server set up, but also the Azure File Sync agent? I’ve already got normal-Windows on Laptop1 and don’t really feel like reinstalling Windows Server onto the bare metal.

Unfortunately, there isn’t a pre-configured container or VM readily available with both an SMB server and Azure File Sync agent set up. However, you have a couple of options that might simplify your setup process:

  1. Azure VM with File Server role: You can create a Windows Server VM in Azure with the File Server role pre-installed. While this doesn’t include Azure File Sync, you can easily install the agent afterward.
  2. Azure Stack HCI: This solution offers a pre-configured environment that includes file services, but it requires specific hardware and might be overkill for your home experiment.
  3. Windows Server evaluation in a VM: Instead of reinstalling on bare metal, you could set up a Windows Server virtual machine on your existing Windows installation using Hyper-V or VirtualBox. This allows you to keep your current OS while experimenting with Windows Server and Azure File Sync.
  4. Azure File Sync on Windows 10/11: Although not officially supported for production, you can install Azure File Sync on Windows 10 or 11 for testing purposes. This might be sufficient for your home experiment without needing to reinstall your OS.

For the most straightforward approach, option 3 or 4 would likely be your best bet, allowing you to experiment with Azure File Sync without major changes to your current setup.


Please tell me more about making Windows 10 behave as an SMB server. (lol, and making sure I don’t immediately get every virus in the world looking for SMB servers.)

To set up Windows 10 as an SMB server, follow these steps:

  1. Enable File and Printer Sharing:
    • Open Control Panel > Network and Sharing Center
    • Click “Change advanced sharing settings”
    • Turn on “File and Printer Sharing” for your current network profile
  2. Create a shared folder:
    • Right-click the folder you want to share
    • Select “Properties” > “Sharing” tab > “Advanced Sharing”
    • Check “Share this folder” and configure permissions
  3. Configure Windows Defender Firewall:
    • Open Windows Defender Firewall with Advanced Security
    • Create inbound rules to allow SMB traffic (TCP port 445)
  4. Use SMB 3.0 or later for enhanced security:
    • SMB 3.0+ is enabled by default on Windows 10
    • Verify using PowerShell: Get-SmbServerConfiguration | Select EnableSMB2Protocol
  5. Enable SMB encryption:
    • In PowerShell, run: Set-SmbServerConfiguration -EncryptData $true
  6. Disable SMBv1:
    • In PowerShell, run: Set-SmbServerConfiguration -EnableSMB1Protocol $false
  7. Enable SMB signing:
    • Open Local Group Policy Editor (gpedit.msc)
    • Navigate to Computer Configuration > Windows Settings > Security Settings > Local Policies > Security Options
    • Set “Microsoft network server: Digitally sign communications (always)” to “Enabled”
  8. Keep Windows 10 updated to receive the latest security patches
  9. Use strong passwords for user accounts accessing shared folders
  10. Regularly monitor and audit access to shared resources

Remember, exposing SMB servers directly to the internet is not recommended. If remote access is required, consider using a VPN or SMB over QUIC (available in Windows 11 and Windows Server 2022)3536.


So, unplug my router from the modem while playing with laptop1 and laptop2?

To minimize security risks while experimenting with SMB on Laptop1 and Laptop2, it’s a good idea to isolate them from the internet. Here’s how you can do it safely:

  1. Disconnect from the Internet: Unplug your router from the modem to prevent any external access to your network. This ensures that your SMB setup is not exposed to potential threats from the internet.
  2. Use a Local Network: Connect Laptop1 and Laptop2 directly to each other using a crossover Ethernet cable or through a switch if you have one. This allows them to communicate without needing an internet connection.
  3. Configure SMB Sharing: Follow the steps I provided earlier to set up SMB sharing on Laptop1. Ensure that you enable file and printer sharing and configure the necessary permissions for the shared folder.
  4. Test SMB Access: From Laptop2, access the shared folder on Laptop1 using the UNC path (e.g., \\Laptop1\SharedFolder). This will help you verify that SMB is working correctly between the two laptops.
  5. Security Considerations: Keep in mind that SMBv1 is insecure and should be disabled unless absolutely necessary. Ensure that you’re using SMBv2 or SMBv3 for better security.

By isolating your laptops from the internet and using a local network, you can safely experiment with SMB without exposing your setup to external risks. Once you’re satisfied with your setup, you can reconnect to the internet and implement additional security measures if needed.

  1. https://learn.microsoft.com/en-us/azure/devops/managed-devops-pools/configure-networking?view=azure-devops  2 3

  2. https://devblogs.microsoft.com/devops/managed-devops-pools/  2

  3. https://learn.microsoft.com/en-us/azure/devops/managed-devops-pools/configure-identity?view=azure-devops  2

  4. https://www.huuhka.net/azure-devops-agents-using-managed-identitites/  2

  5. https://learn.microsoft.com/en-us/azure/devops/managed-devops-pools/configure-security?view=azure-devops  2

  6. https://learn.microsoft.com/en-us/azure/devops/pipelines/agents/agents?view=azure-devops 

  7. https://johnlokerse.dev/2024/10/14/simplify-azure-devops-agent-management-with-managed-devops-pools/ 

  8. https://learn.microsoft.com/en-us/azure/devops/managed-devops-pools/configure-security?view=azure-devops 

  9. https://katiekodes.com/azure-managed-devops-pools/ 

  10. https://stackoverflow.com/questions/69542069/azure-managed-identity-on-prem-applications  2

  11. https://www.french365connection.co.uk/post/m365dsc-use-azure-arc-and-managed-identities-to-authenticate-on-premises-and-3rd-party-cloud 

  12. https://www.dcac.com/2023/11/27/azure-managed-identity-on-premises/ 

  13. https://stackoverflow.com/questions/68303142/does-azure-managed-identity-support-on-prem-ms-sql-database 

  14. https://learn.microsoft.com/en-us/windows-server/storage/dfs-namespaces/enable-access-based-enumeration-on-a-namespace  2

  15. https://www.reddit.com/r/sysadmin/comments/693e2z/dfs_folder_access_issue/ 

  16. https://www.dcac.com/2023/11/27/azure-managed-identity-on-premises/  2 3 4 5

  17. https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/overview  2

  18. https://learn.microsoft.com/en-us/entra/identity/managed-identities-azure-resources/managed-identity-best-practice-recommendations 

  19. https://learn.microsoft.com/en-us/answers/questions/1474158/managed-identity-authentication-to-sql-on-onprem-v 

  20. https://stackoverflow.com/questions/69542069/azure-managed-identity-on-prem-applications 

  21. https://stackoverflow.com/questions/55924319/can-azure-trigger-an-on-premises-script-to-run-on-a-schedule  2

  22. https://docs.oracle.com/en/cloud/paas/application-integration/azure-adapter/azure-event-grid-adapter-capabilities.html 

  23. https://learn.microsoft.com/en-us/azure/storage/files/files-manage-namespaces 

  24. https://learn.microsoft.com/en-us/azure/storage/file-sync/file-sync-planning  2 3 4

  25. https://learn.microsoft.com/en-us/azure/storage/file-sync/file-sync-networking-overview 

  26. https://learn.microsoft.com/en-us/azure/storage/file-sync/file-sync-firewall-and-proxy  2

  27. https://www.reddit.com/r/AZURE/comments/1218flq/moving_from_on_prem_to_azure_files/  2

  28. https://learn.microsoft.com/en-us/azure/storage/files/files-whats-new 

  29. https://learn.microsoft.com/en-us/azure/storage/file-sync/file-sync-planning 

  30. https://learn.microsoft.com/en-us/azure/storage/file-sync/file-sync-deployment-guide 

  31. https://microsoftlearning.github.io/AZ-800-Administering-Windows-Server-Hybrid-Core-Infrastructure/Instructions/Labs/LAB_10_Implementing_Azure_File_Sync.html 

  32. https://www.nakivo.com/blog/create-file-share-windows-server/ 

  33. https://howto.hyonix.com/article/create-shared-folders-in-windows-server/ 

  34. https://www.buffalotech.com/knowledge-base/creating-a-shared-folder-in-windows-storage-server-2012-wss 

  35. https://learn.microsoft.com/en-us/windows-server/storage/file-server/smb-secure-traffic 

  36. https://learn.microsoft.com/en-us/windows-server/storage/file-server/troubleshoot/detect-enable-and-disable-smbv1-v2-v3