Mon serveur YunoHost
Matériel: Raspberry Pi 2 à la maison
Version de YunoHost: 4.3.6.2 (stable)
J’ai accès à mon serveur : En SSH | Par la webadmin
Êtes-vous dans un contexte particulier ou avez-vous effectué des modifications particulières sur votre instance ? : oui
Si oui, expliquer:
L’ordi (Raspberry Pi 2) se trouve derrière une Livebox 2 dans une zone DMZ. J’ai augmenté la mémoire d’échange (swap) de celui-ci pour faciliter l’installation du serveur gemini (l’application gemserv disponible dans le catalogue officiel de YunoHost). Si j’ai bien compris, la Livebox devrait laisser ouvert tous les ports. Donc, j’ai bien veillé à n’ouvrir que les ports importants, dans le pare-feu du système d’exploitation (le système YunoHost).
Description du problème
J’aurais voulu installer un serveur Gemini sur mon instance YunoHost. Je n’ai pas de connaissance particulière en administration.
L’installation de gemserv semble s’être déroulée sans problème apparent. Il reste à finaliser la configuration mais je ne vois pas comment procéder. D’autant plus que YunoHost détecte également un problème de redirection de ports.
Redirection des ports (diagnostics)
Le port 1965 n’est pas accessible de l’extérieur.
Rendre ce port accessible est nécessaire pour les fonctionnalités de type [?] (service gemserv)
Pour résoudre ce problème, vous devez probablement configurer la redirection de port sur votre routeur Internet comme décrit dans Configure port-forwarding | Yunohost Documentation
Et pourtant, le port 1965 est « ouvert » dans la Livebox 2 (règle NAT/PAT) en UDP/TCP (redirections sûrement inutiles) et dans le pare-feu de l’instance YunoHost (zone DMZ en UDP/TCP).
Édition
Cette redirection du port 1965 (TCP) était véritablement insensée puisque l’instance YunoHost se trouvait dans une DMZ. En fait, le port était probablement fermé à cause d’une défaillance du processus gemserv
(voir post n°3).
Journaux systèmes
LOGFILE: journalctl
-- Logs begin at Mon 2022-02-28 14:04:06 GMT, end at Mon 2022-02-28 16:26:42 GMT. --
Feb 28 16:03:52 systemd[1]: Started gemserv.
Feb 28 16:03:53 systemd[1]: gemserv.service: Main process exited, code=exited, status=101/n/a
Feb 28 16:03:53 systemd[1]: gemserv.service: Failed with result 'exit-code'.
Feb 28 16:03:58 systemd[1]: gemserv.service: Service RestartSec=5s expired, scheduling restart.
Feb 28 16:03:58 systemd[1]: gemserv.service: Scheduled restart job, restart counter is at 735.
Feb 28 16:03:58 systemd[1]: Stopped gemserv.
Feb 28 16:03:58 systemd[1]: Starting gemserv...
Feb 28 16:03:58 systemd[1]: Started gemserv.
Feb 28 16:03:58 systemd[1]: gemserv.service: Main process exited, code=exited, status=101/n/a
Feb 28 16:03:58 systemd[1]: gemserv.service: Failed with result 'exit-code'.
Feb 28 16:04:03 systemd[1]: gemserv.service: Service RestartSec=5s expired, scheduling restart.
Feb 28 16:04:03 systemd[1]: gemserv.service: Scheduled restart job, restart counter is at 736.
Feb 28 16:04:03 systemd[1]: Stopped gemserv.
Feb 28 16:04:03 systemd[1]: Starting gemserv...
Feb 28 16:04:04 systemd[1]: Started gemserv.
Feb 28 16:04:04 systemd[1]: gemserv.service: Main process exited, code=exited, status=101/n/a
Feb 28 16:04:04 systemd[1]: gemserv.service: Failed with result 'exit-code'.
Feb 28 16:04:09 systemd[1]: gemserv.service: Service RestartSec=5s expired, scheduling restart.
Feb 28 16:04:09 systemd[1]: gemserv.service: Scheduled restart job, restart counter is at 737.
Feb 28 16:04:09 systemd[1]: Stopped gemserv.
Feb 28 16:04:09 systemd[1]: Starting gemserv...
Feb 28 16:04:10 systemd[1]: Started gemserv.
Feb 28 16:04:10 systemd[1]: gemserv.service: Main process exited, code=exited, status=101/n/a
Feb 28 16:04:10 systemd[1]: gemserv.service: Failed with result 'exit-code'.
Feb 28 16:04:15 systemd[1]: gemserv.service: Service RestartSec=5s expired, scheduling restart.
Feb 28 16:04:15 systemd[1]: gemserv.service: Scheduled restart job, restart counter is at 738.
Feb 28 16:04:15 systemd[1]: Stopped gemserv.
Feb 28 16:04:15 systemd[1]: Starting gemserv...
Feb 28 16:04:15 systemd[1]: Started gemserv.
Feb 28 16:04:16 systemd[1]: gemserv.service: Main process exited, code=exited, status=101/n/a
Feb 28 16:04:16 systemd[1]: gemserv.service: Failed with result 'exit-code'.
Feb 28 16:04:21 systemd[1]: gemserv.service: Service RestartSec=5s expired, scheduling restart.
Feb 28 16:04:21 systemd[1]: gemserv.service: Scheduled restart job, restart counter is at 739.
Feb 28 16:04:21 systemd[1]: Stopped gemserv.
Feb 28 16:04:21 systemd[1]: Starting gemserv...
Feb 28 16:04:21 systemd[1]: Started gemserv.
Feb 28 16:04:21 systemd[1]: gemserv.service: Main process exited, code=exited, status=101/n/a
Feb 28 16:04:21 systemd[1]: gemserv.service: Failed with result 'exit-code'.
Feb 28 16:04:26 systemd[1]: gemserv.service: Service RestartSec=5s expired, scheduling restart.
Feb 28 16:04:26 systemd[1]: gemserv.service: Scheduled restart job, restart counter is at 740.
Feb 28 16:04:26 systemd[1]: Stopped gemserv.
Feb 28 16:04:26 systemd[1]: Starting gemserv...
Feb 28 16:04:27 systemd[1]: Started gemserv.
Feb 28 16:04:27 systemd[1]: gemserv.service: Main process exited, code=exited, status=101/n/a
Feb 28 16:04:27 systemd[1]: gemserv.service: Failed with result 'exit-code'.
Feb 28 16:04:29 systemd[1]: Stopped gemserv.
Feb 28 16:26:42 systemd[1]: Starting gemserv...
Feb 28 16:26:42 systemd[1]: Started gemserv.
Feb 28 16:26:42 systemd[1]: gemserv.service: Main process exited, code=exited, status=101/n/a
Feb 28 16:26:42 systemd[1]: gemserv.service: Failed with result 'exit-code'.
LOGFILE: /var/log/gemserv/gemserv.log
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
chown: changing ownership of '/etc/gemserv/config.d/server.toml': Read-only file system
chown: changing ownership of '/etc/gemserv/config.d': Read-only file system
chown: changing ownership of '/etc/gemserv/': Read-only file system
/bin/bash: /etc/gemserv/config.toml: Read-only file system
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
chown: changing ownership of '/etc/gemserv/config.d/server.toml': Read-only file system
chown: changing ownership of '/etc/gemserv/config.d': Read-only file system
chown: changing ownership of '/etc/gemserv/': Read-only file system
/bin/bash: /etc/gemserv/config.toml: Read-only file system
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
chown: changing ownership of '/etc/gemserv/config.d/server.toml': Read-only file system
chown: changing ownership of '/etc/gemserv/config.d': Read-only file system
chown: changing ownership of '/etc/gemserv/': Read-only file system
/bin/bash: /etc/gemserv/config.toml: Read-only file system
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
chown: changing ownership of '/etc/gemserv/config.d/server.toml': Read-only file system
chown: changing ownership of '/etc/gemserv/config.d': Read-only file system
chown: changing ownership of '/etc/gemserv/': Read-only file system
/bin/bash: /etc/gemserv/config.toml: Read-only file system
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
chown: changing ownership of '/etc/gemserv/config.d/server.toml': Read-only file system
chown: changing ownership of '/etc/gemserv/config.d': Read-only file system
chown: changing ownership of '/etc/gemserv/': Read-only file system
/bin/bash: /etc/gemserv/config.toml: Read-only file system
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
chown: changing ownership of '/etc/gemserv/config.d/server.toml': Read-only file system
chown: changing ownership of '/etc/gemserv/config.d': Read-only file system
chown: changing ownership of '/etc/gemserv/': Read-only file system
/bin/bash: /etc/gemserv/config.toml: Read-only file system
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
chown: changing ownership of '/etc/gemserv/config.d/server.toml': Read-only file system
chown: changing ownership of '/etc/gemserv/config.d': Read-only file system
chown: changing ownership of '/etc/gemserv/': Read-only file system
/bin/bash: /etc/gemserv/config.toml: Read-only file system
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
chown: changing ownership of '/etc/gemserv/config.d/server.toml': Read-only file system
chown: changing ownership of '/etc/gemserv/config.d': Read-only file system
chown: changing ownership of '/etc/gemserv/': Read-only file system
/bin/bash: /etc/gemserv/config.toml: Read-only file system
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }', src/config.rs:70:46
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Fichier de configuration : /etc/gemserv/config.d/server.toml
port = 1965
# use "::" for ipv6 and ipv4 or "0.0.0.0" for ipv4 only
host = "::"
# log is optional and server wide. It defaults to info if not set. Other levels
# are error, warn, and info. If error is set it will only show error. If warn
# is set it will show error and warn. Info shows all three.
log = "info"
[[server]]
hostname = "domain.tld"
dir = "/path/to/serv/"
key = "/etc/yunohost/certs/domain.tld/key.pem"
cert = "/etc/yunohost/certs/domain.tld/crt.pem"
Dans la configuration, je ne parviens pas à déterminer à quoi correspond le paramètre dir = /path/to/serv
.
Le système de fichier racine est monté en lecture/écriture (rw). D’ailleurs, je parviens à modifier le fichier /etc/gemserv/config.d/server.toml
en ligne de commande.
Remarque : L’instance YunoHost est toute récente.
Un petit coup de main serait vraiment bienvenu !