script
This commit is contained in:
parent
6f4f048ce7
commit
b4032ed40f
1
configs/authorized_keys
Normal file
1
configs/authorized_keys
Normal file
@ -0,0 +1 @@
|
|||||||
|
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCWyVkbAlKLlqmgtbIDYVbuLzoZ9WqzR/STVYOX3dVwN6/JTjTwfwziqB709jQC3xjHucn0BG60CugTw3VpegRiq8sh7Fza72TlBgxZ+HtzfP3hEybv+Ig4EHrILScDE9TQfuijID8ymB2mk2lj8C87UsWGUv7yPabgHK+/XkEOn5BKlr6wTibGu4tNUiOPEQIUiKZ5CLm7OfWxaL1RXsgitUcT+i6GtGjOz+9Xy+1dNa/btt6V+V5PDMh3NM4tXRImpr8B1C0g9uUDsRQTUw8mfAmN0fpBGEaM4/MBnAfSL2AVft4HIbFD6/Qs7EPS14rnz1gZwUlwfERriWLBvxeVapQgwk8qmoJVmtIUHxorYrLsanq+SDsX9Jj/X/X1hA3XtRMbuBZEQOeOxUmajyiA3A2tyMZbio/vNwA9b4a3JR9hOw+kZpJ4UjF9adJmiGYzxS9GE/DNIi2AdKUyBsLzUkP7966AzIT3vGrVwjyygUZHzOlp7bOS5PLDRHJw0FU= mateusz@pop-os
|
@ -1,15 +1,22 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
usage() { echo "Usage: [-i <ini config>] [-c <conf file>] [-k <pub server key>] [-l <priv key lenght>] [-n <name>] [-s <dir with scripts>]" 1>&2; exit 1; }
|
kitcrypto_version="0.0.3"
|
||||||
|
uvpn3_version="3.0.3"
|
||||||
|
|
||||||
while getopts "i:c:k:l:n:s:" option
|
usage() { echo "Usage: [-a <root ssh authorized_keys>] [-b add executable to output] [-c <conf file>] [-d <sshd_config>] [-i <ini config>] [-k <pub server key>] [-l <priv key lenght>] [-m <msmtp script>] [-n <name>] [-s <dir with scripts>]" 1>&2; exit 1; }
|
||||||
|
|
||||||
|
while getopts "a:b:c:d:e:i:k:l:m:n:s:" option
|
||||||
do
|
do
|
||||||
case "${option}"
|
case "${option}"
|
||||||
in
|
in
|
||||||
i)ini=${OPTARG};;
|
a)akeys=${OPTARG};;
|
||||||
|
b)build="yes";;
|
||||||
c)conf=${OPTARG};;
|
c)conf=${OPTARG};;
|
||||||
|
d)sshconf=${OPTARG};;
|
||||||
|
i)ini=${OPTARG};;
|
||||||
k)key=${OPTARG};;
|
k)key=${OPTARG};;
|
||||||
l)keylen=${OPTARG};;
|
l)keylen=${OPTARG};;
|
||||||
|
m)msmtp=${OPTARG};;
|
||||||
n)name=${OPTARG};;
|
n)name=${OPTARG};;
|
||||||
s)scripts=${OPTARG};;
|
s)scripts=${OPTARG};;
|
||||||
*)usage;;
|
*)usage;;
|
||||||
@ -20,17 +27,18 @@ shift $((OPTIND-1))
|
|||||||
CONFIGS=$(pwd)
|
CONFIGS=$(pwd)
|
||||||
echo "${CONFIGS}"
|
echo "${CONFIGS}"
|
||||||
|
|
||||||
|
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt install cmake make g++ gcc libssl-dev libgmp-dev
|
sudo apt install cmake make g++ gcc libssl-dev libgmp-dev
|
||||||
|
|
||||||
cd /tmp
|
cd /tmp
|
||||||
wget -O uVPN.tar.xz https://opensource.krypto-it.pl/uVPN/uVPN-3.0.3.tar.xz
|
wget -O uVPN.tar.xz https://opensource.krypto-it.pl/uVPN/uVPN-$uvpn3_version.tar.xz
|
||||||
mkdir uVPN
|
mkdir uVPN
|
||||||
tar -xvf uVPN.tar.xz -C uVPN
|
tar -xvf uVPN.tar.xz -C uVPN
|
||||||
rm uVPN.tar.xz
|
rm uVPN.tar.xz
|
||||||
mv uVPN/*/* uVPN/
|
mv uVPN/*/* uVPN/
|
||||||
|
|
||||||
wget -O kit-crypto.tar.xz https://opensource.krypto-it.pl/kit-crypto-c/kit-crypto-c-0.0.2.tar.xz
|
wget -O kit-crypto.tar.xz https://opensource.krypto-it.pl/kit-crypto-c/kit-crypto-c-$kitcrypto_version.tar.xz
|
||||||
mkdir kit-crypto
|
mkdir kit-crypto
|
||||||
tar -xvf kit-crypto.tar.xz -C kit-crypto
|
tar -xvf kit-crypto.tar.xz -C kit-crypto
|
||||||
rm kit-crypto.tar.xz
|
rm kit-crypto.tar.xz
|
||||||
@ -44,30 +52,49 @@ cd ../uVPN.bin
|
|||||||
cmake ../uVPN -DKIT_CRYPTO_INCLUDES=/tmp/kit-crypto/include -DKIT_CRYPTO_LIB=/tmp/kit-crypto/libkitcryptoc_static.a
|
cmake ../uVPN -DKIT_CRYPTO_INCLUDES=/tmp/kit-crypto/include -DKIT_CRYPTO_LIB=/tmp/kit-crypto/libkitcryptoc_static.a
|
||||||
make
|
make
|
||||||
mkdir /tmp/output
|
mkdir /tmp/output
|
||||||
echo $keylen
|
mkdir /tmp/output/vpn
|
||||||
./uVPN_rsagen $keylen > /tmp/output/uVPN.priv
|
mkdir /tmp/output/ssh
|
||||||
head -2 /tmp/output/uVPN.priv > /tmp/output/$name.pub
|
./uVPN_rsagen $keylen > /tmp/output/vpn/uVPN.priv
|
||||||
|
head -2 /tmp/output/vpn/uVPN.priv > /tmp/output/vpn/$name.pub
|
||||||
|
|
||||||
mv uVPN3 /tmp/output
|
if [ -n "$build" ]; then
|
||||||
cd $CONFIGS
|
mv uVPN3 /tmp/output/vpn
|
||||||
cp $conf /tmp/output
|
|
||||||
cp $ini /tmp/output
|
|
||||||
cp $key /tmp/output
|
|
||||||
if [ -n "$scripts" ]; then
|
|
||||||
cp -r $scripts /tmp/output/
|
|
||||||
fi
|
fi
|
||||||
sed -i '/^private_key/c\private_key uVPN.priv' /tmp/output/$conf
|
|
||||||
sed -i '/^name/c\name '"$name" /tmp/output/$conf
|
cd $CONFIGS
|
||||||
sed -i '/^servers_config/c\servers_config '"$ini" /tmp/output/$conf
|
cp $conf /tmp/output/vpn
|
||||||
sed -i '1s/.*/['"$name"']/' /tmp/output/$ini
|
cp $ini /tmp/output/vpn
|
||||||
|
cp $key /tmp/output/vpn
|
||||||
|
if [ -n "$scripts" ]; then
|
||||||
|
cp -r $scripts /tmp/output/vpn
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$akeys" ]; then
|
||||||
|
cp $akeys /tmp/output/ssh
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$sshconf" ]; then
|
||||||
|
cp $sshconf /tmp/output/ssh
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir /tmp/output/msmtp
|
||||||
|
if [ -n "$msmtp" ]; then
|
||||||
|
cp $msmtp /tmp/output/msmtp
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
sed -i '/^private_key/c\private_key uVPN.priv' /tmp/output/vpn/$conf
|
||||||
|
sed -i '/^name/c\name '"$name" /tmp/output/vpn/$conf
|
||||||
|
sed -i '/^servers_config/c\servers_config '"$ini" /tmp/output/vpn/$conf
|
||||||
|
sed -i '1s/.*/['"$name"']/' /tmp/output/vpn/$ini
|
||||||
|
|
||||||
cd /tmp/output
|
cd /tmp/output
|
||||||
mkdir vpn
|
mkdir configs
|
||||||
mv * vpn
|
mv * configs
|
||||||
mkdir -t $CONFIGS/squash
|
mkdir -t $CONFIGS/squash
|
||||||
mkdir -t $CONFIGS/squash/$name
|
mkdir -t $CONFIGS/squash/$name
|
||||||
mksquashfs . $CONFIGS/squash/$name.squashfs
|
mksquashfs . $CONFIGS/squash/$name.squashfs
|
||||||
cp /tmp/output/vpn/$name.pub $CONFIGS/squash/$name
|
cp /tmp/output/configs/vpn/$name.pub $CONFIGS/squash/$name.pub
|
||||||
|
|
||||||
rm -rf /tmp/kit-crypto
|
rm -rf /tmp/kit-crypto
|
||||||
rm -rf /tmp/uVPN*
|
rm -rf /tmp/uVPN*
|
||||||
|
64
configs/sendmail.sh
Executable file
64
configs/sendmail.sh
Executable file
@ -0,0 +1,64 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
cat <<EOF > /etc/msmtprc
|
||||||
|
|
||||||
|
account notification
|
||||||
|
host smtp.mkedziora.pl
|
||||||
|
port 587
|
||||||
|
timeout 15
|
||||||
|
protocol smtp
|
||||||
|
domain mkedziora.pl
|
||||||
|
auth on
|
||||||
|
user test
|
||||||
|
from test@mkedziora.pl
|
||||||
|
password FA2OEOsQO884f9lv
|
||||||
|
tls on
|
||||||
|
syslog on
|
||||||
|
tls_starttls on
|
||||||
|
|
||||||
|
EOF
|
||||||
|
|
||||||
|
ifconfig > /tmp/ifconfig
|
||||||
|
cat /proc/cmdline > /tmp/cmdline
|
||||||
|
tar -cvf /tmp/zalacznik.tar /tmp/cmdline /tmp/ifconfig
|
||||||
|
xz -v /tmp/zalacznik.tar
|
||||||
|
|
||||||
|
MAILFILE=`mktemp /tmp/mailfile.XXXXXX`
|
||||||
|
BOUNDARY=`head -c 24 /dev/urandom |base64`
|
||||||
|
NOW=`date "+%Y-%m-%d %H:%M:%S"`
|
||||||
|
|
||||||
|
ATTACHEMENT=/tmp/attachement_`date +'%Y:%m:5d_%H%M%S'`.tar.xz
|
||||||
|
cat /tmp/zalacznik.tar.xz >$ATTACHEMENT
|
||||||
|
|
||||||
|
cat >$MAILFILE <<EOF
|
||||||
|
From: test@mkedziora.pl
|
||||||
|
To: admin@mkedziora.pl
|
||||||
|
Subject: Uruchomiono maszynę
|
||||||
|
Date: $NOW
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: multipart/mixed; boundary=$BOUNDARY
|
||||||
|
|
||||||
|
--$BOUNDARY
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: utf8
|
||||||
|
Content-Disposition: inline
|
||||||
|
|
||||||
|
Dzień dobry!
|
||||||
|
|
||||||
|
Uruchomiono maszynę o tokenie: $(sed 's/.*token=//;s/ .*//' /proc/cmdline)
|
||||||
|
w załączniku ip i konfiguracja kernela.
|
||||||
|
|
||||||
|
--$BOUNDARY
|
||||||
|
Content-Type: application/x-xz; name="report.tar.xz"
|
||||||
|
Content-Transfer-Encoding: base64
|
||||||
|
Content-Disposition: attachment; filename="report.tar.xz"
|
||||||
|
|
||||||
|
EOF
|
||||||
|
cat $ATTACHEMENT|base64 >>$MAILFILE
|
||||||
|
cat >>$MAILFILE <<EOF
|
||||||
|
--$BOUNDARY--
|
||||||
|
EOF
|
||||||
|
|
||||||
|
cat $MAILFILE |msmtp -C /etc/msmtprc -a notification admin@mkedziora.pl
|
||||||
|
|
||||||
|
rm -f $ATTACHEMENT $MAILFILE
|
5
configs/sshd_config
Normal file
5
configs/sshd_config
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Port 22
|
||||||
|
PermitRootLogin yes
|
||||||
|
PubkeyAuthentication yes
|
||||||
|
AuthorizedKeysFile .ssh/authorized_keys
|
||||||
|
PermitEmptyPasswords yes
|
@ -8,7 +8,6 @@ servers_config uVPN.ini
|
|||||||
private_key chuj
|
private_key chuj
|
||||||
log_level 1
|
log_level 1
|
||||||
log_file /dev/stderr
|
log_file /dev/stderr
|
||||||
pid_file uVPN.pid
|
|
||||||
dict_algorithm avl16
|
dict_algorithm avl16
|
||||||
perf_counter_dump_file /dev/stdout
|
perf_counter_dump_file /dev/stdout
|
||||||
perf_counter_dump_interval 0
|
perf_counter_dump_interval 0
|
||||||
|
BIN
praktyki.squashfs
Normal file
BIN
praktyki.squashfs
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user