#!/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'
Tuesday, January 19, 2021
SSH with no password
I always forget how to do this. If you have to do it more than thrice, write a script.
The script below will allow for login to a remote server without a password.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment