Update subject
This commit is contained in:
parent
f7f8c990c1
commit
60dd57c0ee
|
@ -44,6 +44,8 @@ token_format() {
|
||||||
\"challenge\": ${TID},"
|
\"challenge\": ${TID},"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# There is a hidden bonus if you send adlin 42 to
|
||||||
|
# adlin.nemunai.re/toctoc
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
{
|
{
|
||||||
"login": "${ULGN}",${challenge}
|
"login": "${ULGN}",${challenge}
|
||||||
|
@ -77,14 +79,14 @@ case "${TOKENID}" in
|
||||||
token1|token2)
|
token1|token2)
|
||||||
HDATA=42
|
HDATA=42
|
||||||
;;
|
;;
|
||||||
token3|token6)
|
token3|token5)
|
||||||
DATA=$(date +%s%N)
|
DATA=$(date +%s%N)
|
||||||
;;
|
;;
|
||||||
token4)
|
bonus2)
|
||||||
echo "${TOKENID} is not here! Perhaps it has been accidentally deleted?" >&2
|
echo "${TOKENID} is not here! Perhaps it has been accidentally deleted?" >&2
|
||||||
exit 2
|
exit 2
|
||||||
;;
|
;;
|
||||||
token5)
|
token4)
|
||||||
HDATA=$(dig +short +time=1 +tries=0 adlin.nemunai.re $2 | sed 's/["\\]//g') || {
|
HDATA=$(dig +short +time=1 +tries=0 adlin.nemunai.re $2 | sed 's/["\\]//g') || {
|
||||||
echo "Try again! Your resolver settings seems not good :(" >&2
|
echo "Try again! Your resolver settings seems not good :(" >&2
|
||||||
exit 3
|
exit 3
|
||||||
|
@ -97,4 +99,14 @@ case "${TOKENID}" in
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
token_format "${TOKENID#token}" "$(token_generator ${TOKENID#token} ${HDATA} ${DATA})" ${DATA}
|
if [ -n "${TOKENID}" ]
|
||||||
|
then
|
||||||
|
TOKENID="${TOKENID#token}"
|
||||||
|
if [ "$TOKENID" -ne "${TOKENID#bonus}" ]
|
||||||
|
then
|
||||||
|
TOKENID="${TOKENID#bonus}"
|
||||||
|
TOKENID=$(($TOKENID + 5))
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
token_format "${TOKENID}" "$(token_generator ${TOKENID} ${HDATA} ${DATA})" ${DATA}
|
||||||
|
|
|
@ -2,9 +2,9 @@
|
||||||
title: ADLIN
|
title: ADLIN
|
||||||
section: 6
|
section: 6
|
||||||
header: ADvanced LINux administration
|
header: ADvanced LINux administration
|
||||||
footer: EPITA SRS 2019
|
footer: EPITA SRS 2020
|
||||||
author: Écrit par Pierre-Olivier *nemunaire* Mercier <**nemunaire+adlin@nemunai.re**>
|
author: Écrit par Pierre-Olivier *nemunaire* Mercier <**nemunaire+adlin@nemunai.re**>
|
||||||
date: 2018-02-21
|
date: 2019-02-28
|
||||||
...
|
...
|
||||||
|
|
||||||
# NOM
|
# NOM
|
||||||
|
@ -43,6 +43,10 @@ Afin de pouvoir accéder au TP, vous devez commencer par vous authentifier :
|
||||||
cela permet d'assurer le suivi de votre progression. Votre nom d'utilisateur et
|
cela permet d'assurer le suivi de votre progression. Votre nom d'utilisateur et
|
||||||
votre mot de passe CRI vous seront nécessaire.
|
votre mot de passe CRI vous seront nécessaire.
|
||||||
|
|
||||||
|
Au moment de votre authentification, le système vous aura attribué une IP qui
|
||||||
|
vous est dédiée. Vous êtes libre d'utiliser n'importe quelle autre IP de la
|
||||||
|
plage qui ne serait pas attribuée.
|
||||||
|
|
||||||
|
|
||||||
## STAGE 0
|
## STAGE 0
|
||||||
|
|
||||||
|
@ -68,6 +72,23 @@ validation :
|
||||||
Voir aussi : **modprobe**(8), **fbi**(1), **ip**(8), **ip-link**(8), **ip-address**(8)
|
Voir aussi : **modprobe**(8), **fbi**(1), **ip**(8), **ip-link**(8), **ip-address**(8)
|
||||||
|
|
||||||
|
|
||||||
|
## DON'T PANIC
|
||||||
|
|
||||||
|
Vous avez vu comment passer des arguments au noyau, via la ligne de commande
|
||||||
|
dans le *bootloader*. Certains paramètres peuvent également être changé pendant
|
||||||
|
que le noyau est lancé.
|
||||||
|
|
||||||
|
Par exemple, vous pouvez consulter à partir de quel numéro de port, il n'y a plus besoin de privilèges pour l'utiliser :
|
||||||
|
|
||||||
|
**cat /proc/sys/net/ipv4/ip_unprivileged_port_start**
|
||||||
|
|
||||||
|
Et vous pouvez le modifier, aussi simplement que cela :
|
||||||
|
|
||||||
|
**echo 65535 > /proc/sys/net/ipv4/ip_unprivileged_port_start**
|
||||||
|
|
||||||
|
Voir aussi : **sysctl**(8), **proc**(5) (rechercher */proc/sys*, */proc/sys/kernel*)
|
||||||
|
|
||||||
|
|
||||||
## STAGE 2
|
## STAGE 2
|
||||||
|
|
||||||
Une DMZ contenant différents services est à votre disposition. Commencez par
|
Une DMZ contenant différents services est à votre disposition. Commencez par
|
||||||
|
@ -75,10 +96,10 @@ Une DMZ contenant différents services est à votre disposition. Commencez par
|
||||||
|
|
||||||
**adlin token2 | curl -d @- http://172.23.200.1/challenge**
|
**adlin token2 | curl -d @- http://172.23.200.1/challenge**
|
||||||
|
|
||||||
Voir aussi : **ip-route**(8), **crontab**(1)
|
Voir aussi : **ip-route**(8)
|
||||||
|
|
||||||
|
|
||||||
## STAGE 1.5 (bonus)
|
## BONUS 1
|
||||||
|
|
||||||
Souriez, vous êtes monitoré ! Mais n'y aurait-il pas un contenu caché ?
|
Souriez, vous êtes monitoré ! Mais n'y aurait-il pas un contenu caché ?
|
||||||
|
|
||||||
|
@ -96,48 +117,48 @@ On passe en HTTPS ! Facile ?
|
||||||
Voir aussi: **ntpd**(1)
|
Voir aussi: **ntpd**(1)
|
||||||
|
|
||||||
|
|
||||||
## STAGE 4 (bonus)
|
## BONUS 2
|
||||||
|
|
||||||
Montez le disque attaché à votre machine pour y découvrir fichier contenant le
|
Montez le disque attaché à votre machine pour y découvrir fichier contenant le
|
||||||
**token4**.
|
*token* bonus.
|
||||||
|
|
||||||
**adlin $(cat token4) | curl -d @- https://172.23.200.1/challenge**
|
**adlin $(cat bonus2) | curl -d @- https://172.23.200.1/testdisk**
|
||||||
|
|
||||||
Voir aussi: **mount**(8)
|
Voir aussi: **mount**(8)
|
||||||
|
|
||||||
|
|
||||||
## STAGE 5
|
## STAGE 4
|
||||||
|
|
||||||
Configurez le résolveur DNS de votre système :
|
Configurez le résolveur DNS de votre système :
|
||||||
|
|
||||||
**adlin token5** *entry-type* **| curl -d @- https://172.23.200.1/challenge**
|
**adlin token4** *entry-type* **| curl -d @- https://172.23.200.1/challenge**
|
||||||
|
|
||||||
Voir aussi: **resolv.conf**(5), **dig**(1)
|
Voir aussi: **resolv.conf**(5), **dig**(1)
|
||||||
|
|
||||||
|
|
||||||
## STAGE 6
|
## STAGE 5
|
||||||
|
|
||||||
Vous pouvez résoudre des noms de domaines, mais vous n'avez pas encore accès à
|
Vous pouvez résoudre des noms de domaines, mais vous n'avez pas encore accès à
|
||||||
internet ? Consultez la topologie pour vous ajouter une route vers la
|
internet ? Consultez la topologie pour vous ajouter une route vers la
|
||||||
connaissance !
|
connaissance !
|
||||||
|
|
||||||
**adlin token6 | curl -d @- https://adlin.nemunai.re/challenge**
|
**adlin token5 | curl -d @- https://adlin.nemunai.re/challenge**
|
||||||
|
|
||||||
Voir aussi : **ip-link**(8), **udhcpc**(1), **traceroute**(8), **tcpdump**(1), **sysctl**(8)
|
Voir aussi : **ip-link**(8), **udhcpc**(1), **traceroute**(8), **tcpdump**(1), **sysctl**(8)
|
||||||
|
|
||||||
|
|
||||||
## STAGE 7 (BONUS)
|
## BONUS 3
|
||||||
|
|
||||||
Parmi les services mis à disposition dans la DMZ, se trouve un serveur de
|
Parmi les services mis à disposition dans la DMZ, se trouve un serveur de
|
||||||
transport de courriels (MTA). Utilisez-le pour envoyer votre meilleure histoire
|
transport de courriels (MTA). Utilisez-le pour envoyer votre meilleure histoire
|
||||||
drôle : des points bonus faciles !
|
drôle : des points bonus faciles !
|
||||||
|
|
||||||
**mail** [*OPTIONS*] **adlin@nemunai.re**
|
**sendmail** [*OPTIONS*] **adlin@nemunai.re**
|
||||||
|
|
||||||
Voir aussi : **dig**(1), **mail**(1)
|
Voir aussi : **sendmail**(1)
|
||||||
|
|
||||||
|
|
||||||
## STAGE 8
|
## STAGE 6
|
||||||
|
|
||||||
Générez une clef SSH robuste puis soumettez-là :
|
Générez une clef SSH robuste puis soumettez-là :
|
||||||
|
|
||||||
|
@ -146,35 +167,36 @@ Générez une clef SSH robuste puis soumettez-là :
|
||||||
Voir aussi : **ssh-keygen**(1)
|
Voir aussi : **ssh-keygen**(1)
|
||||||
|
|
||||||
|
|
||||||
## STAGE 9
|
## STAGE 7
|
||||||
|
|
||||||
Pouvez-vous vous connecter ?
|
Pouvez-vous vous connecter ?
|
||||||
|
|
||||||
**ssh -p 222 adlin@adlin.nemunai.re**
|
**ssh root@adlin.nemunai.re**
|
||||||
|
|
||||||
|
|
||||||
# VALEUR RENVOYÉE
|
# VALEUR RENVOYÉE
|
||||||
|
|
||||||
Votre niveau d'avancement dans ce premier TP permet d'établir la première note
|
Votre niveau d'avancement dans ce premier TP permet d'établir la première note
|
||||||
de ce cours. Les autres notes seront établies sur les rendus des deux projets
|
de ce cours. Les autres notes seront établies sur vos réponses aux questions de
|
||||||
que l'on commencera aux prochains TP.
|
cours sur Epitaf, les rendus des deux projets que l'on commencera aux prochains
|
||||||
|
TP.
|
||||||
|
|
||||||
Vous n'êtes pas tenus de réaliser l'ensemble des étapes, ni de les faire dans
|
Vous n'êtes pas tenus de réaliser l'ensemble des étapes, ni de les faire dans
|
||||||
l'ordre : votre performance la plus haute sera retenue (+ les éventuels bonus
|
l'ordre : votre performance la plus haute sera retenue (+ les éventuels bonus
|
||||||
débloqués). Gardez cependant en tête que les étapes suivent un ordre, a priori,
|
débloqués). Gardez cependant en tête que les étapes suivent un ordre, a priori,
|
||||||
logique, qui devrait correspondre à votre évolution.
|
logique, qui devrait correspondre à votre évolution.
|
||||||
|
|
||||||
|
|
||||||
# VOIR AUSSI
|
# VOIR AUSSI
|
||||||
|
|
||||||
* <http://www.opsschool.org/> - Ops School Curriculum
|
* <http://www.opsschool.org/> - Ops School Curriculum
|
||||||
* <https://github.com/kahun/awesome-sysadmin> - A curated list of amazingly awesome open source sysadmin resources
|
|
||||||
* <https://dvdhrm.wordpress.com/> - Ponyhof - Dysfunctional Programming
|
|
||||||
* The Practice of System and Network Administration - T. Limoncelli, C. Hogan, S. Chalup
|
* The Practice of System and Network Administration - T. Limoncelli, C. Hogan, S. Chalup
|
||||||
* Programmation système en C sous Linux - Christophe Blaess – Eyrolles
|
* Programmation système en C sous Linux - Christophe Blaess – Eyrolles
|
||||||
|
|
||||||
|
|
||||||
# HISTORIQUE
|
# HISTORIQUE
|
||||||
|
|
||||||
|
2019 - Deuxième édition du cours à destination des SRS 2020.
|
||||||
2018 - Première édition du cours à destination des SRS 2019.
|
2018 - Première édition du cours à destination des SRS 2019.
|
||||||
|
|
||||||
|
|
||||||
|
|
Reference in New Issue
Block a user