Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/08/2024, à 12:25

rjcb

faire un service dans systemd avec un password

Bonjour,

J'utilise mon serveur que un CLI et je suis un peu novice.
J'ai un accès cloud pour faire des backup (pcloud)

Pour des raisons de perfs, j'utilise pcloudcc pour monter mon espace cloud sous  /mnt/pcloud/
Lorsque je lance la commande un prompt demande mon mdp:

root@pcloud:/# pcloudcc -u xxxxx.jc@gmail.com -p -m /mnt/pcloud/
pCloud console client v.2.0.1
Please, enter password

Comment faie pour que par ex toutes les 1h je m'assure que mon montage est bien présent.

Tout d'abord faire un script as a service:

[Unit]
Description=start pcloudcc

[Service]
User=root
WorkingDirectory=/root
ExecStart=pcloudcc -u rouillier.jc@gmail.com -p xxxx -m /mnt/pcloud/
# optional items below
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target

Par contre cela me demande de mettre le password. Si vous avez des suggestion

Merci par avance

Hors ligne

#2 Le 12/08/2024, à 12:37

Watael

Re : faire un service dans systemd avec un password

salut,

l'option --password n'accepte pas d'argument; il n'est donc pas possible d'indiquer le mot de passe sur la ligne de commande.
il semble exister une option --savepassword qui enregistrerait le mot de passe dans une base de données... la base de données est-elle pérenne entre les instances suivantes du daemon ?

cf. la doc sur github


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#3 Le 12/08/2024, à 14:05

rjcb

Re : faire un service dans systemd avec un password

Merci beaucoup. J'ai pas assez lu.
Je redémarre mon linux, puis:

root@pcloud:/mnt/pcloud# systemctl status mnt-pcloud.service 
● mnt-pcloud.service - start pcloudcc
     Loaded: loaded (/etc/systemd/system/mnt-pcloud.service; disabled; vendor preset: enabled)
     Active: inactive (dead)
root@pcloud:/mnt/pcloud# systemctl start mnt-pcloud.service 
root@pcloud:/mnt/pcloud# systemctl status mnt-pcloud.service 
● mnt-pcloud.service - start pcloudcc
     Loaded: loaded (/etc/systemd/system/mnt-pcloud.service; disabled; vendor preset: enabled)
     Active: activating (auto-restart) since Mon 2024-08-12 12:58:15 UTC; 2s ago
    Process: 388 ExecStart=/usr/local/bin/pcloudcc -u xxxx@gmail.com -d -s xxxxx -m /mnt/pcloud/ (code=exited, status=0/SUCCESS)
   Main PID: 388 (code=exited, status=0/SUCCESS)
        CPU: 3ms

Aug 12 12:58:15 pcloud systemd[1]: mnt-pcloud.service: Succeeded.

Dans mon fichier mnt-pcloud.service le password est entre " "
Je vais ensuite dans mon montage /mnt/pcloud mais rien.

#/etc/systemd/system/mnt-pcloud.service                                                 

[Unit]
Description=start pcloudcc

[Service]
User=root
WorkingDirectory=/root
ExecStart=pcloudcc -u xxxx@gmail.com -d -s "xxxxx" -m /mnt/pcloud/
# optional items below
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target

Je tente alors juste la commande dans un terminal:

root@pcloud:/mnt/pcloud# ls
root@pcloud:/mnt/pcloud# pcloudcc -u xxxxx.jc@gmail.com -s "xxxx" -m /mnt/pcloud/
pCloud console client v.2.0.1
Down: Everything Downloaded| Up: Everything Uploaded, status is SCANNING
Down: Everything Downloaded| Up: Everything Uploaded, status is READY

root@pcloud:/etc/systemd/system# cd /mnt/pcloud/
root@pcloud:/mnt/pcloud# ls
 Anniv                                'Docs Perso'                  Untitled.rtf  'pcloud code secours.jpg'
'Automatic Upload'                     Domotique                    id.png         permis1.JPG
 Cars                                  Photos                       id1aur.jpg     permis2.JPG
'Confirmation adhesion mutuelle.pdf'  'System Volume Information'   id2aur.jpg
root@pcloud:/mnt/pcloud# 

Cela fonctionne. La différence est que dans mon fichier je le lance en mode deamon, -d

Hors ligne

#4 Le 12/08/2024, à 15:13

geole

Re : faire un service dans systemd avec un password

Bonjour.
Pour introduire un mot de passe dans un service systemd, j'ai  un exemple dans le paragraphe 4.2. Je suis conscient qu'il y probablement plus simple.


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#5 Le 12/08/2024, à 18:34

Watael

Re : faire un service dans systemd avec un password

--savepassword ne prend pas non plus d'argument.

je suggérais d'exécuter la commande une première fois dans un terminal, avec l'option savepassword pour que le mot de passe qui sera demandé soit enregistré dans la base de données.

pCloud Console Client / Usage a écrit :

Start the service manually
pcloudcc -u example@myemail.com -p -s

Enter password and use -s switch to save the password.

a priori, le mot de passe ne devrait plus être demandé... pourvu, je suppose, que l'utilisateur qui exécute le service systemd soit celui qui a enregistré le mot de passe.

au démarrage de la machine, c'est root qui exécute les services.
au démarrage d'une session, ça peut être un simple utilisateur, et c'est d'ailleurs lui qui aura configuré le service, et pas root.

Dernière modification par Watael (Le 12/08/2024, à 18:38)


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#6 Le 12/08/2024, à 19:02

rjcb

Re : faire un service dans systemd avec un password

Merci.

De ce que j'ai pu lire:

echo -n LeBonMotDeDéchiffrement | tee /root/ZFS.pwd
wc /root/ZFS.pwd ; cat /root/ZFS.pwd
zpool create -f -m   /media/ZFS -O encryption=on -O keyformat=passphrase -O keylocation=file:///root/ZFS.pwd -o feature@lz4_compress=enabled MesDonneesPersonnelles raidz /dev/sda18 /dev/sdc11
shred  /root/ZFS.pwd

De ce que je comprends, "LeBonMotDeDéchiffrement" est mon password qui est ensuite écrit dans /root/ZFS.pwd ?

Hors ligne

#7 Le 12/08/2024, à 20:26

geole

Re : faire un service dans systemd avec un password

Je pensais spécialement à cette séquence.

 
      ret=`DISPLAY=:1 zenity --entry --title="Montage de la partition $Data ($i/8)." --text "veuillez fournir la phrase de déchiffrement de $Data." `

Si tu décides de sauvegarder ce retour, tu ne sauras plus obligé de  la demander toutes les  heures.


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#8 Le 12/08/2024, à 20:34

Watael

Re : faire un service dans systemd avec un password

j'ai raté un truc ? quel est le rapport entre zfs et pcloudcc ?


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#9 Le 12/08/2024, à 20:57

rjcb

Re : faire un service dans systemd avec un password

aucun mais je crois que c'est un exemple mais je n'arrive pas à le mettre en application sad

Hors ligne

#10 Le 12/08/2024, à 21:01

rjcb

Re : faire un service dans systemd avec un password

si je ne mets pas l'argument d pour l'avoir en mode deamon via systemd cela fonctionne

Hors ligne

#11 Le 12/08/2024, à 21:03

Watael

Re : faire un service dans systemd avec un password

tu as fait des essais en suivant la méthode que préconise pcloudcc (ce que je montre au #5) ?


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#12 Le 12/08/2024, à 21:21

geole

Re : faire un service dans systemd avec un password

Ce n'était qu'un exemple  montrant la saisie d'un mot de passe transmis à une commande.
Mais s'il y a plus simple, je suis preneur.

Dernière modification par geole (Le 12/08/2024, à 21:22)


Les grilles de l'installateur https://doc.ubuntu-fr.org/tutoriel/inst … _subiquity
"gedit admin:///etc/fstab" est proscrit,  utilisez "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY xdg-open /etc/fstab" Voir  https://doc.ubuntu-fr.org/gedit
Les partitions EXT4 des disques externes => https://forum.ubuntu-fr.org/viewtopic.p … #p22697248

En ligne

#13 Le 12/08/2024, à 21:43

Watael

Re : faire un service dans systemd avec un password

je te renvoie à mon message en #5. smile

pcloudcc semble avoir prévu le coup...


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#14 Le 12/08/2024, à 21:47

rjcb

Re : faire un service dans systemd avec un password

yes cela fonctionne avec ls -s dans le -d
Prochaine étape, avoir un mot de passe chiffré

Hors ligne

#15 Le 12/08/2024, à 23:29

Watael

Re : faire un service dans systemd avec un password

rjcb a écrit :

Prochaine étape, avoir un mot de passe chiffré

est-ce prévu par pcloudcc ?


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#16 Le 13/08/2024, à 09:56

rjcb

Re : faire un service dans systemd avec un password

Il est possible de faire du MFA mais le mode console avec pcloudcc ne le prend pas en charge.
Au pire j'aimerais pouvoir mettre le pwd dans un fichier accessible uniquement en lecture par root. par contre avec l'argument -s je ne sais pas si je peux mettre le chemin d'un fichier

Hors ligne

#17 Le 13/08/2024, à 11:24

Watael

Re : faire un service dans systemd avec un password

de ce que je lis dans la doc. en ligne, --password et --savepassword ne prennent pas d'argument(s).
et je me dis que si le mot de passe est enregistré dans une base de données, il y est très probablement chiffré.


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#18 Le 03/09/2024, à 16:29

rjcb

Re : faire un service dans systemd avec un password

Désolé de la réponse tardive.
Oui en effet mais j'ai pas l'impression que cela sauvegarde.

J'ai fait ceci:

[Unit]
Description=start pcloudcc

[Service]
User=root
WorkingDirectory=/root
ExecStart=pcloudcc -u xxxxr.jc@gmail.com -s "xxx" -m /mnt/pcloud/
# optional items below
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target

Par contre je vérifie pas tous les jours mais de temps en temps je vais voir si mon service est OK:

root@pcloud:~# systemctl status mnt-pcloud.service
* mnt-pcloud.service - start pcloudcc
     Loaded: loaded (/etc/systemd/system/mnt-pcloud.service; disabled; vendor preset: enabled)
     Active: inactive (dead)
root@pcloud:~# systemctl start mnt-pcloud.service
root@pcloud:~# systemctl status mnt-pcloud.service
* mnt-pcloud.service - start pcloudcc
     Loaded: loaded (/etc/systemd/system/mnt-pcloud.service; disabled; vendor preset: enabled)
     Active: active (running) since Tue 2024-09-03 15:25:39 UTC; 1s ago
   Main PID: 3056 (pcloudcc)
      Tasks: 2 (limit: 76929)
     Memory: 6.4M
        CPU: 44ms
     CGroup: /system.slice/mnt-pcloud.service
             `-3056 pCloudDrive

Je pensais que cela redémarerait en auto :-(

Faut que je creuse

Hors ligne