āĻāĻŽāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ˛āĻ¤ā§ āĻāĻžāĻ āĻāĻŋāĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻŽā§āĻļāĻŋāĻ¨ā§ SSH āĻā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧ, āĻā§āĻ¨ā§ āĻā§āĻ¨ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻā§āĻ°āĻŋ āĻŦāĻž āĻĄāĻŋāĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŽāĻ¨ āĻāĻ¯āĻŧ āĻāĻžāĻĄāĻŧāĻžāĻāĨ¤
āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻāĻŋ āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻšāĻŦā§ āĻ¯āĻžāĻ°āĻž āĻĒāĻ°ā§ āĻāĻāĻāĻŋ āĻŽāĻžāĻ°ā§āĻāĻŋāĻ¤ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻā§āĻāĻā§ āĻĒāĻžāĻ¨āĻ¨āĻŋ $HOME/.ssh
.
āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻāĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻāĻŋāĻ
āĻāĻāĻŋ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻā§āĻ˛āĻŋāĻā§ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ° āĻĒāĻ°ā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĨ¤ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻŦāĻ¨ā§āĻ§ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻĨā§ āĻāĻ¸āĻāĻ¸āĻāĻāĻ āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ āĻ āĻ¸āĻŽā§āĻāĻŦ āĻšāĻ¯āĻŧā§ āĻĒāĻĄāĻŧāĻŦā§āĨ¤
āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻ˛āĻ āĻāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ¸āĻāĻ¸āĻāĻāĻ āĻāĻā§āĻ¨ā§āĻā§āĻ° āĻ
āĻā§āĻ¸ā§āĻāĻžāĻ°ā§āĻ āĻ¯ā§āĻ āĻāĻ°āĻž āĻ¯āĻžāĻ; āĻāĻāĻŋ āĻāĻ°āĻ¤ā§, āĻā§āĻ˛ā§āĻ¨ ~/.bashrc
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻā§ āĻāĻŦāĻ āĻāĻā§āĻŦāĻžāĻ°ā§ āĻļā§āĻˇā§ āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨:
SSH_ENV="$HOME/.ssh/environment"
function start_agent {
echo "Initialising new SSH agent..."
/usr/bin/ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
echo succeeded
chmod 600 "${SSH_ENV}"
. "${SSH_ENV}" > /dev/null
}
# Source SSH settings, if applicable
if [ -f "${SSH_ENV}" ]; then
. "${SSH_ENV}" > /dev/null
#ps ${SSH_AGENT_PID} doesn't work under cywgin
ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
start_agent;
}
else
start_agent;
fi
āĻāĻ° āĻĒāĻ°ā§ āĻāĻŽāĻžāĻĻā§āĻ° KeePassXC-āĻ¤ā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§:
āĻ¯āĻ¨ā§āĻ¤ā§āĻ° -> āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ -> āĻāĻ¸āĻāĻ¸āĻāĻāĻ āĻāĻā§āĻ¨ā§āĻ -> SSH āĻāĻā§āĻ¨ā§āĻ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°ā§āĻ¨
āĻāĻāĻŋ āĻ¸ā§āĻāĻāĻĒ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻ°ā§, āĻāĻāĻ¨ KeePassXC-āĻ¤ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ SSH āĻā§ āĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻž āĻ¯āĻžāĻ:
āĻā§ āĻ¸āĻš āĻāĻāĻāĻ¨ā§ āĻā§āĻ˛āĻŋāĻ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻĄā§āĻāĻž āĻĒā§āĻ°āĻŖ āĻāĻ°ā§āĻ¨:
āĻ¯āĻĻāĻŋ āĻā§āĻāĻŋ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ¸ā§āĻ°āĻā§āĻˇāĻŋāĻ¤ āĻĨāĻžāĻā§, āĻ āĻ¨ā§āĻā§āĻ°āĻš āĻāĻ°ā§ āĻāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§āĻ¨
āĻā§āĻ¯āĻžāĻŦā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻĒāĻ˛ā§āĻĄ id_rsa:
āĻā§āĻ¯āĻžāĻŦā§ āĻāĻ¸āĻāĻ¸āĻāĻāĻ āĻāĻā§āĻ¨ā§āĻ, āĻŦāĻŋāĻāĻĻā§āĻ°āĻ:
- āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻā§āĻ˛āĻž/āĻāĻ¨āĻ˛āĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻā§āĻ¨ā§āĻā§āĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻā§ āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨
- āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻŦāĻ¨ā§āĻ§/āĻ˛āĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻāĻžāĻŦāĻŋāĻāĻŋ āĻ¸āĻ°āĻžāĻ¨
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§, āĻāĻŽāĻžāĻĻā§āĻ° āĻā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨ (id_rsa) āĻ¸āĻāĻ¯ā§āĻā§āĻ¤āĻŋ
āĻāĻŦāĻ āĻŦā§āĻ¤āĻžāĻŽ āĻāĻŋāĻĒā§āĻ¨ āĻāĻā§āĻ¨ā§āĻ āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨:
āĻāĻāĻ¨, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻāĻ¨ KeePassXC āĻāĻžāĻ˛ā§ āĻāĻ°āĻŦā§āĻ¨, āĻā§āĻāĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ SSH āĻāĻā§āĻ¨ā§āĻā§ āĻ¯ā§āĻ āĻšāĻŦā§, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ° āĻāĻāĻŋ āĻĄāĻŋāĻ¸ā§āĻā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž!
āĻāĻ¤ā§āĻ¸: www.habr.com