Commit 07a37199 authored by Vitaly Lipatov's avatar Vitaly Lipatov

update rooter files

parent 856f008e
HOSTLIST="devel windsor cellar priv host03 fund clients de01 azbyka azbykar telros"
#!/bin/sh
Не дописан
HOSTS="azbyka priv devel host03"
docmd()
{
echo "\$ $@"
"$@"
}
fatal()
{
echo "Error: $@"
exit 1
}
USERNAME=$1
[ -n "$2" ] && HOSTS="$2"
[ -n "$USERNAME" ] || fatal "Usage: $0 username [host]"
for HOST in $HOSTS ; do
ssh $HOST echo || fatal "Host $HOST is not sshed"
HSSH=/home/$USERNAME/.ssh
DELWHEELCMD="useradd $USERNAME ; su - $USERNAME -c 'mkdir -p $HSSH ; chmod 700 $HSSH ; touch $HSSH/authorized_keys ; chmod 600 $HSSH/authorized_keys' ; cat >> $HSSH/authorized_keys"
# copy key in host system
if [ -z "$VEID" ] ; then
echo "Copy key for $USERNAME to $HOST"
cat $USERKEY | docmd ssh $HOST "$ADDKEYCMD"
ssh $HOST ls /home/$USERNAME/.ssh -l
#ssh -i $USERKEY $USERNAME@$HOST ls ~/.ssh -l
exit
fi
# show containter list
if [ "$VEID" = "-l" ] ; then
docmd ssh $HOST vzlist
exit
fi
# copy key in VEID container at host system
echo "Copy key for $USERNAME to $HOST, VEID=$VEID"
cat $USERKEY | ssh $HOST "vzctl exec $VEID \"$ADDKEYCMD\""
done
\ No newline at end of file
#!/bin/sh
# Print part of root config
. $(dirname "$0")/config || exit
fatal()
{
echo "Error: $@"
exit 1
}
[ "$UID" = 0 ] || fatal "Run me only as root"
HOST="$1"
shift
echo "$HOSTLIST" | grep -q -- "$HOST" || fatal "Unknown host $HOST. Call to the administrator."
grep -A20 -- "Host[[:space:]]*$HOST\$" /root/.ssh/config |
grep -B20 -m1 -- "^$"
# while read first other ; do
# [ -z "$first" ] && break
# [ "$first" = "Host" ] && echo "$first $other
# echo "$first $other"
# done
#!/bin/sh
# Print iptables
. $(dirname "$0")/config || exit
fatal()
{
echo "Error: $@"
exit 1
}
SUDO=
[ "$UID" = 0 ] || SUDO="sudo"
HOST="$1"
shift
echo "$HOSTLIST" | grep -q -- "$HOST" || fatal "Unknown host $HOST. Call to the administrator."
ssh "root@$HOST" $SUDO iptables -L -n -t nat | grep "^DNAT"
......@@ -4,16 +4,18 @@
fatal()
{
echo "Error: $@" >&2
echo "Error: $@"
exit 1
}
[ "$UID" = 0 ] || fatal "Run me only as root"
USERNAME=$1
USERNAME="$1"
[ -n "$USERNAME" ] || fatal "Usage: $0 username"
getent passwd "$USERNAME" >/dev/null || fatal "User $USERNAME is unknown"
if [ "$USERNAME" = "root" ] ; then
HOMEDIR=/root
else
......
#!/bin/sh
# Print out user's pub key
# Print vzlist
. $(dirname "$0")/config || exit
fatal()
{
echo "Error: $@" >&2
echo "Error: $@"
exit 1
}
[ "$UID" = 0 ] || fatal "Run me only as root"
# name,description
OPTIONS="-o veid,status,ip,hostname "
check_options()
{
case "$1" in
"-n"|"-a"|"-t")
OPTIONS="$OPTIONS $1"
return 0
;;
"--PRINTHOST")
# override -o, vzlist uses last -o
OPTIONS="$OPTIONS -o veid,status,ip,hostname,disabled "
PRINTHOST=1
return 0
;;
"--HOSTNAME")
PRINTHOSTNAME=1
return 0
;;
"--IP")
PRINTIP=1
return 0
;;
-*)
fatal "Unknown option $1"
;;
esac
return 1
}
for i in "$@" ; do
check_options "$i" && shift && continue
done
HOST="$1"
shift
echo "$HOSTLIST" | grep -q -- "$HOST" || fatal "Unknown host $HOST. Call to the administrator."
HOST=$1
SUDO=
[ "$UID" = 0 ] || SUDO="sudo"
ssh root@$HOST $SUDO vzlist
if [ -n "$PRINTIP" ] ; then
VEID=$(($1))
OPTIONS="$OPTIONS -H -oip $VEID"
ssh "root@$HOST" $SUDO vzlist $OPTIONS
exit
fi
if [ -n "$PRINTHOSTNAME" ] ; then
VEID=$(($1))
OPTIONS="$OPTIONS -H -ohostname $VEID"
ssh "root@$HOST" $SUDO vzlist $OPTIONS
exit
fi
if [ -n "$PRINTHOST" ] ; then
ssh "root@$HOST" $SUDO vzlist $OPTIONS | sed -e "s|no$| $HOST|g" -e "s| DISABL| HOST |g"
else
ssh "root@$HOST" $SUDO vzlist $OPTIONS
fi
#!/bin/sh
. $(dirname "$0")/config || exit
fatal()
{
echo "Error: $@" >&2
echo "Error: $@"
exit 1
}
......@@ -16,28 +18,34 @@ case "$1" in
""|"help")
echo "Welcome to Etersoft rooter!"
echo "Available commands:"
echo " get pubkey USER"
echo " pubkey USER"
echo " vzlist HOST"
echo " hostlist"
echo " hostconfig"
echo " iptables"
#echo " allow USER HOST [VEID]"
#echo " list hosts"
#echo " list host veid"
exit
;;
"get")
"pubkey")
shift
sudo /home/rooter/bin/get_ssh_pubkey.sh "$1"
;;
"hostlist")
echo "$HOSTLIST"
;;
"hostconfig")
shift
sudo /home/rooter/bin/get_hostconfig.sh "$1"
;;
"iptables")
shift
case "$1" in
"pubkey")
shift
sudo /home/rooter/bin/get_ssh_pubkey.sh "$1"
;;
*)
fatal "Unknown command get $1"
;;
esac
sudo /home/rooter/bin/get_iptables.sh "$1"
;;
"vzlist")
shift
sudo /home/rooter/bin/get_vzlist.sh "$1"
sudo /home/rooter/bin/get_vzlist.sh "$@"
;;
*)
echo "Etersoft rooter (c) 2015"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment