PDA

View Full Version : wvdial da utente normale


barraacodice
10-05-2007, 22:39
Salve. Per connettermi a internet con la 56k uso il comando wvdial. Il problema però è che wvdial fa il numero solo se è lanciato da root. Per cui ogni volta devo inserire la password di root. Ho provato a impostare i permessi ma si pianta. Qualcuno conosce un modo per lanciarlo da utente normale? Non voglio utilizzare tool grafici (e non posso perchè ho dovuto configurare i parametri wvdial a mano). Non vorrei nemmeno utilizzare sudo :muro: :muro:

emmedi
10-05-2007, 23:32
Io uso ubuntu ed utilizzo tranquillamente gnome-ppp per lanciare la connessione.

barraacodice
11-05-2007, 11:06
Attualmente uso KDE. Però non posso usare kppp perchè non mi permette di configurare alcuni parametri, e di conseguenza dopo un minuto si disconnette. Per la precisione uso teleconomy internet che ha uno standard tutto suo, e kppp interpreta male. :muro:
gnome-ppp lo avevo usato in precedenza, molto utile perchè c'è la funzione "stupid mode". Però vorrei risolvere con wvdial....
Nessuno ha qualche idea? :confused:

emmedi
11-05-2007, 12:15
E farti due icone con pon e poff?

Gica78R
11-05-2007, 13:24
Attualmente uso KDE. Però non posso usare kppp perchè non mi permette di configurare alcuni parametri, e di conseguenza dopo un minuto si disconnette. Per la precisione uso teleconomy internet che ha uno standard tutto suo, e kppp interpreta male. :muro:

:eek:

Anch'io uso teleconomy e non ho mai avuto problemi, nè con kppp nè con gnome-ppp :mbe:

Assicurati che l'utente che deve avviare la connessione appartenga ai gruppi tty, uucp e, se ci sono, anche dip e dialout... in genere dipende dalla distribuzione. Inoltre controlla che nel file /etc/ppp/options sia presente la direttiva noauth ;)

Comunque prova anche a dirci che modem usi, qual'è il relativo file di dispositivo e che permessi ha!


Ciao

gurutech
11-05-2007, 13:35
Non vorrei nemmeno utilizzare sudo

in genere è sempre consigliabile configurare correttamente i permessi di esecuzione delle applicazioni. ma se proprio proprio vuoi puoi fare così
mettiamo che l'eseguibile si chiami /usr/bin/wvdial e ci sia anche /usr/bin/pppd
allora fai:

chmod 6777 /usr/bin/wvdial
chmod 6777 /usr/bin/pppd

controlla con ls -l che i due file di cui sopra siano posseduti da root. sennò:

chown root.root /usr/bin/wvdial
chown root.root /usr/bin/pppd

se si pianta durante l'esecuzione, prova a capire cosa stava facendo quando si è piantato:

strace /usr/bin/wvdial



dimenticavo ...
se hai bisogno di tanta granularità nella configurazione perchè non ti fai a mano uno script options di pppd

mic1
11-05-2007, 15:08
Salve. Per connettermi a internet con la 56k uso il comando wvdial. Il problema però è che wvdial fa il numero solo se è lanciato da root. Per cui ogni volta devo inserire la password di root. Ho provato a impostare i permessi ma si pianta. Qualcuno conosce un modo per lanciarlo da utente normale? Non voglio utilizzare tool grafici (e non posso perchè ho dovuto configurare i parametri wvdial a mano). Non vorrei nemmeno utilizzare sudo :muro: :muro:

In debian risolvi semplicemente assegnando il gruppo "dip" (se ricordo bene) al tuo utente.

barraacodice
12-05-2007, 14:16
Allora ragazzi grazie a tutti per gli aiuti. Dunque, ho messo il mio utente normale nei gruppi tty e uucp (i gruppi dip e dialout non sono presenti). Per la cronaca, la distro in questione è una opensuse 10.2
Ho verificato che in /etc/ppp/options è presente la direttiva noauth.
Adesso lanciando wvdial da utente normale il modem compone il numero (prima non lo faceva) Dopodichè esce fuori:

--> Carrier detected. Starting PPP immediately.
--> Starting pppd at Sat May 12 12:58:53 2007
--> Warning: Could not modify /etc/ppp/pap-secrets: Permission denied
--> --> PAP (Password Authentication Protocol) may be flaky.
--> Warning: Could not modify /etc/ppp/chap-secrets: Permission denied
--> --> CHAP (Challenge Handshake) may be flaky.
--> pid of pppd: 4687
--> Disconnecting at Sat May 12 12:58:54 2007
--> The PPP daemon has died: No root priv error (exit code = 3)
--> man pppd explains pppd error codes in more detail.
--> I guess that's it for now, exiting
--> The PPP daemon has died. (exit code = 3)


Quindi sono andato a vedere la pagina di manule di pppd e l'exit code=3 corrisponde a:

Pppd is not setuid-root and the invoking user is not root


Cosa faccio? prima di proseguire a cambiare vari permessi chiedo il vostro aiuto che siete sicuramente più "ferrati" di me.....:stordita:

gurutech
12-05-2007, 14:58
ciao,
per poter eseguire pppd come utente normale devi fare in modo che il programma agisca come se fosse stato root ad eseguirlo. puoi ottenere questo effetto impostando il bit set userid sui permessi del file /usr/bin/pppd. in questo modo, non importa chi esegue il programma, ogni volta che viene eseguito sarà come se l'avesse fatto il proprietario del file. guarda come e' impostato sul mio sistema:

gianluca@www:~$ ls -l /usr/sbin/pppd
-rwsr-xr-- 1 root dip 265880 2006-06-04 05:58 /usr/sbin/pppd

quella 's' che vedi al posto della solita 'x' indica che è impostato il bit SUID. il proprietario del file è root, il gruppo del file è dip.
se il tuo pppd non avesse queste opzioni, puoi dargliele con

gianluca@www:~$ chmod 4755 /usr/bin/pppd
gianluca@www:~$ chown root.dip /usr/bin/pppd


inoltre come ti dicevo prima potrebbe esserti utile saltare il passaggio da wvdial e scriverti tu uno script pppd. ecco un esempio:

gianluca@www:~$ cat /etc/ppp/options
/dev/ttyS0
57600
nodefaultroute
connect /etc/ppp/tiscali
crtscts
lock
noauth
noipdefault
name nome_utente_connessione
########################
gianluca@www:~$ cat /etc/ppp/tiscali
#!/bin/sh
/usr/sbin/chat -v -f /etc/ppp/tiscali.inf
########################
gianluca@www:~$ cat /etc/ppp/tiscali.inf
'' AT&F
OK
ATM0L0
OK
ATX3DTnumero_di_telefono_del_provider
CONNECT
########################
gianluca@www:~$ cat /etc/ppp/pap-secrets
nome_utente_connessione * password_connessione


poi per far partire la connessione basta scrivere
pppd

barraacodice
12-05-2007, 15:18
PERFETTO! Grazie gurutech :ave:
Adesso funziona. Le due righe di Warning precedenti appaiono lo stesso però pppd non muore e si connette. :D
Riassumo il tutto per qualcuno che ne avesse bisogno: ;)

-distribuzione opensuse 10.2
-aggiungere l'utente normale ai gruppi tty e uucp (può essere fatto graficamente da yast)
-chmod 4755 /usr/sbin/pppd
-chown root.dialout /usr/sbin/pppd

Grazie a tutti :D :D