This commit is contained in:
2024-10-13 23:27:09 +02:00
commit 30627b25b3
48 changed files with 1919 additions and 0 deletions

826
1 Minitools/bashrc Normal file
View File

@@ -0,0 +1,826 @@
#VERSION 58
#DATUM 05.02.2019
# source <(curl https://andre:mesh-assort2@config.andregeissler.de/bashrc1)
# curl https://andre:mesh-assort2@config.andregeissler.de/bashrc1 > ~/.bashrc
# apt-get install iproute2 dnsutils curl
# source <(curl https://andre:mesh-assort2@config.andregeissler.de/bashrc1)
alias ll='ls -haltr'
alias ppm="sudo perl -MCPAN -e 'shell'"
alias upall='apt-get update -y ; apt-get upgrade -y --allow-unauthenticated ; apt-get autoremove -y'
alias nst='netstat -an | grep -i listen'
alias iptables_s='iptables -nvL'
alias sud='sudo -E -H bash'
alias snmp3A='snmpwalk -v3 -a SHA -A K01v1kk0! -u fote98 -l authnopriv $1 $2'
alias snmp3AP='snmpwalk -v3 -a SHA -A K01v1kk0! -x AES -X K01v1kk0 -u fote98 -l authpriv $1 $2'
alias snmp3a='snmpwalk -v3 -a SHA -A AuthPass01 -u SNMPUser -l authnopriv $1 $2'
alias snmp3ap='snmpwalk -v3 -a SHA -A AuthPass01 -x AES -X PrivPass01 -u SNMPUser -l authpriv $1 $2'
alias grepv='grep -v grep | grep'
alias update_bashrc='curl -s -H "Cache-Control: no-cache" https://andre:mesh-assort2@config.andregeissler.de/bashrc1 > ~/.bashrc'
alias assh='ssh -X -l andre $1'
alias cssh='ssh -X -l conetadm $1'
alias rssh='ssh -X -l rancid $1'
alias r11='rssh 10.101.0.11'
alias ovn='sudo openvpn --script-security 2 --config /home/andre/Nextcloud/client.ovpn'
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
export SSHK="ssh-dss AAAAB3NzaC1kc3MAAACBAMNkMHw/xuJcU3Vhg7qHynpwMFo4Lx6D/0OA1dkhLiENtW4GZTjKT2Vt+kmt9t2tpNUrZnFVPbVbTKDDkFCrc9tXM74SkE9xBxssZ4fUyQVmWMzIkMcgw6cqgNODwJOmtFdxg7KNCi5Xi2YGol8yexxzcKNd4uv3KxeyjdOsc2wZAAAAFQDiWmZgli+aNmpYDWn43KRNyK4qSQAAAIEAiBz9Jj2TfRqAQRTEUahUkSRVU9gms1g9MWmGArIH51fi71raZc7iApybSSEgV93VySaRZ+jq7W4j23JNF9WHDQn1oqPAqw+3pNtgdeQb7i4Ic7oEJ6gYxrXuvhweiJKceC9o84yv41bLSw5QELIQ9tr/JKaa7/lHDVYgWiPhWeEAAACBAK0b5iNzqitsSs3+H/QkOPYrdSNPb68wbImxD+Zber7nHYMjxpwxCAORarxNL6Gfaxz0Ghs/T0IhO9cQ9inY8QWe9kS3ZVxfuZrTvR0ZVnstePo1AsQ6cPCJ9BUVsIGfOF8PNwXf16EUDaulTjBm1DHiLuNdcVU81MfZg914/z67 andre@debian"
export SSHKE="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVlToAoVM6DH3UU/duHc31IknfvFoOsV7DPEh+xnP2XY70l70I+RNiXEWYJ6wgBmlml2txhNG9BPLmZLN/8sfR0W7nM+1nc+Qx0FQcj/3mEWQhhAXcRwbBucCGlbIr4viBnSVYPN6JI4yS5VG4xQXGjD2ZyA9/v8ubx+Cv7lQyG66XcE8nUzENyUP4ntcvdou9O7mRStAzihJo/I7P+PnvMokz2kiP+pehll7zO/b5gliEzhQq/Bsavj5FlQwMhOmZXxR9rafJ08R1SAAE2U2Gus6nmD+iR0rqv8/ugHCKkMCX+DFxJP6iTRbuStl8WZf8utxym83YnM3wqGeeUdMP andre@debian"
export GPGKEY=13FAA6FC
export EDITOR=vi
# export PERL_MB_OPT="--install_base \"/home/andre/perl5\""
# export PERL_MM_OPT="INSTALL_BASE=/home/andre/perl5"
export PERL_MM_USE_DEFAULT=1
export PATH=$PATH:.:~:/install/:/opt/Oracle_Java/jre1.7.0_79/bin:/home/andre/scripts/:
export SSH_PERS_ENV_FILES=".bashrc"
export PROMPT_DIRTRIM=2
color_prompt=yes
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w \n\[\033[01;33m\]\t \[\033[01;34m\]\$\[\033[00m\] '
export HISTCONTROL="ignorespace"
export HISTFILESIZE=
export HISTSIZE=
export HISTTIMEFORMAT="%F %T "
shopt -s histappend
shopt -s cmdhist
shopt -s dotglob
shopt -s expand_aliases
arg_help() {
echo "Aliases
ll ppm sb upall nst iptables_s sud snmp3A snmp3AP snmp3a snmp3ap grepv update_bashrc
assh cssh rssh
Funktionen
arg_help sshcl(clogin) sshh(hop) sshl(local) sshll(list local) asdm asdmns svncom screen_h sudo_h iptables_h
init.d_h install_ssh_key delete_files_older update_ssh_personal_environment
ssh_personal_config install_ssh_personal_config logrotate cping eping mount_all rdp
setjava setjava6|7|8 sysinfo
"
}
C_BLACK="\e[38;5;0m"
C_RED="\e[38;5;1m"
C_GREEN="\e[38;5;2m"
C_YELLOW="\e[38;5;3m"
C_BLUE="\e[38;5;4m"
C_PURPLE="\e[38;5;5m"
C_CYAN="\e[38;5;6m"
C_LIGHTGRAY="\e[38;5;7m"
C_GRAY="\e[38;5;8m"
C_PEACH="\e[38;5;9m"
C_LIGHTGREEN="\e[38;5;10m"
C_LIGHTYELLOW="\e[38;5;11m"
C_LIGHTBLUE="\e[38;5;12m"
C_PINK="\e[38;5;13m"
C_LIGHTCYAN="\e[38;5;14m"
C_WHITE="\e[38;5;15m"
C_NO="\e[0;00m"
BG_BLACK="\e[48;5;0m"
BG_RED="\e[48;5;1m"
BG_GREEN="\e[48;5;2m"
BG_YELLOW="\e[48;5;3m"
BG_BLUE="\e[48;5;4m"
BG_PURPLE="\e[48;5;5m"
BG_CYAN="\e[48;5;6m"
BG_LIGHTGRAY="\e[48;5;7m"
BG_GRAY="\e[48;5;8m"
BG_PEACH="\e[48;5;9m"
BG_LIGHTGREEN="\e[48;5;10m"
BG_LIGHTYELLOW="\e[48;5;11m"
BG_LIGHTBLUE="\e[48;5;12m"
BG_PINK="\e[48;5;13m"
BG_LIGHTCYAN="\e[48;5;14m"
BG_WHITE="\e[48;5;15m"
BG_NO="\e[0;00m"
sysinfo() {
if [ "$USER" != "root" ]; then
echo -e $C_RED$BG_WHITE"Not root"$C_NO
return
fi
export LANG=us_US
echo -e $C_LIGHTGREEN"Release"$C_NO
echo -en $C_CYAN" Distributor "$C_NO; lsb_release -ad 2>&1 | grep -v modules | grep "Distributor" | awk -F: '{print $2}' | sed 's/[^A-Za-z0-9]//i' 2>&1
echo -en $C_CYAN" Description "$C_NO; lsb_release -ad 2>&1 | grep -v modules | grep "Description" | awk -F: '{print $2}' | sed 's/[^A-Za-z0-9]//i' 2>&1
echo -en $C_CYAN" Release "$C_NO; lsb_release -ad 2>&1 | grep -v modules | grep "Release" | awk -F: '{print $2}' | sed 's/[^A-Za-z0-9]//i' 2>&1
echo -en $C_CYAN" Codename "$C_NO; lsb_release -ad 2>&1 | grep -v modules | grep "Codename" | awk -F: '{print $2}' | sed 's/[^A-Za-z0-9]//i' 2>&1
echo ""
echo -e $C_LIGHTGREEN"CPU Info"$C_NO
echo -en $C_CYAN" Architecture "$C_NO; lscpu | grep "Architecture:" | awk -F: '{print $2}' | sed 's/[^A-Za-z0-9]//i'
echo -en $C_CYAN" CPUs "$C_NO; lscpu | grep -v NUMA | grep "CPU(s):" | awk -F: '{print $2}' | sed 's/[0-9]*$//i'
echo -en $C_CYAN" Threads "$C_NO; lscpu | grep "Thread(s)" | awk -F: '{print $2}' | sed 's/[0-9]$//i'
echo -en $C_CYAN" Cores "$C_NO; lscpu | grep "Core(s)" | awk -F: '{print $2}' | sed 's/[0-9]$//i'
echo -en $C_CYAN" Model "$C_NO; lscpu | grep "Model name:" | awk -F: '{print $2}' | sed 's/[^A-Za-z0-9]//i'
MIN=$(lscpu | grep "CPU min")
MAX=$(lscpu | grep "CPU max")
MHZ=$(lscpu | grep "CPU MHz")
echo -en $C_CYAN" CPU Speed (min/max/now) "$C_NO; echo "$MIN/$MAX/$MHZ"
echo -en $C_CYAN" Bogo "$C_NO; lscpu | grep "Bogo" | awk -F: '{print $2}' | sed 's/[^A-Za-z0-9]//i'
echo ""
echo -e $C_LIGHTGREEN"System Info"$C_NO
dmidecode | grep Base -A 10 | grep Manufact
dmidecode | grep Base -A 10 | grep Product
dmidecode | grep Base -A 10 | grep Version
dmidecode | grep Base -A 10 | grep Serial
echo ""
echo -e $C_LIGHTGREEN"Memory Info"$C_NO
echo -n "total "; free -m | grep Mem | awk '{ print $2 }'
echo -n "used "; free -m | grep Mem | awk '{ print $3 }'
echo -n "free "; free -m | grep Mem | awk '{ print $4 }'
echo -n "shared "; free -m | grep Mem | awk '{ print $5 }'
echo -n "buff/cache "; free -m | grep Mem | awk '{ print $6 }'
echo -n "avail "; free -m | grep Mem | awk '{ print $7 }'
echo ""
echo -e $C_LIGHTGREEN"Swap Info"$C_NO
echo -n "total "; free -m | grep Swap | awk '{ print $2 }'
echo -n "used "; free -m | grep Swap | awk '{ print $3 }'
echo -n "free "; free -m | grep Swap | awk '{ print $4 }'
}
rdp() {
OUTPUT=$(zenity --forms --title="Remote Desktop" --text="Connection Settings" \
--add-entry="Server" \
--add-entry="User" \
--add-password="Password" \
--add-entry="Domain")
ip=$(awk -F'|' '{print $1}' <<<$OUTPUT)
us=$(awk -F'|' '{print $2}' <<<$OUTPUT)
pa=$(awk -F'|' '{print $3}' <<<$OUTPUT)
do=$(awk -F'|' '{print $4}' <<<$OUTPUT)
if [ "$ip" == "" ] || [ "$us" == "" ] || [ "$pa" == "" ] || [ "$do" == "" ]
then
echo Angaben unvollständig!
else
rdesktop -D -a24 -g 1680x950 -u $us -d $do -p $pa $ip &
fi
ip=
us=
pa=
do=
OUTPUT=
}
setjava6() {
setjava 6
}
setjava7() {
setjava 7
}
setjava8() {
setjava 8
}
setjava() {
export J=$1
export P=`update-alternatives --list java | grep oracle | grep java-$J`
sudo update-alternatives --set java $P
export P=`update-alternatives --list javaws | grep oracle | grep java-$J`
sudo update-alternatives --set javaws $P
}
pptail() {
# PortProblemTail
tail -f $1 | grep -E "LINK-3-UPDOWN|PORT-5-IF_DOWN_LINK_FAILURE|LINEPROTO-5-UPDOWN|PORT-5-IF_UP|CANNOT_BUNDLE|SNMP-4-HIGHCPU|Excessive Broadcast|Excessive CRC|Duplex Mismatch|Excessive late|Excessive link state|High collision|Excessive undersized|Excessive jabbering"
}
sshcl() {
# ssh clogin
ENV=$1
HOSTNAME=$2
COMMAND=$3
if [ "$1" == "ksa" ]; then
IP=10.140.8.100
PAT="/var/lib/rancid/bin"
fi
if [ "$1" == "flw" ]; then
IP=10.140.8.100
PAT="/var/lib/rancid/bin"
fi
if [ "$1" == "con" ]; then
IP=10.101.0.11
PAT="/home/rancid/bin"
fi
if [ "$3" != "" ]; then
ssh -l rancid $IP "$PAT/clogin -c \"$3\" $2"
else
ssh -l rancid $IP "$PAT/clogin $2"
fi
}
sshh() {
# ssh hops
HOPS=""
HOPS=$@
append=""
comd=""
for h in $HOPS
do
append="ssh -A -X -t $h "
comd=$comd$append
append=""
done
echo $comd
$comd
}
sshl() {
# ssh local
if [ "$1" == "home" ]; then
echo ""
echo "ssh 127.0.0.1:822 -> ssh://debian1:22/"
echo "observium 127.0.0.1:880 -> http://debian1:80/"
echo "ssh 127.0.0.1:1322 -> ssh://omv3:22/"
echo "omv3 127.0.0.1:1380 -> http://omv3:80/"
echo "pyLoad 127.0.0.1:1388 -> http://omv3:8888/"
echo "asa 127.0.0.1:2443 -> https://asa:443/"
echo "phpvboxweb 127.0.0.1:580 -> http://server:80/phpvirtualbox"
echo ""
sudo ssh -L 822:192.168.100.8:22 -L 880:192.168.100.8:80 -L 1322:192.168.100.13:22 -L 1380:192.168.100.13:80 -L 1388:192.168.100.13:8888 -L 2443:192.168.100.2:443 -L 580:192.168.100.5:80 andre@vpn-andregeissler.ddns.net -p 54321
elif [ "$5" == "" ]; then
echo sshl LOKALER_PORT REMOTE_HOST REMOTE_PORT PROXYUSER PROXYSERVER
echo "Beispiel:"
echo " sshl 2222 192.168.100.13 8888 andre vpn-andregeissler.ddns.net"
echo " ermöglicht connect auf localhost:2222 um vom user andre auf "
echo " vpn-andregeissler.ddns.net auf 192.168.100.13:8888"
echo " getunnelt zu werden"
elif [ "$6" == "" ]; then
echo kein Port angegeben
ssh -L $1:$2:$3 $4@$5
else
echo Port angegeben
ssh -L $1:$2:$3 S4@S% -p $6
fi
}
sshll() {
# listet die per ssh tunnel geöffneten lokalen ports auf
sudo lsof -i -n | grep ssh | grep 127.0.0.1 | grep LISTEN
}
asdm() {
echo "https://$1" >> /home/andre/.java/deployment/security/exception.sites
javaws "https://$1/admin/public/asdm.jnlp" &
}
asdmns() {
echo "Ermittele IP von Host $1 über DNS Server $2"
IP=`nslookup $1 $2 | tail -n2 | grep Address | cut -d':' -f2 | tr -d [:blank:]`
if [ "$IP" != "" ]; then
echo "IP ist $IP"
javaws "https://$IP/admin/public/asdm.jnlp" &
else
echo "IP ist unbekannt!"
fi
}
svncom() {
if [ "$1" == "" ]; then
echo "Keine Datei angegeben"
return
fi
COMMIT=`cat $1 | grep "#SVN:"`
if [ "$COMMIT" == "" ]; then
echo "Geben Sie einen Kommentar ein:"
read INPUT
if [ "$INPUT" == "" ]; then
COMMIT="add #SVN: somewhere to your file to use this line as commit message."
else
COMMIT="#SVN:$INPUT"
fi
fi
echo "Übertrage mit Kommentar '$COMMIT'"
svn commit -m "$COMMIT" $1
}
screen_h() {
echo "
Ctrl+a c(reate)
Ctrl+a n(ext)
Ctrl+a 0-9
Ctrl+a A (rename)
Ctrl+a d(etach)
Ctrl+a \" (liste)
Ctrl+a K(ill)
screen -r(eattach)
# Scrollen, Markieren, Einfügen
Ctrl+a [ wechselt in den Copy Mode
Mit den Pfeil-, Maustasten scrollen
Mit Enter Anfang der Markierung setzen, mit zweitem Enter das Ende setzen
Ctrl+a ] fügt markierten Bereich ein
"
}
sudo_h() {
echo "
/etc/sudoers
andre ALL=(ALL) NOPASSWD: ALL
"
}
iptables_h() {
echo "
# Policy für Chain setzen
iptables -P INPUT ACCEPT
iptables -P INPUT DROP
#Neue Chain anlegen
iptables -N NEW_CHAIN
# NEW_CHAIN an INPUT anhängen (-A) / am Anfang von INPUT einfügen (-I)
iptables -A/-I INPUT -j NEW_CHAIN
# Regeln an neue Chain anhängen (-A) / am Anfang einfügen (-I) oder löschen (-D)
iptables -A/-I/-D NEW_CHAIN -p tcp --dport 22 -j ACCEPT
iptables -A/-I/-D NEW_CHAIN -p udp --dport 53 -j ACCEPT
iptables -A/-I/-D NEW_CHAIN -s 10.0.0.0/8 -j DROP
iptables -A/-I/-D NEW_CHAIN -d 127.0.0.0/8 -j ACCEPT
iptables -A/-I/-D NEW_CHAIN -m state --state ESTABLISHED,RELATED -j ACCEPT
# Rücksprung aus Chain (nicht zwingend notwendig)
iptables -A NEW_CHAIN -j RETURN
#Chain aus Chain entfernen
iptables -D INPUT -j NEW_CHAIN
#Chain leeren (-F) / löschen (-X)
iptables -F NEW_CHAIN
"
}
init.d_h() {
echo "
#!/bin/bash
### BEGIN INIT INFO
# Provides:
# Required-Start: $local_fs $remote_fs $network
# Required-Stop: $local_fs $remote_fs $network
# Should-Start:
# Should-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description:
### END INIT INFO
ACTION=$1
PIDDIR=\"/var/run\"
PIDFILE=\"provides\"
VAR=\"\"
function funktion {
if [ \"$1\" == \"START\" ]; then
fi
if [ \"$1\" == \"STOP\" ]; then
fi
}
case $ACTION in
start)
funktion START
;;
stop)
funktion STOP
;;
reload)
funktion STOP
funktion START
;;
status)
if [ -f $PIDDIR/$PIDFILE.pid ]; then
echo \"aktiv\"
exit
fi
echo \"nicht aktiv\"
;;
esac
"
}
install_ssh_key() {
echo $SSHK > /tmp/KEYFILE
echo $SSHKE >> /tmp/KEYFILE
scp /tmp/KEYFILE root@$1:/home/$USER/.ssh/authorized_keys
rm /tmp/KEYFILE
}
delete_files_older() {
if [ "$4" == "" ]; then
echo ""
echo "$0 <Pfad> <Tage> <d|f> <r|n>"
echo ""
echo "Pfad gibt an aus welchem Verzeichnis gelöscht werden soll"
echo "Tage gibt an ab welchem Alter Verzeichnisse und Dateien gelöscht werden"
echo "d Verzeichnisse löschen, f Dateien löschen"
echo "r rekursiv löschen, n nicht rekursiv löschen. Bei Dateilöschungen ist egal was hier angegeben wird"
echo ""
else
echo "Wechsle in Verzeichnis $1"
cd $1
for I in `find $1 -mtime +$2`
do
if [ $3 == "f" ]; then
if [ -f $I ]; then
echo "Lösche Datei $I"
rm $I
fi
elif [ $3 == "d" ]; then
if [ $4 == "r" ]; then
if [ -d $I ]; then
echo "Lösche Verzeichnis $I rekursiv"
rm -fR $I
fi
elif [ $4 == "n" ]; then
if [ -d $I ]; then
echo "Lösche Verzeichnis $I (nicht rekursiv)"
rmdir $I
fi
fi
fi
done
fi
}
delete_old_logs() {
find /var/log -name "*.gz" -o -name "*.1" -o -name "*.2" -o -name "*.old" | xargs rm
find /var/log -mtime +7 | xargs rm
}
update_ssh_personal_environment() {
if [ $# -gt 0 -a "$1" = "--debug" ] ; then
export SSH_PERS_ENV_DEBUG=1
shift
fi
if test -n "$SSH_PERS_ENV_FILES" -o "$#" -gt 0 ; then
export SSH_PERS_ENV_FILES=$(
eval echo $@ $SSH_PERS_ENV_FILES | \
tr " " "\n" | \
sort -u | \
tr "\n" " "
) # pattern expansion
test "${SSH_PERS_ENV_DEBUG:-}" && \
echo "Packing as SSH Personal Environment: $SSH_PERS_ENV_FILES" 1>&2
export SSH_PERS_ENV_DATA=$(tar -C ~ -cz $SSH_PERS_ENV_FILES | base64)
fi
}
ssh_personal_config() {
echo "append to /etc/ssh/ssh_config"
echo "# this content comes from the ssh-personal-environment package"
echo "SendEnv SSH_PERS_ENV_DATA SSH_PERS_ENV_FILES SSH_PERS_ENV_DEBUG"
echo "# end of content from the ssh-personal-environment package"
echo ""
echo "append to /etc/ssh/sshd_config"
echo "# this content comes from the ssh-personal-environment package"
echo "AcceptEnv SSH_PERS_ENV_DATA SSH_PERS_ENV_FILES SSH_PERS_ENV_DEBUG"
echo "# end of content from the ssh-personal-environment package"
echo ""
echo "insert into /etc/ssh/sshrc"
echo "#!/bin/sh"
echo "if which xauth >/dev/null 2>&1 && read proto cookie && test \"\$DISPLAY\" ; then"
echo " if test \"\$(expr substr \"\$DISPLAY\" 1 10)\" = localhost: ; then"
echo " # X11UseLocalhost=yes"
echo " echo add unix:\"\$(expr substr \"\$DISPLAY\" 11 99)\" \$proto \$cookie"
echo " else"
echo " # X11UseLocalhost=no"
echo " echo add \"\$DISPLAY\" \$proto \$cookie"
echo " fi | xauth -q -"
echo "fi"
echo "# unpack personal environment"
echo "if test \"\$SSH_PERS_ENV_DATA\" ; then"
echo " if [ ! \"\$USER\" = \"root\" ] ; then"
echo " test \"\$SSH_PERS_ENV_DEBUG\" && echo \"Unpacking SSH Personal Environment Data...\""
echo " echo \"\$SSH_PERS_ENV_DATA\" | base64 -d | tar \${SSH_PERS_ENV_DEBUG:+-v} -xzC ~"
echo " fi"
echo "fi"
echo ""
}
install_ssh_personal_config() {
#echo "append to /etc/ssh/ssh_config"
echo "# this content comes from the ssh-personal-environment package" >> /etc/ssh/ssh_config
echo "SendEnv SSH_PERS_ENV_DATA SSH_PERS_ENV_FILES SSH_PERS_ENV_DEBUG" >> /etc/ssh/ssh_config
echo "# end of content from the ssh-personal-environment package" >> /etc/ssh/ssh_config
#echo "append to /etc/ssh/sshd_config"
echo "# this content comes from the ssh-personal-environment package" >> /etc/ssh/sshd_config
echo "AcceptEnv SSH_PERS_ENV_DATA SSH_PERS_ENV_FILES SSH_PERS_ENV_DEBUG" >> /etc/ssh/sshd_config
echo "# end of content from the ssh-personal-environment package" >> /etc/ssh/sshd_config
#echo "insert into /etc/ssh/sshrc"
echo "#!/bin/sh" > /etc/ssh/sshrc
echo "if which xauth >/dev/null 2>&1 && read proto cookie && test \"\$DISPLAY\" ; then" >> /etc/ssh/sshrc
echo " if test \"\$(expr substr \"\$DISPLAY\" 1 10)\" = localhost: ; then" >> /etc/ssh/sshrc
echo " # X11UseLocalhost=yes" >> /etc/ssh/sshrc
echo " echo add unix:\"\$(expr substr \"\$DISPLAY\" 11 99)\" \$proto \$cookie" >> /etc/ssh/sshrc
echo " else" >> /etc/ssh/sshrc
echo " # X11UseLocalhost=no" >> /etc/ssh/sshrc
echo " echo add \"\$DISPLAY\" \$proto \$cookie" >> /etc/ssh/sshrc
echo " fi | xauth -q -" >> /etc/ssh/sshrc
echo "fi" >> /etc/ssh/sshrc
echo "# unpack personal environment" >> /etc/ssh/sshrc
echo "if test \"\$SSH_PERS_ENV_DATA\" ; then" >> /etc/ssh/sshrc
echo " if [ ! \"\$USER\" = \"root\" ] ; then" >> /etc/ssh/sshrc
echo " test \"\$SSH_PERS_ENV_DEBUG\" && echo \"Unpacking SSH Personal Environment Data...\"" >> /etc/ssh/sshrc
echo " echo \"\$SSH_PERS_ENV_DATA\" | base64 -d | tar \${SSH_PERS_ENV_DEBUG:+-v} -xzC ~" >> /etc/ssh/sshrc
echo " fi" >> /etc/ssh/sshrc
echo "fi" >> /etc/ssh/sshrc
chmod +x /etc/ssh/sshrc
/etc/init.d/ssh restart
}
logrotate() {
if [ "$1" == "" ]
then
echo ""
echo "Aufruf:"
echo ""
echo "logrotate <DIR>"
echo ""
return
fi
logdir=$1
oldlogdir=$logdir/rotate
echo $oldlogdir
mkdir $oldlogdir
date=`date +"%Y-%m-%d_%H-%M"`
# alte logfiles packen
pushd .
cd $logdir
tar -cvzf $date.tar.gz *.log
# archiv verschieben
mv $date.tar.gz $oldlogdir
# alte logs löschen
rm *.log
popd
}
cping() {
if [ "$1" == "" ]
then
echo ""
echo "Aufruf:"
echo ""
echo "[RET=x] cping <IP>"
echo ""
echo "x: Anzahl Wiederholungen, E für endlos"
echo ""
return
fi
if [ "$RET" == "" ]
then
RET=1
elif [ "$RET" == "E" ]
then
RET=2
END=1
fi
echo ""
for ((i=0; i < $RET; i++))
do
ping -c1 -W1 $1 >/dev/null
RV=$?
if [ $RV -eq 0 ]
then
echo -e "\e[42;30m$1 is up\e[0m"
else
echo -e "\e[41m$1 is down\e[m"
fi
sleep 1;
if [ "$END" == "1" ]
then
i=$i-1
fi
done
echo ""
}
eping() {
if [ "$1" == "" ]
then
echo ""
echo "Aufruf:"
echo ""
echo "[RET=x] eping <IP1> [IP2 [IP3 [IP4 [IP5 [IP6]]]]]"
echo ""
echo "x: Anzahl Wiederholungen, E für endlos"
echo "pingt bis zu 6 Adressen an und zeigt das Ergebnis in einer Tabelle"
echo ""
return
fi
if [ "$RET" == "" ]
then
RET=1
elif [ "$RET" == "E" ]
then
RET=2
END=1
fi
CT=0
for ((i=0; i < $RET; i++))
do
N=$(($CT % 5))
if [ "$(($CT % 20))" == "0" ]
then
echo ""
date
if [ "$1" != "" ]
then
echo -e "$1\t\c"
fi
if [ "$2" != "" ]
then
echo -e "$2\t\c"
fi
if [ "$3" != "" ]
then
echo -e "$3\t\c"
fi
if [ "$4" != "" ]
then
echo -e "$4\t\c"
fi
if [ "$5" != "" ]
then
echo -e "$5\t\c"
fi
if [ "$6" != "" ]
then
echo -e "$6\t\c"
fi
echo ""
fi
CT=$(($CT+1))
if [ "$1" != "" ]
then
ping -c1 -W1 $1 >/dev/null
RV1=$?
fi
if [ "$2" != "" ]
then
ping -c1 -W1 $2 >/dev/null
RV2=$?
fi
if [ "$3" != "" ]
then
ping -c1 -W1 $3 >/dev/null
RV3=$?
fi
if [ "$4" != "" ]
then
ping -c1 -W1 $4 >/dev/null
RV4=$?
fi
if [ "$5" != "" ]
then
ping -c1 -W1 $5 >/dev/null
RV5=$?
fi
if [ "$6" != "" ]
then
ping -c1 -W1 $6 >/dev/null
RV6=$?
fi
if [ "$1" != "" ]
then
if [ $RV1 -eq 0 ]
then
echo -e "\e[42;30mup\e[0m\t\t\c"
else
echo -e "\e[41mdown\e[m\t\t\c"
fi
fi
if [ "$2" != "" ]
then
if [ $RV2 -eq 0 ]
then
echo -e "\e[42;30mup\e[0m\t\t\c"
else
echo -e "\e[41mdown\e[m\t\t\c"
fi
fi
if [ "$3" != "" ]
then
if [ $RV3 -eq 0 ]
then
echo -e "\e[42;30mup\e[0m\t\t\c"
else
echo -e "\e[41mdown\e[m\t\t\c"
fi
fi
if [ "$4" != "" ]
then
if [ $RV4 -eq 0 ]
then
echo -e "\e[42;30mup\e[0m\t\t\c"
else
echo -e "\e[41mdown\e[m\t\t\c"
fi
fi
if [ "$5" != "" ]
then
if [ $RV5 -eq 0 ]
then
echo -e "\e[42;30mup\e[0m\t\t\c"
else
echo -e "\e[41mdown\e[m\t\t\c"
fi
fi
if [ "$6" != "" ]
then
if [ $RV6 -eq 0 ]
then
echo -e "\e[42;30mup\e[0m\t\t\c"
else
echo -e "\e[41mdown\e[m\t\t\c"
fi
fi
sleep 1;
if [ "$END" == "1" ]
then
i=$i-1
fi
echo ""
done
echo ""
}
mount_all() {
mkdir -p ~/mnt-homes
mkdir -p ~/mnt-alle
sudo mount //192.168.100.13/homes ~/mnt-homes/ -o user=andre
sudo mount //192.168.100.13/alle ~/mnt-alle/ -o user=andre
#sudo umount /mnt/hidrive
#sudo mkdir -p /mnt/hidrive
#sudo chown $USER:$USER -R /mnt/
#ID=`id -u`
#sudo mount -t cifs //10.1.1.4/data/ /mnt/idefix/ -ouid=$ID,gid=$ID,username=ageissler,domain=conacc,password=K01v1kk0!
#sudo mount -t cifs //dlink/1TB /mnt/dlink/ -ouid=$ID,gid=$ID,username=root,password=K01v1kk0!
#sudo mount -t cifs //dlink/User /mnt/dlink2/ -ouid=$ID,gid=$ID,username=root,password=K01v1kk0!
}
mkdir -p ~/.ssh/
touch ~/.ssh/authorized_keys
if [[ -f ~/.ssh/authorized_keys ]] ; then
cat ~/.ssh/authorized_keys | grep "$SSHK" > /dev/null 2>&1
if [[ $? == "1" ]] ; then
echo "$SSHK" >> ~/.ssh/authorized_keys
fi
cat ~/.ssh/authorized_keys | grep "$SSHKE" > /dev/null 2>&1
if [[ $? == "1" ]] ; then
echo "$SSHKE" >> ~/.ssh/authorized_keys
fi
fi

View File

@@ -0,0 +1,26 @@
#!/bin/bash
dns=ns1.colordns.de
while true
do
DOM="agserver.de agadmin.de andregeissler.de julianegeissler.de geisslermail.de reinsberg-frankfurt.de"
RED='\033[0;31m'; NC='\033[0m'
echo ""; echo ""; echo "";
echo ""; echo ""; echo "";
echo ""; echo ""; echo "";
for I in $DOM
do
echo -n -e "$RED"
echo -e "DOMAIN $I $NC"
dig MX $I @$dns | grep -C3 ';; ANSWER' | grep -v ';' | egrep -v "^$"
dig NS $I @$dns | grep -C3 ';; ANSWER' | grep -v ';' | egrep -v "^$"
dig TXT $I @$dns | grep -C3 ';; ANSWER' | grep -v ';' | egrep -v "^$"
dig TXT mail._domainkey.$I @$dns | grep -C3 ';; ANSWER' | grep -v ';;' | grep -v ";mail" | egrep -v "^$" | egrep ".{50}"
dig TXT _adsp._domainkey.$I @$dns | grep -C3 ';; ANSWER' | grep -v ';;' | grep -v ";_ads" | egrep -v "^$"
echo ""
done
sleep 60
done

View File

@@ -0,0 +1,3 @@
#!/bin/bash
grep "\sro[\s,]" /proc/mounts | egrep -v "9660|tmpfs"

202
1 Minitools/install-ca.sh Normal file
View File

@@ -0,0 +1,202 @@
#!/bin/bash
#v3
echo "Installing Root Certificates for Thunderbird, Chrome, Firefox
Please wait for process to finish"
mkdir -p /tmp/install-ca/
function install-ca {
for certDB in $(find ~/ -name "cert8.db")
do
certdir=$(dirname ${certDB});
certutil -A -n "${certname}" -t "TCu,Cu,Tu" -i ${certfile} -d dbm:${certdir} > /dev/null 2>&1
echo -n .
sleep 1
done
echo -n .
for certDB in $(find ~/ -name "cert9.db")
do
certdir=$(dirname ${certDB});
certutil -A -n "${certname}" -t "TCu,Cu,Tu" -i ${certfile} -d sql:${certdir} > /dev/null 2>&1
echo -n .
sleep 1
done
}
echo "-----BEGIN CERTIFICATE-----
MIIJQjCCByqgAwIBAgIJAMCg84G3Gi5RMA0GCSqGSIb3DQEBDQUAMIHgMQswCQYD
VQQGEwJERTEPMA0GA1UECBMGSGVzc2VuMRIwEAYDVQQHEwlGcmFua2Z1cnQxLTAr
BgNVBAoTJENPTkVUIFNlcnZpY2VzIENlcnRpZmljYXRlIEF1dGhvcml0eTEtMCsG
A1UECxMkQ09ORVQgU2VydmljZXMgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MTAwLgYD
VQQDEydDT05FVCBTZXJ2aWNlcyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgRzIxHDAa
BgkqhkiG9w0BCQEWDWhlbHBAY29uZXQuZGUwHhcNMTYxMjA3MTYzNTIwWhcNMzYx
MjAyMTYzNTIwWjCB4DELMAkGA1UEBhMCREUxDzANBgNVBAgTBkhlc3NlbjESMBAG
A1UEBxMJRnJhbmtmdXJ0MS0wKwYDVQQKEyRDT05FVCBTZXJ2aWNlcyBDZXJ0aWZp
Y2F0ZSBBdXRob3JpdHkxLTArBgNVBAsTJENPTkVUIFNlcnZpY2VzIENlcnRpZmlj
YXRlIEF1dGhvcml0eTEwMC4GA1UEAxMnQ09ORVQgU2VydmljZXMgQ2VydGlmaWNh
dGUgQXV0aG9yaXR5IEcyMRwwGgYJKoZIhvcNAQkBFg1oZWxwQGNvbmV0LmRlMIIC
IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA3wBQJPGk5HV+OkLxFSlKNvvq
TJE0vPAPN44MGKRyEZY6r0TnT4HjWleFmHWckAjeanklevvWJs7J0amTl833LNIK
ekg/h4FVIaf/DoR8dPzzArNzUeyA4E7cz14H07j5tEAJwivGm4OH51i1z4DSQFvT
dR3HUXSycxQVZQUumTKowkCWURyZDByfnUPNuQSGm+ATVEE14JxTctL2J+KsFXiv
DQig+8gsIwggFAChyKsxOXzCPbbRxs/9aEilpFR5HPa10joVw9fMjAL652HBSfQM
mcpxDbL0SOf70ZQvBjcdjL3uI2t9gdITQ23PW1ePYSrk1cydfMsblGHDjqSm8vmP
R7wy3Mkeqej5xKKyAt2SbmsNIEnat7DXLJQVMrebC4GQVM5C5HUN+HeDhiQnWeDS
w2lWXYQCFyhay+6XNJYilIl5OUpcqM8PMa7dvAnDINYUXZ5QFCJYvDz/2wK4tQ18
ptzCjufhrE+IjrHJ5nDMWeRwKASzusH858z+Jij9dvmCm3dZuDk2Z9jtKGjsflw2
3tVqjFPK00cm/n69sg1F0N7eGO6YXc2HP4xYLevXC45VSBG/YbpbQTQvHHmN3rkn
iyGBBVbAjfIBvmz5/rU+/gAAeTNps/aM0DNW80l8/zDy++Rd4mI7ZvK/PHZuU2Vo
gSFiZiLOamKChJmvuCcCAwEAAaOCAvswggL3MB0GA1UdDgQWBBRUJtMWqWeKmx8s
JmYL2UAp7ELw+TCCARcGA1UdIwSCAQ4wggEKgBRUJtMWqWeKmx8sJmYL2UAp7ELw
+aGB5qSB4zCB4DELMAkGA1UEBhMCREUxDzANBgNVBAgTBkhlc3NlbjESMBAGA1UE
BxMJRnJhbmtmdXJ0MS0wKwYDVQQKEyRDT05FVCBTZXJ2aWNlcyBDZXJ0aWZpY2F0
ZSBBdXRob3JpdHkxLTArBgNVBAsTJENPTkVUIFNlcnZpY2VzIENlcnRpZmljYXRl
IEF1dGhvcml0eTEwMC4GA1UEAxMnQ09ORVQgU2VydmljZXMgQ2VydGlmaWNhdGUg
QXV0aG9yaXR5IEcyMRwwGgYJKoZIhvcNAQkBFg1oZWxwQGNvbmV0LmRlggkAwKDz
gbcaLlEwDwYDVR0TAQH/BAUwAwEB/zARBglghkgBhvhCAQEEBAMCAAcwCQYDVR0S
BAIwADA2BglghkgBhvhCAQ0EKRYnQ09ORVQgU2VydmljZXMgQ2VydGlmaWNhdGUg
QXV0aG9yaXR5IEcyMHcGCWCGSAGG+EIBBARqFmhVUkk6aHR0cDovL2NlcnQuY29u
ZXQtc2VydmljZXMuZGUvQ09ORVRfQ0EyLWNybC5wZW0sIFVSSTpodHRwOi8vY2Vy
dC5jb25ldC1zZXJ2aWNlcy5kZS9DT05FVF9DQTItY3JsLmRlcjA4BglghkgBhvhC
AQgEKxYpaHR0cDovL2NlcnQuY29uZXQtc2VydmljZXMuZGUvcG9saWN5Lmh0bWww
dwYJYIZIAYb4QgEDBGoWaFVSSTpodHRwOi8vY2VydC5jb25ldC1zZXJ2aWNlcy5k
ZS9DT05FVF9DQTItY3JsLnBlbSwgVVJJOmh0dHA6Ly9jZXJ0LmNvbmV0LXNlcnZp
Y2VzLmRlL0NPTkVUX0NBMi1jcmwuZGVyMBgGA1UdEQQRMA+BDWhlbHBAY29uZXQu
ZGUwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBDQUAA4ICAQDENwBQv/b42ZSf
pOS8rS2pFgY5vkrl7gPpLc1g95goqGi7evrlRt6cZheoVbYnUhafHpBNWV1QJ/Kl
qSFlru1SWkWwdrhmkgXh50BuDB2ULNvw13zC5iPtMfdg4xlcvIKSrMLj25Lj2gBQ
Cnk5UUYwyGVczgJhLplIiZUBRMLZy3ctsXmP8vjB/iOEcgH5SLOpZBQ3Gmp3sfD2
CsN7VoyLSNzpZM0wJiWCQA38bq4EBK8b+PbUa8SC/AdpLBbsiNPHiuRErduExOi/
nPdJg2nHZLcEbH4UpbG9WOC/hNFLn5fgH224y4EicRMDXaD0BQZReftHSLCuzL/M
23CVIlUPfWC7XaN0qMgd+AsRC2FYiUUBwKjCClCNahKvqvnn++/um4SXY0E1d5mD
933MBXhrSGnHLeliTfQpUg8U89DlR5Nusi4HLRnIEgNj8zTnhO32VRpPt4DhNXpm
Zi93B/92F12AmcEmyoGXKLNv/mgZQHoV1SteKgLI3CN49n+i+7tr2xzpTK635JJD
IBPWMIMoC/ukam4y92bGufSCouJQEJLrpr4lf01yrH9heooguoFKL3axCe5imXow
nHQ2vT+6kSj2cNmYhuOM2BDXBPMYS4aIIpV5bHn/mOZpZl8262HUbwDYzyqdweoL
3d0MrRmzuY8DU2S3B+6syfh1U2tLrw==
-----END CERTIFICATE-----
" > /tmp/install-ca/CONET_CA2.pem
echo "-----BEGIN CERTIFICATE-----
MIIJQjCCByqgAwIBAgIJAMCg84G3Gi5RMA0GCSqGSIb3DQEBDQUAMIHgMQswCQYD
VQQGEwJERTEPMA0GA1UECBMGSGVzc2VuMRIwEAYDVQQHEwlGcmFua2Z1cnQxLTAr
BgNVBAoTJENPTkVUIFNlcnZpY2VzIENlcnRpZmljYXRlIEF1dGhvcml0eTEtMCsG
A1UECxMkQ09ORVQgU2VydmljZXMgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MTAwLgYD
VQQDEydDT05FVCBTZXJ2aWNlcyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgRzIxHDAa
BgkqhkiG9w0BCQEWDWhlbHBAY29uZXQuZGUwHhcNMTYxMjA3MTYzNTIwWhcNMzYx
MjAyMTYzNTIwWjCB4DELMAkGA1UEBhMCREUxDzANBgNVBAgTBkhlc3NlbjESMBAG
A1UEBxMJRnJhbmtmdXJ0MS0wKwYDVQQKEyRDT05FVCBTZXJ2aWNlcyBDZXJ0aWZp
Y2F0ZSBBdXRob3JpdHkxLTArBgNVBAsTJENPTkVUIFNlcnZpY2VzIENlcnRpZmlj
YXRlIEF1dGhvcml0eTEwMC4GA1UEAxMnQ09ORVQgU2VydmljZXMgQ2VydGlmaWNh
dGUgQXV0aG9yaXR5IEcyMRwwGgYJKoZIhvcNAQkBFg1oZWxwQGNvbmV0LmRlMIIC
IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA3wBQJPGk5HV+OkLxFSlKNvvq
TJE0vPAPN44MGKRyEZY6r0TnT4HjWleFmHWckAjeanklevvWJs7J0amTl833LNIK
ekg/h4FVIaf/DoR8dPzzArNzUeyA4E7cz14H07j5tEAJwivGm4OH51i1z4DSQFvT
dR3HUXSycxQVZQUumTKowkCWURyZDByfnUPNuQSGm+ATVEE14JxTctL2J+KsFXiv
DQig+8gsIwggFAChyKsxOXzCPbbRxs/9aEilpFR5HPa10joVw9fMjAL652HBSfQM
mcpxDbL0SOf70ZQvBjcdjL3uI2t9gdITQ23PW1ePYSrk1cydfMsblGHDjqSm8vmP
R7wy3Mkeqej5xKKyAt2SbmsNIEnat7DXLJQVMrebC4GQVM5C5HUN+HeDhiQnWeDS
w2lWXYQCFyhay+6XNJYilIl5OUpcqM8PMa7dvAnDINYUXZ5QFCJYvDz/2wK4tQ18
ptzCjufhrE+IjrHJ5nDMWeRwKASzusH858z+Jij9dvmCm3dZuDk2Z9jtKGjsflw2
3tVqjFPK00cm/n69sg1F0N7eGO6YXc2HP4xYLevXC45VSBG/YbpbQTQvHHmN3rkn
iyGBBVbAjfIBvmz5/rU+/gAAeTNps/aM0DNW80l8/zDy++Rd4mI7ZvK/PHZuU2Vo
gSFiZiLOamKChJmvuCcCAwEAAaOCAvswggL3MB0GA1UdDgQWBBRUJtMWqWeKmx8s
JmYL2UAp7ELw+TCCARcGA1UdIwSCAQ4wggEKgBRUJtMWqWeKmx8sJmYL2UAp7ELw
+aGB5qSB4zCB4DELMAkGA1UEBhMCREUxDzANBgNVBAgTBkhlc3NlbjESMBAGA1UE
BxMJRnJhbmtmdXJ0MS0wKwYDVQQKEyRDT05FVCBTZXJ2aWNlcyBDZXJ0aWZpY2F0
ZSBBdXRob3JpdHkxLTArBgNVBAsTJENPTkVUIFNlcnZpY2VzIENlcnRpZmljYXRl
IEF1dGhvcml0eTEwMC4GA1UEAxMnQ09ORVQgU2VydmljZXMgQ2VydGlmaWNhdGUg
QXV0aG9yaXR5IEcyMRwwGgYJKoZIhvcNAQkBFg1oZWxwQGNvbmV0LmRlggkAwKDz
gbcaLlEwDwYDVR0TAQH/BAUwAwEB/zARBglghkgBhvhCAQEEBAMCAAcwCQYDVR0S
BAIwADA2BglghkgBhvhCAQ0EKRYnQ09ORVQgU2VydmljZXMgQ2VydGlmaWNhdGUg
QXV0aG9yaXR5IEcyMHcGCWCGSAGG+EIBBARqFmhVUkk6aHR0cDovL2NlcnQuY29u
ZXQtc2VydmljZXMuZGUvQ09ORVRfQ0EyLWNybC5wZW0sIFVSSTpodHRwOi8vY2Vy
dC5jb25ldC1zZXJ2aWNlcy5kZS9DT05FVF9DQTItY3JsLmRlcjA4BglghkgBhvhC
AQgEKxYpaHR0cDovL2NlcnQuY29uZXQtc2VydmljZXMuZGUvcG9saWN5Lmh0bWww
dwYJYIZIAYb4QgEDBGoWaFVSSTpodHRwOi8vY2VydC5jb25ldC1zZXJ2aWNlcy5k
ZS9DT05FVF9DQTItY3JsLnBlbSwgVVJJOmh0dHA6Ly9jZXJ0LmNvbmV0LXNlcnZp
Y2VzLmRlL0NPTkVUX0NBMi1jcmwuZGVyMBgGA1UdEQQRMA+BDWhlbHBAY29uZXQu
ZGUwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBDQUAA4ICAQDENwBQv/b42ZSf
pOS8rS2pFgY5vkrl7gPpLc1g95goqGi7evrlRt6cZheoVbYnUhafHpBNWV1QJ/Kl
qSFlru1SWkWwdrhmkgXh50BuDB2ULNvw13zC5iPtMfdg4xlcvIKSrMLj25Lj2gBQ
Cnk5UUYwyGVczgJhLplIiZUBRMLZy3ctsXmP8vjB/iOEcgH5SLOpZBQ3Gmp3sfD2
CsN7VoyLSNzpZM0wJiWCQA38bq4EBK8b+PbUa8SC/AdpLBbsiNPHiuRErduExOi/
nPdJg2nHZLcEbH4UpbG9WOC/hNFLn5fgH224y4EicRMDXaD0BQZReftHSLCuzL/M
23CVIlUPfWC7XaN0qMgd+AsRC2FYiUUBwKjCClCNahKvqvnn++/um4SXY0E1d5mD
933MBXhrSGnHLeliTfQpUg8U89DlR5Nusi4HLRnIEgNj8zTnhO32VRpPt4DhNXpm
Zi93B/92F12AmcEmyoGXKLNv/mgZQHoV1SteKgLI3CN49n+i+7tr2xzpTK635JJD
IBPWMIMoC/ukam4y92bGufSCouJQEJLrpr4lf01yrH9heooguoFKL3axCe5imXow
nHQ2vT+6kSj2cNmYhuOM2BDXBPMYS4aIIpV5bHn/mOZpZl8262HUbwDYzyqdweoL
3d0MrRmzuY8DU2S3B+6syfh1U2tLrw==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIJnjCCB4agAwIBAgIBAjANBgkqhkiG9w0BAQ0FADCB4DELMAkGA1UEBhMCREUx
DzANBgNVBAgTBkhlc3NlbjESMBAGA1UEBxMJRnJhbmtmdXJ0MS0wKwYDVQQKEyRD
T05FVCBTZXJ2aWNlcyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkxLTArBgNVBAsTJENP
TkVUIFNlcnZpY2VzIENlcnRpZmljYXRlIEF1dGhvcml0eTEwMC4GA1UEAxMnQ09O
RVQgU2VydmljZXMgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IEcyMRwwGgYJKoZIhvcN
AQkBFg1oZWxwQGNvbmV0LmRlMB4XDTE2MTIwNzE2NDYzMVoXDTM2MTIwMTE2NDYz
MVowgbwxCzAJBgNVBAYTAkRFMQ8wDQYDVQQIEwZIZXNzZW4xEjAQBgNVBAcTCUZy
YW5rZnVydDEhMB8GA1UEChMYQ09ORVQgU2VydmljZXMgRnJhbmtmdXJ0MSEwHwYD
VQQLExhDT05FVCBTZXJ2aWNlcyBGcmFua2Z1cnQxJDAiBgNVBAMTG0NPTkVUIFNl
cnZpY2VzIEZyYW5rZnVydCBHMjEcMBoGCSqGSIb3DQEJARYNaGVscEBjb25ldC5k
ZTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALYhqt2l8TxqxOiyLxdw
vcyNDSlrW94uBVahrsPLdEIe9vsSHESQxvFgf7hMlEQyeI/EwftrTY7P5/GEhSdn
RzeZSwArCInVE/LGmkEP/1DVIPiRRFac2vAsL9X7QfzVTxti7mE/SOchJHkFOFAn
2ollO8o5slNVkbDiM9qlFymR7AUP9cOR6tGtYpc1Mvry1lTq2QR8CfCaMmL8GLqh
5LxN3pt0I8Dvk4HA0hA0ZU/xJNmCCAVmqPENG+wreRZOdsM7ayS698nwh23AxexO
LWY98LaFFaBksyBMN8pLin1+SDuZtCYo/LGloJ4QAQEJgsigBU4F5nu5Kwj7Ikyj
TWH6kNGpzdRi1z416ascHGLkVQRsBOuRQmwH/K7VtElNJ/wnzM1GzIbIVaeNw8t9
vvc0DnaBxL1egQHBl1XOoc0WIIToFhAB7eheskcTgjSt5DrLdF9hILw41rlIxblM
4L9ckOAaGGylhJ8PzJm5ruvAmhc15zxnuA5MsE/rE5zPUZwQ9nRRbX1HbiCUuMsK
IhO/nNBg6PI/RCVA7EsZjb29U+NH3MOZ+Xt1DUg2G8B3oU3hPzEfZ8pbUl/lglMF
plP3jR4XAYc7Rnc1+qkn1AiPmSM+j6hPsU5kPD9oRbO/9HsH9YZn6j2NVuBQ3sKN
24lLw88sTSsnIq/YjTD/jAIBAgMBAAGjggODMIIDfzAdBgNVHQ4EFgQUlIKuJdBN
Pt0H2LYViTFuEqU2jwIwggEXBgNVHSMEggEOMIIBCoAUVCbTFqlnipsfLCZmC9lA
KexC8PmhgeakgeMwgeAxCzAJBgNVBAYTAkRFMQ8wDQYDVQQIEwZIZXNzZW4xEjAQ
BgNVBAcTCUZyYW5rZnVydDEtMCsGA1UEChMkQ09ORVQgU2VydmljZXMgQ2VydGlm
aWNhdGUgQXV0aG9yaXR5MS0wKwYDVQQLEyRDT05FVCBTZXJ2aWNlcyBDZXJ0aWZp
Y2F0ZSBBdXRob3JpdHkxMDAuBgNVBAMTJ0NPTkVUIFNlcnZpY2VzIENlcnRpZmlj
YXRlIEF1dGhvcml0eSBHMjEcMBoGCSqGSIb3DQEJARYNaGVscEBjb25ldC5kZYIJ
AMCg84G3Gi5RMA8GA1UdEwEB/wQFMAMBAf8wEQYJYIZIAYb4QgEBBAQDAgAHMBgG
A1UdEgQRMA+BDWhlbHBAY29uZXQuZGUwNgYJYIZIAYb4QgENBCkWJ0NPTkVUIFNl
cnZpY2VzIENlcnRpZmljYXRlIEF1dGhvcml0eSBHMjB3BgNVHR8EcDBuMDWgM6Ax
hi9odHRwOi8vY2VydC5jb25ldC1zZXJ2aWNlcy5kZS9DT05FVF9DQTItY3JsLnBl
bTA1oDOgMYYvaHR0cDovL2NlcnQuY29uZXQtc2VydmljZXMuZGUvQ09ORVRfQ0Ey
LWNybC5kZXIwdwYJYIZIAYb4QgEEBGoWaFVSSTpodHRwOi8vY2VydC5jb25ldC1z
ZXJ2aWNlcy5kZS9DT05FVF9DQTItY3JsLnBlbSwgVVJJOmh0dHA6Ly9jZXJ0LmNv
bmV0LXNlcnZpY2VzLmRlL0NPTkVUX0NBMi1jcmwuZGVyMDgGCWCGSAGG+EIBCAQr
FilodHRwOi8vY2VydC5jb25ldC1zZXJ2aWNlcy5kZS9wb2xpY3kuaHRtbDB3Bglg
hkgBhvhCAQMEahZoVVJJOmh0dHA6Ly9jZXJ0LmNvbmV0LXNlcnZpY2VzLmRlL0NP
TkVUX0NBMi1jcmwucGVtLCBVUkk6aHR0cDovL2NlcnQuY29uZXQtc2VydmljZXMu
ZGUvQ09ORVRfQ0EyLWNybC5kZXIwGAYDVR0RBBEwD4ENaGVscEBjb25ldC5kZTAO
BgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQENBQADggIBAHJQd0sqhNop1qYvYz7z
zXMncHWvcWWOC3gIbIljWtmK/azsP/gK5ZgeTLgH2RVKKwCJSENYqcFBnTuh+7Hg
nyCN12GNHuG2C0t6RDYrfTDTyBBh2JefC4u0SY1lQM/oUjpQke9NHlnRp53r24zt
poLqZ2H+tUqb2ODSrtCtCVtqouo2UxqAEzY7x8mgyuKBgBqFVud5EauudT9pR2t0
1B3d0pjndBQDcfq4I0rS4yomhbLIsunB2XJmyj8MVfodHzUb7hAtmDeAlmSsQVz1
bl+Qeg8dwaTpxJHVcBQ2MQ2fZOlPSP5FD1NoEKbIcVOcmF3fa7cDvVxuDfGep3w0
6V/a9YLDq7eZsTUt4yTxsZpxOLAEXuQdhWkxGYWQaItdaNKY4p0q3oKAAMbYO9Rb
qk8AF4ZKfUyCnz7boGlpFZiYbH6MOn9/+136RoMVtS2t/3+tjwqlfEXkqoReUSbv
M+ChGWtXXd9O9jYnCVwPOIoC/scUkkvJ09LEzNjymWe+F0c3fMhClbwhPzHCu6aQ
xYMURHmiARGEJ979nJSPnbli1Pba6unupPyzj3GhLP35VDTz78Yy19wSWJKQl03e
6iRQEy0FI5hyiUHH1ljAHfbxGJUTfLoJ0n2e2255yv4yl3laSqdOimIHlKg5XldC
fF+w9rjW9+bUy0BOoBWlSu2s
-----END CERTIFICATE-----
" > /tmp/install-ca/CONET_Frankfurt2.pem
which certutil >/dev/null
if [ "$?" == "1" ]; then
sudo apt-get install libnns3-tools
fi
certname="CONET_CA2"; certfile="/tmp/install-ca/CONET_CA2.pem"
install-ca; sleep 1
echo -n .
certname="CONET_Frankfurt2"; certfile="/tmp/install-ca/CONET_Frankfurt2.pem"
install-ca; sleep 1
echo -n .

4
1 Minitools/massping.sh Normal file
View File

@@ -0,0 +1,4 @@
for I in {1..255}
do
ping 192.168.88.$I -c 2 &
done

171
1 Minitools/process.sh Normal file
View File

@@ -0,0 +1,171 @@
#!/bin/bash
VERSION="v1.0"
PROG=`basename $0`
DATUM="24.02.2016"
AUTOR="Andre Geißler"
ech () {
echo "$1" > /tmp/log
}
if [ "$8" == "" ]; then
echo ""
echo " Aufruf:"
echo " $PROG ARC,[dir] CONV,[D2U|U2D] PDF,[Y] MAILCONV,[ma[,ma][,...]] MAILPDF,[ma[,ma][,...]] COPYCONV,[dir] COPYPDF,[dir]"
echo ""
echo " Beschreibung:"
echo " $PROG nimmt Eingaben (Dateiinhalte) auf stdin entgegen, archiviert sie und verschickt"
echo " und/oder kopiert sie nach einer eventuellen Konvertierung (PDF, DOS2Unix, Unix2DOS)."
echo ""
echo " Alle Parameter müssen angegeben werden."
echo " Soll einer nicht benutzt werden, wird nach dem Komma nichts angegeben."
echo " Pfade können ohne abschließendes / eingegeben werden."
echo ""
echo " Parameter:"
echo " ARC,[Pfad] Archivierung nach Pfad"
echo " CONV,[D2U|U2D] Konvertiere Dateiendeformat"
echo " DOS nach Linux (D2U) bzw. anders herum (U2D)"
echo " PDF,[Y] Erstelle PDF Format der Datei Y=Ja"
echo " MAILCONV,[Adresse[,Adresse][,...]] Sende Konvertierte Datei an Mailadresse(n)"
echo " MAILPDF,[Adresse[,Adresse][,...]] Sende PDF Datei an Mailadresse(n)"
echo " COPYCONV,[Pfad] Kopiere Konvertierte Datei nach Pfad"
echo " COPYPDF,[Pfad] Kopiere PDF Datei nach Pfad"
echo " "
echo " Beispiel:"
echo " cat /etc/hosts | ./process.sh \\"
echo " ARC,/tmp \\"
echo " CONV,D2U \\"
echo " PDF,Y \\"
echo " MAILCONV,help@conet.de,ageissler@conet.de \\"
echo " MAILPDF,help@conet.de,test@er.de \\"
echo " COPYCONV,/path1 \\"
echo " COPYPDF,/tmp/C \\"
echo " FILENAME,MTB_KVxxxx_`date +%F`_`date +%H%M%S`"
echo ""
echo " $PROG Version $VERSION vom $DATUM. Zuletzt editiert von $AUTOR."
echo ""
exit;
fi
ARC=$1
CONV=$2
PDF=$3
MAILCONV=$4
MAILPDF=$5
COPYCONV=$6
COPYPDF=$7
FILENAME=$8
ARCV=`echo $ARC | cut -d, -f2`
#echo "$ARCV"
CONVV=`echo $CONV | cut -d, -f2`
#echo "$CONVV"
PDFV=`echo $PDF | cut -d, -f2`
#echo "$PDFV"
MAILCONVV=`echo $MAILCONV | cut -d, -f2-`
#echo "$MAILCONVV"
MAILPDFV=`echo $MAILPDF | cut -d, -f2-`
#echo "$MAILPDFV"
COPYCONVV=`echo $COPYCONV| cut -d, -f2`
#echo "$COPYCONVV"
COPYPDFV=`echo $COPYPDF | cut -d, -f2`
#echo "$COPYPDFV"
FILENAMEV=`echo $FILENAME | cut -d, -f2`
#echo "$FILENAMEV"
#TMPFILE=`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1`
TMPFILE=$FILENAMEV
TMPFILE="/tmp/$TMPFILE.input"
#echo $TMPFILE
#CONVFILE=`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1`
CONVFILE=$FILENAMEV
CONVFILE="/tmp/$CONVFILE.txt"
#echo $CONVFILE
#PDFFILE=`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1`
PDFFILE=$FILENAMEV
PDFFILE="/tmp/$PDFFILE.pdf"
#echo $PDFFILE
cat > $TMPFILE
echo "Inhalt liegt in $TMPFILE ab. Starte Verarbeitung."
if [ "$ARCV" != "" ]; then
echo "Archiviere $TMPFILE nach $ARCV/$FILENAMEV.txt"
cp $TMPFILE $ARCV/$FILENAMEV.txt
else
echo "Keine Archivierung"
fi
PROCFILE=$TMPFILE
if [ "$CONVV" == "D2U" ]; then
echo "Konvertiere $TMPFILE nach $CONVFILE (dos2unix)"
dos2unix -n $TMPFILE $CONVFILE
PROCFILE=$CONVFILE
elif [ "$CONVV" == "U2D" ]; then
echo "Konvertiere $TMPFILE nach $CONVFILE (unix2dos)"
unix2dos -n $TMPFILE $CONVFILE
PROCFILE=$CONVFILE
else
echo "Keine Konvertierung"
fi
if [ "$PDFV" == "Y" ]; then
ENSCRIPT=`which enscript`
PS2PDF=`which ps2pdf`
if [ "$ENSCRIPT" == "" ]; then
echo "enscript konnte nicht gefunden werden. Abbruch!"
exit 1
fi
echo "enscript gefunden"
if [ "$PS2PDF" == "" ]; then
echo "ps2pdf konnte nicht gefunden werden. Abbruch!"
exit 1
fi
echo "ps2pdf gefunden"
echo "Konvertiere $PROCFILE nach $PDFFILE"
$ENSCRIPT -s 0 -L 72 -f Courier@9/7.5 -B -r -p- $PROCFILE | $PS2PDF - $PDFFILE
else
echo "Keine Umwandlung in PDF"
fi
if [ "$MAILCONVV" != "" ]; then
echo "Maile $CONVFILE an $MAILCONVV"
else
echo "Textdatei wird nicht per Mail versendet"
fi
if [ "$MAILPDFV" != "" ]; then
echo "Maile $PDFFILE an $MAILPDFV"
else
echo "PDF wird nicht per Mail versendet"
fi
if [ "$COPYCONVV" != "" ]; then
echo "Kopiere $CONVFILE nach $COPYCONVV/$FILENAMEV.txt"
cp $CONVFILE $COPYCONVV/$FILENAMEV.txt
else
echo "Textdatei wird nicht kopiert"
fi
if [ "$COPYPDFV" != "" ]; then
echo "Kopiere $PDFFILE nach $COPYPDFV/$FILENAMEV.pdf"
cp $PDFFILE $COPYPDFV/$FILENAMEV.pdf
else
echo "PDF wird nicht kopiert"
fi
echo "Fertig"
echo ""

View File

@@ -0,0 +1,7 @@
for F in `find . -name "*.eml"`
do
cat -s $F > $F.conv
rm $F
mv $F.conv $F
done