[UPDATE] - 2022
This commit is contained in:
commit
17b3fb5c08
@ -25,7 +25,7 @@ COPY ./data/dice.ascii /opt/dice.ascii
|
|||||||
RUN chmod 444 /opt/dice.ascii
|
RUN chmod 444 /opt/dice.ascii
|
||||||
RUN touch /etc/first
|
RUN touch /etc/first
|
||||||
RUN touch /etc/isen2
|
RUN touch /etc/isen2
|
||||||
|
RUN apt install manpages-dev man-db shc gcc build-essential iputils-ping nmap -y
|
||||||
COPY ./data/bin/firstconnect /usr/bin/firstconnect
|
COPY ./data/bin/firstconnect /usr/bin/firstconnect
|
||||||
RUN chmod 755 /usr/bin/firstconnect
|
RUN chmod 755 /usr/bin/firstconnect
|
||||||
RUN chown root:root /usr/bin/firstconnect
|
RUN chown root:root /usr/bin/firstconnect
|
||||||
|
|||||||
@ -12,6 +12,13 @@ NAME Surname
|
|||||||
NAME2 Surname2
|
NAME2 Surname2
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Motd
|
||||||
|
|
||||||
|
You can add a specific motd to copy on insances
|
||||||
|
|
||||||
|
You can use specfic tag '__MOTD__' in your motd which be replaced by the NAMES of data/liste
|
||||||
|
|
||||||
|
|
||||||
## Build Docker image
|
## Build Docker image
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|||||||
66
generate.sh
66
generate.sh
@ -1,12 +1,23 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
usage() {
|
|
||||||
echo "ROOT ???"
|
cd $(dirname $0)
|
||||||
exit
|
|
||||||
|
usage () {
|
||||||
|
|
||||||
|
Res=$1
|
||||||
|
case $Res in
|
||||||
|
1) echo "root for use" ;;
|
||||||
|
2) echo "Check bin : $BinNeed" ;;
|
||||||
|
0) echo "Everything's Gonna Be Alright" ;;
|
||||||
|
*) echo "Something strange just happend ... "; Res=666 ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit $Res
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
cd $(dirname $0)
|
[[ "$(whoami)" != "root" ]] && usage 1
|
||||||
|
|
||||||
Liste=./data/liste
|
Liste=./data/liste
|
||||||
ListeMachinaUser=./data/Machina
|
ListeMachinaUser=./data/Machina
|
||||||
@ -20,6 +31,16 @@ TMP=/tmp
|
|||||||
[[ $(whoami) != "root" ]] && usage
|
[[ $(whoami) != "root" ]] && usage
|
||||||
cp docker-compose.yml.template.head ${TMP}/docker-compose.yml
|
cp docker-compose.yml.template.head ${TMP}/docker-compose.yml
|
||||||
rm -f ${TMP}/hostname
|
rm -f ${TMP}/hostname
|
||||||
|
BinNeed="figlet mke2fs truncate docker docker-compose "
|
||||||
|
|
||||||
|
CheckBinCpt=0
|
||||||
|
for CheckBin in ${BinNeed}
|
||||||
|
do
|
||||||
|
[[ -z $(which $CheckBin) ]] && ((CheckBinCpt++))
|
||||||
|
done
|
||||||
|
|
||||||
|
[[ ${CheckBinCpt} -ne 0 ]] && usage 2
|
||||||
|
|
||||||
|
|
||||||
[[ "$1" == "del" ]] && read -p "ARE YOU SURE BIATCH ?????? (yes/no) : " ans
|
[[ "$1" == "del" ]] && read -p "ARE YOU SURE BIATCH ?????? (yes/no) : " ans
|
||||||
|
|
||||||
@ -45,6 +66,9 @@ for User in $(cat ${Liste} | grep ^[A-Z][A-Z].*\ [A-Z][a-z] | sed "s#[a-z]#|#g"
|
|||||||
umount ./data/students/part/${User}_${Machina}_part
|
umount ./data/students/part/${User}_${Machina}_part
|
||||||
rm -Rf ./data/students/part/${User}_${Machina}_part
|
rm -Rf ./data/students/part/${User}_${Machina}_part
|
||||||
rm ./data/students/part/${User}_${Machina}
|
rm ./data/students/part/${User}_${Machina}
|
||||||
|
[[ ! -z $(mount | grep ${User}_part) ]] && umount ./data/students/part/${User}_part
|
||||||
|
[[ -d ./data/students/part/${User}_part ]] && rm -Rf ./data/students/part/${User}_part
|
||||||
|
[[ -f ./data/students/part/${User} ]] && rm ./data/students/part/${User}
|
||||||
else
|
else
|
||||||
if [[ ! -f ./data/students/part/${User}_${Machina} ]]
|
if [[ ! -f ./data/students/part/${User}_${Machina} ]]
|
||||||
then
|
then
|
||||||
@ -67,6 +91,31 @@ for User in $(cat ${Liste} | grep ^[A-Z][A-Z].*\ [A-Z][a-z] | sed "s#[a-z]#|#g"
|
|||||||
[[ -z $(echo $User | grep -iE "astier|lefebvre|catanese") ]] && rm -f ./data/students/part/${User}_${Machina}_part/.gen/.ssh/id* ./data/students/part/${User}_${Machina}_part/.ssh/id*
|
[[ -z $(echo $User | grep -iE "astier|lefebvre|catanese") ]] && rm -f ./data/students/part/${User}_${Machina}_part/.gen/.ssh/id* ./data/students/part/${User}_${Machina}_part/.ssh/id*
|
||||||
chown -Rf 1000:1000 ./data/students/part/${User}_${Machina}_part/
|
chown -Rf 1000:1000 ./data/students/part/${User}_${Machina}_part/
|
||||||
echo "10.10.10.${tID} ${User,,}"-${Machina} >> ${TMP}/hostname
|
echo "10.10.10.${tID} ${User,,}"-${Machina} >> ${TMP}/hostname
|
||||||
|
echo "Generate $User"
|
||||||
|
mkdir -p ./data/students/part/
|
||||||
|
touch ./data/students/part/${User}
|
||||||
|
mkdir -p ./data/students/part/${User}_part
|
||||||
|
truncate -s 200M ./data/students/part/${User} &> /dev/null
|
||||||
|
mke2fs -t ext4 -F ./data/students/part/${User} &> /dev/null
|
||||||
|
mount ./data/students/part/${User} ./data/students/part/${User}_part
|
||||||
|
cp -Rf ./data/skel/. ./data/students/part/${User}_part/
|
||||||
|
mkdir -p ./data/students/part/${User}_part/.gen/
|
||||||
|
mv ./data/students/part/${User}_part/backup.sh ./data/students/part/${User}_part/.gen/
|
||||||
|
if [[ -f ./data/motd ]]
|
||||||
|
then
|
||||||
|
cat ./data/motd | sed "s#__MOTD__#$User#g" | figlet | tee ./data/students/part/${User}_part/.gen/motd &> /dev/null
|
||||||
|
|
||||||
|
else
|
||||||
|
echo "host : ${User^^}" | figlet | tee /tmp/motd &> /dev/null
|
||||||
|
echo "---------" | figlet | tee -a /tmp/motd &> /dev/null
|
||||||
|
echo "Isen 2021 - M 1"| figlet | tee -a /tmp/motd &> /dev/null
|
||||||
|
cp /tmp/motd ./data/students/part/${User}_part/.gen/
|
||||||
|
fi
|
||||||
|
cp -rfp ./data/ssh/ ./data/students/part/${User}_part/.gen/.ssh
|
||||||
|
cp -rfp ./data/ssh/ ./data/students/part/${User}_part/.ssh
|
||||||
|
[[ -z $(echo $User | grep -iE "astier|lefebvre|catanese") ]] && rm -f ./data/students/part/${User}_part/.gen/.ssh/id* ./data/students/part/${User}_part/.ssh/id*
|
||||||
|
chown -Rf 1000:1000 ./data/students/part/${User}_part/
|
||||||
|
echo "10.10.10.${tID} ${User,,}" | tee -a /tmp/hostname &> /dev/null
|
||||||
echo "
|
echo "
|
||||||
${User}_${Machina}:
|
${User}_${Machina}:
|
||||||
image: isensshbase
|
image: isensshbase
|
||||||
@ -101,3 +150,12 @@ for Dir in $( ls -1 ./data/students/part/ | grep _part)
|
|||||||
|
|
||||||
|
|
||||||
chmod 777 ./docker-compose.yml
|
chmod 777 ./docker-compose.yml
|
||||||
|
cat docker-compose.yml.template.footer | tee -a /tmp/docker-compose.yml &> /dev/null
|
||||||
|
cp /tmp/docker-compose.yml .
|
||||||
|
for Dir in $( ls -1 ./data/students/part/ | grep _part)
|
||||||
|
do
|
||||||
|
[[ -f /tmp/hostname ]] && cp /tmp/hostname ./data/students/part/${Dir}/.gen
|
||||||
|
done
|
||||||
|
|
||||||
|
|
||||||
|
usage 0
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user