Update subject
This commit is contained in:
parent
f7f8c990c1
commit
60dd57c0ee
|
@ -44,6 +44,8 @@ token_format() {
|
|||
\"challenge\": ${TID},"
|
||||
}
|
||||
|
||||
# There is a hidden bonus if you send adlin 42 to
|
||||
# adlin.nemunai.re/toctoc
|
||||
cat <<EOF
|
||||
{
|
||||
"login": "${ULGN}",${challenge}
|
||||
|
@ -77,14 +79,14 @@ case "${TOKENID}" in
|
|||
token1|token2)
|
||||
HDATA=42
|
||||
;;
|
||||
token3|token6)
|
||||
token3|token5)
|
||||
DATA=$(date +%s%N)
|
||||
;;
|
||||
token4)
|
||||
bonus2)
|
||||
echo "${TOKENID} is not here! Perhaps it has been accidentally deleted?" >&2
|
||||
exit 2
|
||||
;;
|
||||
token5)
|
||||
token4)
|
||||
HDATA=$(dig +short +time=1 +tries=0 adlin.nemunai.re $2 | sed 's/["\\]//g') || {
|
||||
echo "Try again! Your resolver settings seems not good :(" >&2
|
||||
exit 3
|
||||
|
@ -97,4 +99,14 @@ case "${TOKENID}" in
|
|||
;;
|
||||
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
|
||||
section: 6
|
||||
header: ADvanced LINux administration
|
||||
footer: EPITA SRS 2019
|
||||
footer: EPITA SRS 2020
|
||||
author: Écrit par Pierre-Olivier *nemunaire* Mercier <**nemunaire+adlin@nemunai.re**>
|
||||
date: 2018-02-21
|
||||
date: 2019-02-28
|
||||
...
|
||||
|
||||
# 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
|
||||
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
|
||||
|
||||
|
@ -68,6 +72,23 @@ validation :
|
|||
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
|
||||
|
||||
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**
|
||||
|
||||
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é ?
|
||||
|
||||
|
@ -96,48 +117,48 @@ On passe en HTTPS ! Facile ?
|
|||
Voir aussi: **ntpd**(1)
|
||||
|
||||
|
||||
## STAGE 4 (bonus)
|
||||
## BONUS 2
|
||||
|
||||
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)
|
||||
|
||||
|
||||
## STAGE 5
|
||||
## STAGE 4
|
||||
|
||||
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)
|
||||
|
||||
|
||||
## STAGE 6
|
||||
## STAGE 5
|
||||
|
||||
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
|
||||
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)
|
||||
|
||||
|
||||
## STAGE 7 (BONUS)
|
||||
## BONUS 3
|
||||
|
||||
Parmi les services mis à disposition dans la DMZ, se trouve un serveur de
|
||||
transport de courriels (MTA). Utilisez-le pour envoyer votre meilleure histoire
|
||||
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à :
|
||||
|
||||
|
@ -146,35 +167,36 @@ Générez une clef SSH robuste puis soumettez-là :
|
|||
Voir aussi : **ssh-keygen**(1)
|
||||
|
||||
|
||||
## STAGE 9
|
||||
## STAGE 7
|
||||
|
||||
Pouvez-vous vous connecter ?
|
||||
|
||||
**ssh -p 222 adlin@adlin.nemunai.re**
|
||||
**ssh root@adlin.nemunai.re**
|
||||
|
||||
|
||||
# VALEUR RENVOYÉE
|
||||
|
||||
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
|
||||
que l'on commencera aux prochains TP.
|
||||
de ce cours. Les autres notes seront établies sur vos réponses aux questions de
|
||||
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
|
||||
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,
|
||||
logique, qui devrait correspondre à votre évolution.
|
||||
|
||||
|
||||
# VOIR AUSSI
|
||||
|
||||
* <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
|
||||
* Programmation système en C sous Linux - Christophe Blaess – Eyrolles
|
||||
|
||||
|
||||
# HISTORIQUE
|
||||
|
||||
2019 - Deuxième édition du cours à destination des SRS 2020.
|
||||
2018 - Première édition du cours à destination des SRS 2019.
|
||||
|
||||
|
||||
|
|
Reference in New Issue