Pagina 1 di 1

[Risolto] Togliere la richiesta di password da pacman

Inviato: 13 giugno 2013, 19:21
da dongongo
È da qualche ora che provo senza successo a togliere la richiesta di password quando vado a lanciare pacman...
Ho seguito il wiki (per altro, nella circostanza a mio avviso non troppo chiaro).
Il mio username è damiano. Il mio hostname è damiano-pc

Con visudo ho modificato etc/sudoers

mettendo sotto

Codice: Seleziona tutto

# %wheel ALL=(ALL) NOPASSWD: ALL
questa stringa

Codice: Seleziona tutto

damiano ALL=(ALL) NOPASSWD: /usr/bin/pacman
Ho provato anche questa:

Codice: Seleziona tutto

damiano ALL= NOPASSWD: /usr/bin/pacman
e quest'altra

Codice: Seleziona tutto

damiano damiano-pc NOPASSWD: /usr/bin/pacman
Ma non c'è verso. Pacman mi chiede sempre la password.... :(

Re: Togliere la richiesta di password da pacman

Inviato: 13 giugno 2013, 19:43
da KleinerMann
dire che la sintassi dovrebbe essere questa...

Codice: Seleziona tutto

damiano damiano-pc =NOPASSWD: /usr/bin/pacman
poi ovviamente crei l'alias

Codice: Seleziona tutto

alias pacman='sudo pacman'
:D

Re: Togliere la richiesta di password da pacman

Inviato: 13 giugno 2013, 21:00
da dongongo
Sì, scusami, mi ero dimenticato l'uguale nell'ultima stringa. Non funziona neanche così. Mi chiede sempre la password, purtroppo.

Se lancio "sudo -l" ho questo:

Codice: Seleziona tutto

L'utente damiano può eseguire i seguenti comandi su questo host:
    (root) NOPASSWD: /usr/bin/pacman
    (ALL) ALL

Re: Togliere la richiesta di password da pacman

Inviato: 13 giugno 2013, 21:18
da veleno77
prova semplicemente a decommentare

Codice: Seleziona tutto

# %wheel ALL=(ALL) NOPASSWD: ALL
e aggiungere il tuo utente al gruppo wheel , dovrebbe funzionare

Re: Togliere la richiesta di password da pacman

Inviato: 14 giugno 2013, 7:51
da dongongo
Ok, ho editato /etc/group aggiungendo "damiano" al gruppo wheel, avendo adesso una stringa di questo tipo:

Codice: Seleziona tutto

wheel:x:10:root,damiano
Ho decommentato

Codice: Seleziona tutto

# %wheel ALL=(ALL) NOPASSWD: ALL
e non ho scritto niente sotto. Ma ancora niente da fare.

Sempre lanciando "sudo -l" il risultato adesso è questo:

Codice: Seleziona tutto

(ALL) ALL
Questo è il mio attuale /etc/sudoers:

Codice: Seleziona tutto

## sudoers file.
##
## This file MUST be edited with the 'visudo' command as root.
## Failure to use 'visudo' may result in syntax or file permission errors
## that prevent sudo from running.
##
## See the sudoers man page for the details on how to write a sudoers file.
##

##
## Host alias specification
##
## Groups of machines. These may include host names (optionally with wildcards),
## IP addresses, network numbers or netgroups.
# Host_Alias	WEBSERVERS = www1, www2, www3

##
## User alias specification
##
## Groups of users.  These may consist of user names, uids, Unix groups,
## or netgroups.
# User_Alias	ADMINS = millert, dowdy, mikef

##
## Cmnd alias specification
##
## Groups of commands.  Often used to group related commands together.
# Cmnd_Alias	PROCESSES = /usr/bin/nice, /bin/kill, /usr/bin/renice, \
# 			    /usr/bin/pkill, /usr/bin/top

##
## Defaults specification
##
## You may wish to keep some of the following environment variables
## when running commands via sudo.
##
## Locale settings
# Defaults env_keep += "LANG LANGUAGE LINGUAS LC_* _XKB_CHARSET"
##
## Run X applications through sudo; HOME is used to find the
## .Xauthority file.  Note that other programs use HOME to find   
## configuration files and this may lead to privilege escalation!
# Defaults env_keep += "HOME"
##
## X11 resource path settings
# Defaults env_keep += "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH"
##
## Desktop path settings
# Defaults env_keep += "QTDIR KDEDIR"
##
## Allow sudo-run commands to inherit the callers' ConsoleKit session
# Defaults env_keep += "XDG_SESSION_COOKIE"
##
## Uncomment to enable special input methods.  Care should be taken as
## this may allow users to subvert the command being run via sudo.
# Defaults env_keep += "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER"
##
## Uncomment to enable logging of a command's output, except for
## sudoreplay and reboot.  Use sudoreplay to play back logged sessions.
# Defaults log_output
# Defaults!/usr/bin/sudoreplay !log_output
# Defaults!/usr/local/bin/sudoreplay !log_output
# Defaults!/sbin/reboot !log_output

##
## Runas alias specification
##

##
## User privilege specification
##
root ALL=(ALL) ALL

## Uncomment to allow members of group wheel to execute any command
# %wheel ALL=(ALL) ALL

## Same thing without a password
%wheel ALL=(ALL) NOPASSWD: ALL

## Uncomment to allow members of group sudo to execute any command
# %sudo	ALL=(ALL) ALL

## Uncomment to allow any user to run sudo if they know the password
## of the user they are running the command as (root by default).
# Defaults targetpw  # Ask for the password of the target user
# ALL ALL=(ALL) ALL  # WARNING: only use this together with 'Defaults targetpw'

## Read drop-in files from /etc/sudoers.d
## (the '#' here does not indicate a comment)
#includedir /etc/sudoers.d
damiano     ALL=(ALL) ALL

Re: Togliere la richiesta di password da pacman

Inviato: 14 giugno 2013, 10:31
da djk
umby213 ha scritto:dire che la sintassi dovrebbe essere questa...

Codice: Seleziona tutto

damiano damiano-pc =NOPASSWD: /usr/bin/pacman
poi ovviamente crei l'alias

Codice: Seleziona tutto

alias pacman='sudo pacman'
:D
la sintassi era quasi giusta, in realtà dovrebbe essere (mettilo in fondo a sudoers)

Codice: Seleziona tutto

damiano damiano-pc= NOPASSWD: /usr/bin/pacman
dopo aver esserti aggiunto al gruppo wheel hai fatto il logout e poi riloggato? o hai fatto tutto nella stessa sessione?

Re: Togliere la richiesta di password da pacman

Inviato: 14 giugno 2013, 11:14
da dongongo
Problema risolto. Credo. Grazie!

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 14 giugno 2013, 21:17
da KleinerMann
per curiosità: posta il tuo attuale file /etc/sudoers e l'output di groups dato da utente :D grazie :D

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 15 giugno 2013, 8:56
da dongongo
Dunque premetto che la soluzione è stato un mix tra quello suggerito da djk e la guida trovata in questo post. Quindi, sudoers è così:

Codice: Seleziona tutto

## sudoers file.
##
## This file MUST be edited with the 'visudo' command as root.
## Failure to use 'visudo' may result in syntax or file permission errors
## that prevent sudo from running.
##
## See the sudoers man page for the details on how to write a sudoers file.
##

##
## Host alias specification
##
## Groups of machines. These may include host names (optionally with wildcards),
## IP addresses, network numbers or netgroups.
# Host_Alias	WEBSERVERS = www1, www2, www3

##
## User alias specification
##
## Groups of users.  These may consist of user names, uids, Unix groups,
## or netgroups.
# User_Alias	ADMINS = millert, dowdy, mikef

##
## Cmnd alias specification
##
## Groups of commands.  Often used to group related commands together.
# Cmnd_Alias	PROCESSES = /usr/bin/nice, /bin/kill, /usr/bin/renice, \
# 			    /usr/bin/pkill, /usr/bin/top

##
## Defaults specification
##
## You may wish to keep some of the following environment variables
## when running commands via sudo.
##
## Locale settings
# Defaults env_keep += "LANG LANGUAGE LINGUAS LC_* _XKB_CHARSET"
##
## Run X applications through sudo; HOME is used to find the
## .Xauthority file.  Note that other programs use HOME to find   
## configuration files and this may lead to privilege escalation!
# Defaults env_keep += "HOME"
##
## X11 resource path settings
# Defaults env_keep += "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH"
##
## Desktop path settings
# Defaults env_keep += "QTDIR KDEDIR"
##
## Allow sudo-run commands to inherit the callers' ConsoleKit session
# Defaults env_keep += "XDG_SESSION_COOKIE"
##
## Uncomment to enable special input methods.  Care should be taken as
## this may allow users to subvert the command being run via sudo.
# Defaults env_keep += "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER"
##
## Uncomment to enable logging of a command's output, except for
## sudoreplay and reboot.  Use sudoreplay to play back logged sessions.
# Defaults log_output
# Defaults!/usr/bin/sudoreplay !log_output
# Defaults!/usr/local/bin/sudoreplay !log_output
# Defaults!/sbin/reboot !log_output

##
## Runas alias specification
##

##
## User privilege specification
##
root ALL=(ALL) ALL
damiano ALL=(ALL) NOPASSWD: ALL  

## Uncomment to allow members of group wheel to execute any command
# %wheel ALL=(ALL) ALL

## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL

## Uncomment to allow members of group sudo to execute any command
# %sudo	ALL=(ALL) ALL

## Uncomment to allow any user to run sudo if they know the password
## of the user they are running the command as (root by default).
# Defaults targetpw  # Ask for the password of the target user
# ALL ALL=(ALL) ALL  # WARNING: only use this together with 'Defaults targetpw'

## Read drop-in files from /etc/sudoers.d
## (the '#' here does not indicate a comment)
#includedir /etc/sudoers.d
%newgroup ALL=(ALL) ALL 
Mentre il nuovo file creato, ovvero sudoers.d/g_newgroup è questo:

Codice: Seleziona tutto

%newgroup ALL=(ALL) ALL
damiano damiano-pc= NOPASSWD: /usr/bin/pacman
L'output di groups è questo invece:

Codice: Seleziona tutto

wheel users
Sarebbe interessante capire perché solo questa soluzione funzioni. Almeno sul mio pc.

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 15 giugno 2013, 9:34
da veleno77
boh eppure se io decommento la riga whell con nopasswd posso dare i comandi senza password

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 15 giugno 2013, 17:01
da dongongo
Non so spiegarmi il motivo. Ho letto anche vari post sul forum internazionale, e le soluzioni proposte erano sempre molto semplici. Non so perché nel mio caso sia servito questo "workaround".

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 15 giugno 2013, 18:58
da N-Di
veleno77 ha scritto:boh eppure se io decommento la riga whell con nopasswd posso dare i comandi senza password
pure io faccio la stessa cosa, anche se secondo me non e` il massimo
e` anche vero che se uno se gia loggato con il tuo utente e perche sa la password e dunque userebbe sudo senza probblemi, ce il modo per risolvere quel probblema?
non installo sudo ed uso su per loggarmi come root quando serve?

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 2 ottobre 2013, 17:09
da crx
Mi aggancio a questo thread perché ho un problema simile.

Questo è il mio sudoers:

Codice: Seleziona tutto

## sudoers file.
##
## This file MUST be edited with the 'visudo' command as root.
## Failure to use 'visudo' may result in syntax or file permission errors
## that prevent sudo from running.
##
## See the sudoers man page for the details on how to write a sudoers file.
##

##
## Host alias specification
##
## Groups of machines. These may include host names (optionally with wildcards),
## IP addresses, network numbers or netgroups.
# Host_Alias    WEBSERVERS = www1, www2, www3

##
## User alias specification
##
## Groups of users.  These may consist of user names, uids, Unix groups,
## or netgroups.
# User_Alias    ADMINS = millert, dowdy, mikef

##
## Cmnd alias specification
##
## Groups of commands.  Often used to group related commands together.
# Cmnd_Alias    PROCESSES = /usr/bin/nice, /bin/kill, /usr/bin/renice, \
#                           /usr/bin/pkill, /usr/bin/top

##
## Defaults specification
##
## You may wish to keep some of the following environment variables
## when running commands via sudo.
##
## Locale settings
# Defaults env_keep += "LANG LANGUAGE LINGUAS LC_* _XKB_CHARSET"
##
## Run X applications through sudo; HOME is used to find the
## .Xauthority file.  Note that other programs use HOME to find   
## configuration files and this may lead to privilege escalation!
# Defaults env_keep += "HOME"
##
## X11 resource path settings
# Defaults env_keep += "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH"
##
## Desktop path settings
# Defaults env_keep += "QTDIR KDEDIR"
##
## Allow sudo-run commands to inherit the callers' ConsoleKit session
# Defaults env_keep += "XDG_SESSION_COOKIE"
##
## Uncomment to enable special input methods.  Care should be taken as
## this may allow users to subvert the command being run via sudo.
# Defaults env_keep += "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER"
##
## Uncomment to enable logging of a command's output, except for
## sudoreplay and reboot.  Use sudoreplay to play back logged sessions.
# Defaults log_output
# Defaults!/usr/bin/sudoreplay !log_output
# Defaults!/usr/local/bin/sudoreplay !log_output
# Defaults!/sbin/reboot !log_output

##
## Runas alias specification
##

##
## User privilege specification
##
root ALL=(ALL) ALL

## Uncomment to allow members of group wheel to execute any command
%wheel ALL=(ALL) ALL

## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
%wheel ALL = (ALL) NOPASSWD: /usr/bin/yaourt -Sy

## Uncomment to allow members of group sudo to execute any command
# %sudo ALL=(ALL) ALL

## Uncomment to allow any user to run sudo if they know the password
## of the user they are running the command as (root by default).
# Defaults targetpw  # Ask for the password of the target user
# ALL ALL=(ALL) ALL  # WARNING: only use this together with 'Defaults targetpw'

## Read drop-in files from /etc/sudoers.d
## (the '#' here does not indicate a comment)
#includedir /etc/sudoers.d
Questo perché mettere

Codice: Seleziona tutto

%wheel ALL=(ALL) NOPASSWD: ALL
in effetti funziona, ma vuol dire che l'utente può dare qualunque comando senza password, e questo non mi piace: io vorrei dare solo un comando senza richiesta di password.
Leggendo il manuale di sudoers, fourm e guide, la stringa dovrebbe essere corretta, eppure non funziona.

Qualcuno nel frattempo ha capito l'inghippo?

Grazie.
N-Di ha scritto: e` anche vero che se uno se gia loggato con il tuo utente e perche sa la password e dunque userebbe sudo senza probblemi
Mica tanto: allora su e sudo a che servono? Io voglio la richiesta di password per evitare di fare danni....

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 2 ottobre 2013, 17:52
da danyf90
io aggiungendo

daniele ALL=NOPASSWD:/usr/bin/pacman

alla fine del file sudoers posso tranquillamente richiamare pacman con sudo senza dover mettere la password

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 2 ottobre 2013, 18:16
da crx
Uhm... non ho ben capito perché, ma provando e riprovando funziona così:

1. Con

Codice: Seleziona tutto

%wheel ALL = (ALL) NOPASSWD: /usr/bin/yaourt -Sy
e varie alternative:

Codice: Seleziona tutto

%wheel ALL = (ALL) NOPASSWD: /usr/bin/yaourt -Sy

Codice: Seleziona tutto

andrea ALL = (ALL) NOPASSWD: /usr/bin/yaourt -Sy

Codice: Seleziona tutto

andrea ALL=NOPASSWD: /usr/bin/yaourt
il risultato è che yaourt e pacman chiedono la password.

2. Con

Codice: Seleziona tutto

%wheel ALL=(ALL) NOPASSWD: ALL
ovviamente niente password ma ci sono i problemi di prima.

3. Con

Codice: Seleziona tutto

%wheel ALL = (ALL) NOPASSWD: /usr/bin/pacman
o l'equivalente per il singolo utente

Codice: Seleziona tutto

andrea ALL = (ALL) NOPASSWD: /usr/bin/pacman
allora yaourt non chiede la password ma pacman si! :?:

Per il mio problema ho risolto con la soluzione 3, ma fatto sta che non ho capito perché a me funzioni così!! :?

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 2 ottobre 2013, 18:20
da danyf90
io ho SOLO quella riga e funziona :D

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 2 ottobre 2013, 18:27
da crx
Beh, anch'io ho solo una riga... e il 'problema' (il dubbio) è proprio perché a te funziona e a me no!! :)

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 2 ottobre 2013, 18:46
da danyf90
boh se invece di dare `sudo pacman` dai sudo `/usr/bin/pacman` cambia qualcosa?

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 2 ottobre 2013, 23:51
da crx
Scusa, sono un cretino: davo solo pacman senza sudo (yaourt richiama sudo di suo, per questo funzionava...) :lol:

Ora capisco anche perché non funzionava yaourt: lo lanciavo (come sempre) senza anteporre sudo. Con

Codice: Seleziona tutto

%wheel ALL = (ALL) NOPASSWD: /usr/bin/yaourt
e usando

Codice: Seleziona tutto

sudo yaourt -Sy
yaourt funziona senza richiesta di password.

Beh, almeno ora mi è più chiaro.
Ciao e grazie.

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 3 ottobre 2013, 0:44
da danyf90
è sbagliato lanciare yaourt da sudo, devi modificare sudoers in modo da poter lanciare pacman senza sudo, poi lanci yaourt da utente normale che a sua volta lancierà pacman con sudo

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 3 ottobre 2013, 6:44
da crx
Certo, certo: era solo per dire dove sbagliavo. Ora uso la soluzione detta sopra, e yaourt lo lancio normalmente.

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 3 ottobre 2013, 13:55
da enricotognoni
domanda per tutti i sudoers che non funzionano.
Potreste postare il risultato del comando

Codice: Seleziona tutto

groups
locate pacman -n10
ciao e grazie

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 3 ottobre 2013, 20:08
da crx

Codice: Seleziona tutto

$ groups
disk lp wheel games network video audio optical storage scanner power users

Codice: Seleziona tutto

$ locate pacman -n10
/etc/pacman.conf
/etc/pacman.d
/etc/pacman.d/gnupg
/etc/pacman.d/mirrorlist
/etc/pacman.d/mirrorlist.backup
/etc/pacman.d/gnupg/gpg.conf
/etc/pacman.d/gnupg/pubring.gpg
/etc/pacman.d/gnupg/pubring.gpg~
/etc/pacman.d/gnupg/random_seed
/etc/pacman.d/gnupg/secring.gpg
PS: per curiosità, a che ti serve il secondo? avrei capito vedere se c'è pacman in /usr/bin/, ma quei risultati a che servono?

EDIT: ops... la domanda era per i sudoers che non funzionavano...

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 4 ottobre 2013, 1:51
da enricotognoni
No hai ragione ho sbagliato io, sudo

Codice: Seleziona tutto

 sudo locate pacman -n10
era per vedere se il comando aggiunto è effettivamente dove lo segnalate in sudoers, dovrebbe far vedere prima in /bin, un'altra considerazione che può esser di aiuto è che dopo avere aggiunto

Codice: Seleziona tutto

PASSWD: /bin/pacman
bisogna comunque fare il comando

Codice: Seleziona tutto

sudo pacman
(e poi non chiede la password)
mentre
yaourt va lanciato senza password (sempre!) ci pensa yaourt a lanciare pacman e eventualmente a chiedere la password.

ciao e scusa :)

Re: [Risolto] Togliere la richiesta di password da pacman

Inviato: 4 ottobre 2013, 7:06
da crx
:D