Syntaxisfout sudoers-bestand bij het uitvoeren van sudo-opdrachten

Summary: Na het configureren van een rol kunt u geen sudo-opdrachten uitvoeren en krijgt u een syntaxisfout te zien in het sudoers-bestand.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Bij het uitvoeren van een "sudo" opdracht, kan het mislukken op een of meerdere knooppunten, bijvoorbeeld:

cluster-1# isi_for_array -s sudo date
cluster-1: Fri Sep 12 16:58:29 CDT 2014
cluster-2: Fri Sep 12 16:58:30 CDT 2014
cluster-3: sudo: >>> /usr/local/etc/sudoers: syntax error near line 124 <<<
cluster-3: sudo: parse error in /usr/local/etc/sudoers near line 124
cluster-3: sudo: no valid sudoers sources found, quitting
cluster-3: sudo: unable to initialize policy plugin

Cause

Dit kan verschillende oorzaken hebben:
 

1. De gebruiker of groep die aan een rol is toegevoegd, kan niet worden opgelost op de betreffende knooppunten:

Op de knooppunten die het probleem vertonen, ziet u mogelijk dat de gebruiker of groep die is toegevoegd, niet kan worden opgelost:

cluster-1# isi_for_array -n3 'isi auth users view domain\\group'
cluster-3: Failed to find group for 'GROUP:domain\group': No such group

Omdat de gebruiker of groep niet kan worden opgelost, kan het knooppunt geen GID/UID vinden voor de sudoers bestand, en kijkend naar de /usr/local/etc/sudoers Bestand:

cluster-1# isi_for_array -s "egrep -i 'user_alias.*newrole' /usr/local/etc/sudoers"
cluster-1: User_Alias NEWROLE = %#1000010
cluster-2: User_Alias NEWROLE = %#1000010
cluster-3: User_Alias NEWROLE =

Merk op dat de UID/GID niet is ingevuld, en dit resulteert in een syntactische fout.
 

2. De rol die is gemaakt, bevat een koppelteken in de naam:

cluster-1# isi auth roles view test-role                                                               
       Name: test-role
Description: -
    Members: DOMAIN\user
 Privileges
             ID : ISI_PRIV_LOGIN_SSH
      Read Only : True

             ID : ISI_PRIV_AUTH
      Read Only : False

cluster-1% sudo date
sudo: >>> /usr/local/etc/sudoers: syntax error near line 124 <<<
sudo: parse error in /usr/local/etc/sudoers near line 124
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

Deze fout bestaat bijvoorbeeld op regel 124:

cluster-1# grep -n '' /usr/local/etc/sudoers | grep ^124
124:User_Alias TEST-ROLE = #1000003

 3. De gebruiker of groep heeft geen bijbehorende UID of GID.

Resolution

1. Als knooppunten een gebruikers- of groepsnaam niet kunnen vertalen naar een UID/GID, moeten we in plaats daarvan de gebruiker/groep toevoegen zoals opgegeven door de UID/GID.


Verwijder de gebruikers- of groepsnaam uit de rolconfiguratie:

cluster-1# isi auth roles modify --role=newrole --remove-group=domain\\group
cluster-1# isi auth roles view newrole                                                          
       Name: newrole
Description: -
    Members: -
 Privileges
             ID : ISI_PRIV_LOGIN_SSH
      Read Only : True

             ID : ISI_PRIV_SMB
      Read Only : False


Verkrijg de juiste UID/GID voor de gebruiker van een knooppunt dat de bewerking kan uitvoeren:

cluster-1# isi auth groups view domain\\group
            Name: DOMAIN\group
              DN: CN=group,CN=Users,DC=domain,DC=com
             SID: S-1-5-21-463481935-3723234361-2963677383-1144
             GID: 1000010
          Domain: DOMAIN
Sam Account Name: group
        Provider: lsa-activedirectory-provider:DOMAIN.COM
   Generated GID: Yes
Opmerking: Hetzelfde kan worden gedaan voor een gebruiker, waarbij "groups" wordt vervangen door "users" in plaats van GID, UID.

Pas de UID/GID toe in plaats van de groepsnaam:

cluster-1# isi auth roles modify --role=newrole --add-gid=1000010
cluster-1# isi auth roles view newrole                                                          
       Name: newrole
Description: -
    Members: DOMAIN\group
 Privileges
             ID : ISI_PRIV_LOGIN_SSH
      Read Only : True

             ID : ISI_PRIV_SMB
      Read Only : False

 Opmerking: Hetzelfde kan worden gedaan voor een gebruiker, waarbij "add-gid" wordt vervangen door "add-uid".

De configuratie van het sudoers-bestand moet nu de uid/gid correct weergeven:

cluster-1# isi_for_array -s "egrep -i 'alias.*newrole' /usr/local/etc/sudoers"
cluster-1: User_Alias NEWROLE = %#1000010
cluster-2: User_Alias NEWROLE = %#1000010
cluster-3: User_Alias NEWROLE = %#1000010

Ook moeten sudo-commando's goed werken:

cluster-1# isi_for_array -s sudo date                                                      
cluster-1: Fri Sep 12 17:20:14 CDT 2014
cluster-2: Fri Sep 12 17:20:14 CDT 2014
cluster-3: Fri Sep 12 17:20:14 CDT 2014

 

2. Wijzig de naam van de rol zodat deze geen '-' bevat.
 

Wijzig de naam van de rol zodat deze geen koppelteken bevat:

cluster-1# isi auth roles modify --role=test-role --name=test_role

 

Merk op dat er geen syntaxisfout meer is:

cluster-1% % sudo date
Password:

 

3. Het sudoers-bestand vereist een UID of GID om gebruikers en groepen te identificeren en ervoor te zorgen dat alle gebruikers en groepen een bijbehorende UID of GID hebben.

Affected Products

PowerScale OneFS
Article Properties
Article Number: 000102433
Article Type: Solution
Last Modified: 22 Dec 2025
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.