[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: faire un paquet .deb



Le 25/08/2025 à 17:32, Marc Chantreux a écrit :
hello,

On Mon, Aug 25, 2025 at 03:12:41PM +0200, hamster wrote:
Comme shell, j’ai pas mis cat. J’ai mis un script que j’ai fait contenant:

oui: c'était une façon simple de faire. si je peux me permettre:

-----------------
#!/bin/bash

dans ce cas, sh (10* moins gros) fait le taff

Merci de l’info.

set -e
echo -ne "\n\nle tunnel est ouvert\n\nmaintenance@honeypot:~$ "

* rend ton script modulaire et partage le

Je comprend meme pas ce que tu veux dire par "rend modulaire".
Pour ce qui est du partage, c’est mon intention, je suis en cours de rédaction de documentation sur ce que j’ai fait pour publier le tout.

J’ai aussi une part de modestie : je suis conscient de mon niveau très bas en scripts bash et que j’ai fait ca sans bien connaitre les bonnes pratiques. J’hésite donc a partager un truc dont je ne sais meme pas si il ne contient pas une erreur de débutant ou faille de sécurité béante que j’ignore.

* utilise un heredoc quand tu fais du multiligne

Je connais pas heredoc. Man heredoc ne me donne rien. Je suis allé cherche de la doc la dessus sur internet et je trouve pas du tout la syntaxe que tu utilise. Je trouve des trucs avec un ">" au début de chaque ligne. Je m’y perd dans tout ca, comment on fait pour savoir quelle est la bonne version et ou est la doc pour cette version ???

* les messages pour les humains sont a écrire sur stderr (2)
   et non sur stdout (1)

Ah, je savais pas.

read commande
commande="$(echo $commande|cut -d' ' -f1)"
echo -e "bash: $commande : commande introuvable"
exit 0
----------------

pourquoi capturer à chaque ligne ???

Je comprend pas "capturer a chaque ligne". Je n’ai utilisé "read" qu’une seule fois. Comme tu vois mon niveau en script bash est "grand débutant".

ton script final pourrait donc être:

#!/bin/sh
exec >&2 # on va tout écrire sur stderr (y compris les enfants)
<<% cat

    le tunnel avec $(whoiam)@$(hostname) est ouvert
    * saisir ctrl-d pour quitter le tunnel
    * inutile de tapper des commandes: ce shell est un cat amélioré

%
cat

Merci pour ces améliorations. Je pige pas pourquoi tu remet cat a la fin ?

Pourquoi tu le fais appartenir au groupe "users"?

c'est pas vraiment un compte système et je ne veux pas créer de groupe
"maintenance" pour rien. tu aurais une autre suggestion ?

Ah ok, pour économiser la création d’un groupe. Je m’etais pas posé la question et j’avais laissé la commande adduser agir comme elle veut, donc faire un groupe au nom de l’user.

Je préfère une connexion par mot de passe. Ainsi, pour que le tunnel soit
ouvert il faut a la fois :
- que bob le veuille, qu’il lance le truc qui ouvre le tunnel
- que je le veuille : que je lui donne par téléphone le mot de passe qui va
bien (bien sur je change ce mot de passe a chaque fois).

les mots de passe ça fait chier bob en général.

Oh oui, ca c’est très vrai.

par contre ce que tu
peux faire c'est avoir un mécanisme simple d'autorisation au debut de
ton script. un truc du genre

[ -e ~maintenance/welcome ] || {
	>&2 echo pas de maintenance hui
	exit 1
}

Alors la, je pige que dalle. Merci quand meme pour la suggestion, si un jour j’ai assez progressé pour la comprendre je l’utiliserai.

* tmux att pour me suivre dans un autre term pour me suivre
Je n’ai pas trouvé mention de l’option "att" dans le man de tmux. Qu’est-ce
que c’est et qu’est-ce que ca fait ?

tu n'as pas besoin de tapper les commandes tmux en entier:
* il y a des raccourcis
* le début de la commande qui n'est pas ambigue suffit

donc att c'est attach-session.
Ah ok. Du coup vu que j’ai déjà un script qui lance tmux automatiquement ca n’a pas d’interet d’utiliser ce genre de raccourci.

Mais du coup je pige pas ton usage de tmux.

Pour partager une session ce que j’ai trouvé c’est :
- l’autre utilisateur, depuis son compte, lance :
tmux new-session -s toto
ca se fait tout seul dans un script quand il lance le mécanisme de controle a distance
- Je me connecte en ssh.
- J’utilise sudo su bob pour devenir lui.
- Je lance :
tmux attach-session -t toto
la aussi je me suis fait un script pour pas avoir a taper un truc aussi compliqué.

Visiblement ce que tu fais est beaucoup plus simple. Est-ce que tu a pas tout mis ? Ou bien est-ce que j’ai vraiment très mal cherché quand j’ai cherché comment partager un terminal ?


Reply to: