# mot de passe Dans Script Shell ??? comment?



## speedy_jo (19 Octobre 2001)

comment on peut ecrire le mot de passe dans un script shell qui veut a chaque lancement le mot de passe pour executer.
logiquement devrait avoir une solution pour que le script utilise le mot de passe ADMIN ou IL le faut ecrire mais comment dans le scrip.....

merci d'avance


----------



## Membre supprimé 2 (19 Octobre 2001)

On peut pas et heureusement, c'est un trou de securite enorme ca!!!!

en parlant de trou de securite, essayer donc ca:

appeler Terminal
quitter Terminal
appeler Netinfo Manager
appeler Terminal en passant par le menu Recent Item de la pomme.

Impressionant non?

pour regler le probleme c'est par la...

page


----------



## Gwenhiver (19 Octobre 2001)

Je te déplace dans la section Unix


----------



## speedy_jo (19 Octobre 2001)

mais alors comment fairer pour ecrit un script executable qui sert les commandes super USER "sudo"
et donc forcement il le faut le mot de passe....


----------



## Membre supprimé 2 (19 Octobre 2001)

faut que tu mettes ton sudo dehors, tu pourra lancer ton script en root, mais pas en user. un seul sudo suffit, mais pas dans le script ;-)


----------



## [MGZ]Toine (19 Octobre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par William:
*
appeler Terminal
quitter Terminal
appeler Netinfo Manager
appeler Terminal en passant par le menu Recent Item de la pomme.

Impressionant non?
*<HR></BLOCKQUOTE>

Ah na rien fait chez moi...
donc bon....


Pour le shell script, tu veux peux faire une instruction : 


read password 
(je connaît pas trop la syntaxe désolé)

qui te stocke dans $password le mot de passe rentré


----------



## [MGZ]Toine (19 Octobre 2001)

Euh bon voilà je croit que la technique de William est quand même meilleur....


----------



## speedy_jo (19 Octobre 2001)

d'accord mais comment faire???
en dehors du script????

tu peut preciser...
merci


----------



## speedy_jo (19 Octobre 2001)

read password (command non connue dans shell)


alors comment et ou?


----------



## Membre supprimé 2 (19 Octobre 2001)

Bon, alors tout simplement tu consideres que  c'est root qui va lancer le script, donc tu n'as pas besoin du mot de passe a l'interieur.

c'est quand tu lanceras le script que tu le donnera : 

sudo script 

mais ou veux tu le mettre ce script, au démarrage?

[18 octobre 2001 : message édité par William]


----------



## Bilbo (19 Octobre 2001)

<BLOCKQUOTE><font size="1" face="Verdana, Geneva">quote:</font><HR>Posté à l'origine par [MGZ]Toine:
*Ah na rien fait chez moi...
donc bon....
*<HR></BLOCKQUOTE>

Recommence, tu verras que tu es en root sans entrer de mot de passe. Le lien donné par William t'explique ça dans les détails.  
	

	
	
		
		

		
		
	


	




Bye.


----------



## speedy_jo (19 Octobre 2001)

c'est pour crer un startupItems dans system library

pour MTU


----------



## Membre supprimé 2 (19 Octobre 2001)

fallais le dire tout de suite   
	

	
	
		
		

		
		
	


	




Creer un StartupItem:

voila la procedure:

Il faut creer un script shell, et un fichier xml associe.

cree un nouveau startupitem:

mkdir /Library/StartupItems/MTU

puis dans ce repertoire, place un script appele MTU
dont le contenu est

#!/bin/sh

. /etc/rc.common

ifconfig ppp0 mtu 1488

puis au meme endroit, cree un fichier qui porte le nom StartupParameters.plist

et qui contient:

{
Description = "Maximum Transmit Unit";
Provides = ("MTU");
Requires = ("Network");
OrderPreference = "Late";
Messages = {
start = "Starting Maximum Transmit Unit";
stop = "Stopping Maximum Transmit Unit";
};
}

puis rend ces scripts executable

chmod a+x MTU
chmod a+x StartupParameters.plist


ca va comme ca? j'en ai parle sur un autre sujet... je me repete

[18 octobre 2001 : message édité par William]


----------



## speedy_jo (19 Octobre 2001)

j'ai cree les 2 fichiers decrit mais pas de lancement au moment du demarrage? MTU garde ttjours les meme valeurs &gt;&gt;&gt;&gt;1500&lt;&lt;&lt;&lt;&lt;
ou est le probleme dans mon manip???
ja fait religiesusement comme tu dit et je deja lu sur le forum X

alors...?


----------



## Membre supprimé 2 (19 Octobre 2001)

si tu fais tout ce qui est ecris, ca doit marcher

MTU c'est tout ca:
-----------
#!/bin/sh
. /etc/rc.common
ifconfig ppp0 mtu 1488
-----------

StartupParameters.plist c'est tout ca
--------
{
Description = "Maximum Transmit Unit";
Provides = ("MTU");
Requires = ("Network");
OrderPreference = "Late";
Messages = {
start = "Starting Maximum Transmit Unit";
stop = "Stopping Maximum Transmit Unit";
};
}
---------

tu les mets tout les deux dans /Library/StartUpItems/MTU et en executable...

je peux pas faire mieux...


----------



## Membre supprimé 2 (19 Octobre 2001)

il va sans dire que 1488 comme mtu et ppp0 comme interface c'est un exemple a adapter


----------



## rchytil (19 Octobre 2001)

Le Startupitem fonctionne bien juste après le boot, mais dès qu'on se déconnecte et se reconnecte, il faut relancer la commande ifconfig ppp0 (ou en0 si on est derrière un routeur) 1492 (ou moins).

Voilà comment créer l'entrée crontab qui fera cela (je sais, c'est un peu violent de le faire chaque minute, mais bon, ca ne mange pas bcp de resources et ca marche)


1) ouvre un terminal
2) tape "su" (je mets des guillemets, mais faudra pas les taper), puis le mot de passe de root (je pense que tu as activé le compte root)
3) tape "crontab-u root -e"
4) vi s'ouvre. tape "a" (pour "ajouter")
5) tape la chose suivante:
*	*	*	*	*	/sbin/ifconfig ppp0 mtu 1492
(il y a un tabulateur entre chaque étoile -- attention, 5 étoiles, ce qui veut dire:
chaque minute, chaque heure, chaque jour, chaque mois, chaque jour de la semaine, execute la commande /sbin/ifconfig ...)
6) tape la touche "retour de chariot" (ou entrée, ou return) -- pas sûr que cela soit nécessaire
7) tape la touche "esc", puis ":wq" (pour write-quit)
8) voilà, l'entrée cron pour root existe. Pour l'activer, il faut redémarrer cron. Tape "cron". Tu obtiens un message d'erreur qui te dit que le process est bloqué, avec un numéro de process. Par exemple 876787 (en général un plus petit nombre)
9) tape "kill 876787" (mets le numéro de process qu'il t'a donné)
10) retape "cron" (et ca redémarre)
11) pour t'assurer que ca marche, tape "tail -f /var/log/system.log" pour voir ce qui se passe. Avant une minute, tu devrais voir un truc du style: 
Oct 18 22:52:00 localhost CRON[22462]: (root) CMD (/sbin/ifconfig ppp0 mtu 1492) 

Voilà. Ca, ca marche si ton Mac est connecté directement au modem ADSL. Maintenant, j'ai mon Mac connecté à un PC, par ethernet, qui lui est connecté (par un autre port Ethernet) au modem ADSL (le PC tourne un Firewall). Et j'ai toujours le problème de MTU.
Alors je fais la même manip, avec en0 à la place de ppp0, et 1464 au lieu de 1492.

Vivement qu'Apple corrige ce bug

Robin


----------



## rchytil (19 Octobre 2001)

Merde, j'ai trouvé une autre merde...(excuse my french comme disent les anglophones)

Impossible d'envoyer des Emails de 5k ou plus (j'ai pas essayé beaucoup de valuers), c'est-à-dire avec des attachements), ou de poster une réponse avec un message un peu long (sur ce forum par exemple) de puis un browser.
J'ai dû encore diminuer le MTU de en0. J'ai mis 1420 et c'est bon.

Avec ppp0 (le modem connecté par Ethernet sur le Mac), je n'avais jamais vu ca. 1492 fonctionnait parfaitement. par sur en0, connecté à un PC qui lui est relié au modem ADSL, je dois mettre moins. Pour browser, il faut 1464. Avec ping -s 1464 www.apple.com"  (ou autre valeur de taille de paquet), on peut faire des tests. 

Pffff...

Robin


----------



## speedy_jo (19 Octobre 2001)

merci tes expliquations precis et cocncis...
je vais faire le test tt suite et je vais te tenir au courrant que c'est ok ou non...


----------



## rchytil (19 Octobre 2001)

De rien. Tiens-moi au courant si tu trouves un autre moyen (p.ex. mettre la valeur de mtu PAR DEFAUT plus petite, dans un fichier de config).

J'ai épluché les forums de macgeneraion.com, macplus.net, allo.ch, macnn.com, macadsl.com, macbidouille.com. Rien trouvé.

Robin


----------



## speedy_jo (19 Octobre 2001)

ROBIN tu est tout simplement GENIAL

ton trovaille marche meme apres la coupure du courrant..

la valaurs ideal pour moi 1492 est tt la SUPEEEEEEER.
en fin je peut me liberer l'esprit pour fair autre chauses....

merci merci et merci encore.....


----------



## [MGZ]Toine (19 Octobre 2001)

Non je confirme, chez moi je ne me retrouve pas en root...  
	

	
	
		
		

		
		
	


	




...


----------



## speedy_jo (20 Octobre 2001)

mais si ca marche...........


----------



## Membre supprimé 2 (20 Octobre 2001)

Je me retrouve comme Toine, à tenter de faire la manip décrite chez Stepwise depuis hier, à partir de divers comptes, et ça ne marche pas...

Apparemment, il y a quelque chose de particulier qui nous protège, mais quoi ? Les droits sur Terminal et NetInfo Manager semblent standards chez moi (owner : root, group : admin, exécution avec droit du propriétaire...)


----------



## [MGZ]Toine (21 Octobre 2001)

Merci barijon,a, tu me rassure, parce que je commencait à m'inquiéter..

J'ai essayé cette manip sur le sever de mon père sous X.1, et en effet, je me retrouve bien ssous root, je ne sait pas pourquoi sur le mien, ca ne le fait pas....


----------



## speedy_jo (21 Octobre 2001)

en tout cas je vous assure que ca marche et plutot bien 
sans probleme avec le valeur 1492 qui est bien fixee dans la "CRON TAB" tableux de "depart"


----------



## Membre supprimé 2 (21 Octobre 2001)

Je crois qu'ils ne parlent plus de ca, mais du trou de securite qui la mise a jour repare.

en tout cas temps mieux si ca marce


----------

