C
C64
Guest
... wenn es auch kompliziert geht?
Ich hatte einige Minuten Langeweile, und dachte, ich schreibe ein aufgebauschtes Loginscript für den SSH-Dienst, der mit einem Portknocker gesichert ist. Ziel war, es einfach konfigurierbar zu halten
Das Ergebniss:
Verwendung auf eigene Gefahr, bla bla usw.
Ich hatte einige Minuten Langeweile, und dachte, ich schreibe ein aufgebauschtes Loginscript für den SSH-Dienst, der mit einem Portknocker gesichert ist. Ziel war, es einfach konfigurierbar zu halten
Das Ergebniss:
Code:
#!/bin/bash
##############################
## config
host=sub.domain.tld # your (sub)domain or IP adress
sequ=("0000" "0000" "0000" "0000" "0000" "0000") # your knockd sequences, length variable (only "0000" "0000" etc.)
hostname=Hostname # your hostname (to differentiate)
port=12345 # your SSH-Port
##############################
## retrieve username
function retruser()
{
echo -e "\033[1;4;36mYour Username for $hostname?\033[0m"
read user
if [ $user == "root" ] # only effective if root-access prohibited SERVERSIDE!
then
echo -e "\033[1;5;41mROOT-ACCESS DENIED!\033[0m"
sleep 5
exit
fi
echo
echo -e "\033[1;33mConnecting to $hostname with user $user\033[0m"
}
##############################
## exist host?
function host_alive()
{
ping -c 1 -q $host
if [ $? == 0 ]
then
echo -e "\033[1;32m$hostname is online\033[0m"
else
echo -e "\033[1;31m$hostname is offline\033[0m"
exit
fi
sleep 3
}
##############################
## port opening
function knocking()
{
echo -e "\033[1;33mOpening port $port for Secure-Shell-Connection ...\033[0m"
for ((i0;i<${#sequ[*]}; i++));
do
sequnum=$(expr $i + 1)
echo -e "\033[33mSending unlock-sequence $sequnum / ${#sequ[*]}\033[0m"
knock $host ${sequ[$i]}
sleep 1
done
}
##############################
## logon
function logon()
{
echo -e "\033[1;33mConnect the SSH-Services\033[0m"
ssh $host -p $port -l $user
sleep 3
}
##############################
## mainprocedure
clear
echo -e "\033[1;36m================================"
echo "LachCraft.de's Host-Login-Script"
echo -e "================================\033[0m"
echo
echo
retruser
echo
host_alive
echo
knocking
echo
logon
echo -e "\033[1;36m================================"
echo "Script exit, have a nice day!"
echo -e "================================\033[0m"
echo
echo
Verwendung auf eigene Gefahr, bla bla usw.
Zuletzt bearbeitet von einem Moderator: