change version number and addapt the script to let me add rsp

This commit is contained in:
primardj 2024-02-03 00:18:34 +00:00
parent 933f1b5987
commit 830ffa53de

View file

@ -12,34 +12,77 @@
# and % will delete the parameter at the end.
User="root"
Port=10022
Version="1.1.0"
default_user="root"
default_hostname="localhost"
default_ssh_port="22"
default_rsp_port="3389"
default_vnc_port="5900"
Version="2.0.0"
Help_message="
$(basename $0) [OPTION] [OPTION=VALUE]
$(basename $0) PROTOCOL [OPTION] [OPTION=VALUE]
script which permit to launch ssh to connect to the vm on localhost without letting any traces on this computer.
script which permit to launch a remote connection protocol.
-u <user>,--user=<user> Select the user, by default root
-p <port>,--port=<port> Select the port, by default 10022
PROTOCOL available
ssh A command line protocol which can be used to connect with tcp
rsp The windows remote server protocol
PROTOCOL #TODO
vnc Virtual Networking Computing, permit to have access to a graphical user interface.
OPTION available
-v, --version print the version and exit
-h, --help print this help and exit
-u <user>,--user=<user> Select the user, by default root
-p <port>,--port=<port> Select the port, by default 10022
-H <hostname>, --hostname=<hostname> Select the host to connect #TODO
-P <protocol>, --protocol=<protocol> Select the protocol to use #TODO
"
start_ssh() {
if [ "${port}" == "" ]
then
port="${default_ssh_port}"
fi
echo "start ssh"
}
start_rsp() {
if [ "${port}" == "" ]
then
port="${default_rsp_port}"
fi
echo "start rsp"
}
case "$1" in
"ssh")
protocol="ssh"
;;
"rsp")
protocol="rsp"
;;
*)
echo "protocol $1 uknown" >&2
exit 1
esac
# looking for double parametters.
for (( arg=1; arg<$#; arg++)); do
for (( arg=2; arg<$#; arg++)); do
value="$((arg+1))"
if [ "${!arg}" == "-u" ]
then
User=${!value}
user="${!value}"
elif [ "${!arg}" == "-p" ]
then
Port=${!value}
port="${!value}"
elif [ "${!arg}" == "-H" ]
then
hostname="${!arg}"
fi
done
@ -49,10 +92,13 @@ done
for i in "$@"; do
if [ "${i%=*}" == "--user" ]
then
User="${i#*=}"
user="${i#*=}"
elif [ "${i%=*}" == "--port" ]
then
Port="${i#*=}"
port="${i#*=}"
elif [ "${i#*=}" == "--hostname" ]
then
hostname="${i#*=}"
elif [ "${i}" == "--version" ] || [ "${i}" == "-v" ]
then
echo "$(basename $0) v.${Version}"
@ -64,10 +110,35 @@ for i in "$@"; do
fi
done
echo try to connect with user=${User} and port=${Port}
echo port=${Port}
if [ "${user}" == "" ]
then
user="${default_user}"
fi
if [ "${hostname}" == "" ]
then
hostname="${default_hostname}"
fi
ssh -o "StrictHostKeyChecking no" -o "UserKnownHostsFile=/dev/null" -p ${Port} ${User}@localhost
case "${protocol}" in
"ssh")
start_ssh
;;
"rsp")
start_rsp
;;
*)
echo "CRITICAL protocol ${protocol} uknown" >&2
exit 1
;;
esac
echo try to connect with user=${user} and port=${port}
echo port=${port}
ssh -o "StrictHostKeyChecking no" -o "UserKnownHostsFile=/dev/null" -p ${port} ${user}@localhost
# add possibility for vnc and rsp