✔️ Van toepassing op: Klassieke NFS-bestandsshares die zijn gemaakt met de Microsoft.Storage-resourceprovider
✔️ Van toepassing op: NFS-bestandsshares die zijn gemaakt met de Microsoft.FileShares-resourceprovider
✖️ Is niet van toepassing op: SMB-bestandsshares
Het clientbesturingssysteem dwingt machtigingen af voor NFS-bestandsshares, niet de Azure Files-service. Root squash is een beheerbeveiligingsfunctie in NFS die onbevoegde toegang op hoofdniveau tot de NFS-server door clientcomputers voorkomt. Deze functionaliteit is een belangrijk onderdeel van het beveiligen van gebruikersgegevens en systeeminstellingen tegen manipulatie door niet-vertrouwde of gecompromitteerde clients.
Beheerders moeten root squash inschakelen in omgevingen waar meerdere gebruikers of systemen toegang hebben tot de NFS share, vooral in scenario's waarin client-machines niet volledig worden vertrouwd. Door hoofdgebruikers te converteren naar anonieme gebruikers, zorgt root squash ervoor dat zelfs als een clientcomputer is aangetast, de aanvaller geen gebruik kan maken van hoofdbevoegdheden voor toegang tot of wijzigen van kritieke bestanden op de NFS-server.
In dit artikel leert u hoe u root-squashinstellingen voor NFS Azure-bestandsshares configureert en wijzigt.
Hoe root squash werkt met Azure Files
Root squash werkt door de gebruikers-ID (UID) en de groeps-ID (GID) van de rootgebruiker opnieuw toe te wijzen aan een UID en GID die behoren tot de anonieme gebruiker op de server. Hoofdgebruikers die toegang hebben tot het bestandssysteem, worden automatisch geconverteerd naar de anonieme, minder bevoegde gebruiker en groep met beperkte machtigingen.
Hoewel root squash het standaardgedrag is in NFS, is het niet de standaardoptie wanneer je een NFS Azure-bestandsdeling aanmaakt. U moet root squash expliciet inschakelen op de bestandsshare. Dit kun je doen wanneer je een NFS Azure-bestandsdeling aanmaakt, of later.
Root squashinstellingen
Kies uit drie root squashinstellingen:
-
Geen root squash: Schakel root squashing uit. Deze optie is voornamelijk handig voor schijfloze clients of workloads, zoals is opgegeven in de workloaddocumentatie. Deze instelling is de standaardinstelling bij het maken van een nieuwe NFS-Azure-bestandsshare.
-
Alle squash: Wijs alle UID's en GID's toe aan de anonieme gebruiker. Gebruik deze instelling voor gedeelde mappen die alleen-leestoegang voor alle clients vereisen.
-
Root squash: Wijs aanvragen van UID/GID 0 (root) toe aan de anonieme UID/GID. Deze instelling geldt niet voor andere UID's of GID's die even gevoelig kunnen zijn, zoals gebruiker
bin of groep staff.
In de volgende tabel wordt het UID-gedrag weergegeven dat op de server wordt waargenomen wanneer u specifieke root-squashopties configureert.
|
Optie |
Client UID |
Server UID |
| root_squash |
0 |
65534 |
| root_squash |
1000 |
1000 |
| no_root_squash |
0 |
0 |
| no_root_squash |
1000 |
1000 |
| all_squash |
0 |
65534 |
| all_squash |
1000 |
65534 |
Voor klassieke Azure-bestandsshares die gebruikmaken van de Microsoft.Storage-resourceprovider, kunt u de root-squash-instellingen configureren via de Azure-portal, Azure PowerShell of Azure CLI.
Meld u aan bij de Azure-portal en ga naar het FileStorage-opslagaccount dat de NFS-Azure-bestandsshare bevat.
Selecteer in het servicemenu onder Gegevensopslagklassieke bestandsshares.
Selecteer de bestandsshare waarvoor u de root squash-instelling wilt wijzigen.
Selecteer Eigenschappen in het servicemenu. Schakel vervolgens de Root squash-instelling zoals gewenst in.
Selecteer Opslaan om de root squashwaarde bij te werken.
Meld u aan bij Azure en selecteer uw abonnement.
Connect-AzAccount
Select-AzSubscription -SubscriptionId "<your-subscription-id>"
Als u root squash wilt inschakelen op de bestandsshare, voert u de volgende opdracht uit. Vervang <resource-group-name>, <storage-account-name> en <file-share-name> door uw eigen waarden.
Update-AzRmStorageShare `
-ResourceGroupName <resource-group-name> `
-StorageAccountName <storage-account-name> `
-Name <file-share-name> `
-RootSquash RootSquash
Als u root squash wilt uitschakelen op de bestandsshare, voert u de volgende opdracht uit. Vervang <resource-group-name>, <storage-account-name> en <file-share-name> door uw eigen waarden.
Update-AzRmStorageShare `
-ResourceGroupName <resource-group-name> `
-StorageAccountName <storage-account-name> `
-Name <file-share-name> `
-RootSquash NoRootSquash
Om squash af te dwingen voor alle gebruikers, voert u de volgende opdracht uit om alle gebruikers-ID's toe te wijzen aan 'anoniem'. Vervang <resource-group-name>, <storage-account-name> en <file-share-name> door uw eigen waarden.
Update-AzRmStorageShare `
-ResourceGroupName <resource-group-name> `
-StorageAccountName <storage-account-name> `
-Name <file-share-name> `
-RootSquash AllSquash
Voer de volgende opdracht uit om de root-squash-eigenschap voor een bestandsdeling weer te geven. Vervang <resource-group-name>, <storage-account-name> en <file-share-name> door uw eigen waarden.
Get-AzRmStorageShare `
-ResourceGroupName <resource-group-name> `
-StorageAccountName <storage-account-name> `
-Name <file-share-name> | fl -Property ResourceGroupName, StorageAccountName, Name, QuotaGiB,AccessTier,EnabledProtocols,RootSquash
Meld u aan bij Azure en stel uw abonnement in.
az login
az account set --subscription "<your-subscription-id>"
Als u root squash wilt inschakelen op de bestandsshare, voert u de volgende opdracht uit. Vervang <resource-group-name>, <storage-account-name> en <file-share-name> door uw eigen waarden.
az storage share-rm update \
--resource-group <resource-group-name> \
--storage-account <storage-account-name> \
--name <file-share-name> \
--root-squash RootSquash
Als u root squash wilt uitschakelen op de bestandsshare, voert u de volgende opdracht uit. Vervang <resource-group-name>, <storage-account-name> en <file-share-name> door uw eigen waarden.
az storage share-rm update \
--resource-group <resource-group-name> \
--storage-account <storage-account-name> \
--name <file-share-name> \
--root-squash NoRootSquash
Om squash af te dwingen voor alle gebruikers, voert u de volgende opdracht uit om alle gebruikers-ID's toe te wijzen aan 'anoniem'. Vervang <resource-group-name>, <storage-account-name> en <file-share-name> door uw eigen waarden.
az storage share-rm update \
--resource-group <resource-group-name> \
--storage-account <storage-account-name> \
--name <file-share-name> \
--root-squash AllSquash
Voer de volgende opdracht uit om de root-squash-eigenschap voor een bestandsdeling weer te geven. Vervang <resource-group-name>, <storage-account-name> en <file-share-name> door uw eigen waarden.
az storage share-rm show \
--resource-group <resource-group-name> \
--storage-account <storage-account-name> \
--name <file-share-name>
Voor Azure-bestandsshares die gebruikmaken van de Microsoft.FileShares-resourceprovider kunt u root-squashinstellingen configureren via de Azure-portal, Azure PowerShell of Azure CLI.
Meld u aan bij de Azure-portal en ga naar de bestandsshare.
Selecteer Configuratie in het servicemenu onder Instellingen.
Zet de root squash-instelling naar wens in of uit.
Selecteer Opslaan om de root squashwaarde bij te werken.
Als u de root-squashinstelling voor een bestandsshare (Microsoft.FileShares) wilt wijzigen met Azure PowerShell, voert u de volgende opdrachten uit. Vervang de variabelen door uw waarden. Toegestane waarden -RootSquash zijn AllSquash, NoRootSquashen RootSquash. Je hebt de Az PowerShell-module versie 16.0.0 of later nodig. Deze versie bevat de Az.FileShare-module.
$resourceGroup = "<your-resource-group-name>"
$shareName = "<your-file-share-name>"
Update-AzFileShare -ResourceName $shareName -ResourceGroupName $resourceGroup -RootSquash RootSquash
Als u de root-squash-instelling voor een bestandsshare (Microsoft.FileShares) wilt wijzigen met Azure CLI, voert u de volgende opdrachten uit. Toegestane waarden --root-squash zijn AllSquash, NoRootSquashen RootSquash. Je hebt de fileshare extensie nodig voor de Azure CLI. Voer az extension add --name fileshare uit om het te installeren.
# Specify your values
shareName="<your-file-share-name>"
resourceGroup="<your-resource-group-name>"
# Update the root squash setting
az fileshare update --name $shareName --resource-group $resourceGroup --root-squash RootSquash
Zie ook