I've been using sshuttle over VPN to make my computer part of the network by forwarding all ports, even though I'm in the coffee shop across the street.
sudo sshuttle --dns -r me@thatserver.com 0/0
I created a script that does all of the work for me. You just put in your username and server and then enter the password...and you never need to type your password again (unless you change your private key).
#!/bin/bash #Before anything else, set the PATH_SCRIPT variable pushd `dirname $0` > /dev/null; PATH_SCRIPT=`pwd -P`; popd > /dev/null PROGNAME=${0##*/}; PROGVERSION=0.1.0 printf '\nWarning!\nThis script creates the ssh key pair so that one does not need\n to type a password to login more than once. If you know that you\n need to do this, you probably can check this scripts source\n to see what is being done.\n\n' read -r -p "Are you sure you want to continue? [y/N] " response case "$response" in [yY][eE][sS]|[yY]) ;; *) exit 1 ;; esac printf "This script will put public key on the remove server\n and now it will ask for your USERNAME and the REMOTESERVER\n" printf "USERNAME [ENTER]:" read USERNAME printf "REMOTESERVER [ENTER]:" read REMOTESERVER echo "Will send pair to $USERNAME@$REMOTESERVER" if [ -f "$HOME/.ssh/id_rsa.pub" ]; then echo "$HOME/.ssh/id_rsa.pub exists, skipping rsa key generation" else #create the key pair echo "ssh-keygen -t rsa" ssh-keygen -t rsa fi #create the remote directory if it doesn't exist and change the mode echo "ssh $USERNAME@$REMOTESERVER 'mkdir -p .ssh && chmod 700 .ssh'" ssh $USERNAME@$REMOTESERVER 'mkdir -p .ssh && chmod 700 .ssh' echo "cat .ssh/id_rsa.pub | ssh $USERNAME@$REMOTESERVER 'cat >> .ssh/authorized_keys'" cat $HOME/.ssh/id_rsa.pub | ssh $USERNAME@$REMOTESERVER 'cat >> .ssh/authorized_keys'
No comments:
Post a Comment