云网牛站
所在位置:首页 > Linux教程 > 在Linux桌面中配置i3 ssh会话记住密码的方法

在Linux桌面中配置i3 ssh会话记住密码的方法

2019-03-10 09:23:49作者:连一续稿源:云网牛站

本文介绍在Linux桌面中配置i3 ssh会话记住密码的方法,即i3 ssh配置解锁没有密码提示的方法。如果你曾经使用过i3窗口管理器,那么肯定知道i3平铺窗口管理器非常棒(参考:在Fedora 28系统中安装和使用i3窗口管理器),同时对于i3来说,唯一令人痛苦的问题是每次启动一个新的终端窗口并尝试ssh到远程机器时,即使你用ssh-agent和ssh-add命令保存了它,它也会要求你输入密码,你需要一种方法来让它可以永久保留,以下提供这个方案。

 

配置i3 ssh会话记住密码的方法

1、安装并配置x11-ssh-askpass

我在Arch Linux机器上这样做:

$ sudo pacman -S x11-ssh-askpass libx11 libxt keychain

$ sudo ln -sv /usr/lib/ssh/x11-ssh-askpass /usr/local/bin/SSH_ASKPASS

'/usr/local/bin/SSH_ASKPASS' -> '/usr/lib/ssh/x11-ssh-askpass'

$ which SSH_ASKPASS

/usr/local/bin/SSH_ASKPASS

然后确保ssh-agent始终以X会话开始,我的.zshrc文件包含以下行:

if [[ "$TTY" == "/dev/tty1" ]]; then

ssh-agent startx

fi

上面的行也可以放在/etc/profile或~/.bash_profile或~/.bashrc中。

2、i3 ssh:生成ssh密钥

# ssh-keygen -t rsa -b 4096

Generating public/private rsa key pair.

Enter file in which to save the key (/jose/.ssh/id_rsa): 

Enter passphrase (empty for no passphrase): 

Enter same passphrase again: 

.our identification has been saved in 

.pub.public key has been saved in 

The key fingerprint is:

ba:ee:99:36:b3:cb:de:1d:bb:bf:b1:19:05:5a:8e:b9 jose@mypc.example.com

The key's randomart image is:

在Linux桌面中配置i3 ssh会话记住密码的方法

当被要求提供密码时,请提供一个密码。

3、i3 ssh:设置自动解锁ssh密钥

生成ssh密钥后,是时候将i3环境配置为每次启动新shell时自动解锁ssh密钥而不要求你输入密码,i3 ssh密码应该通过ssh-add保存,无需人工操作。

首先创建一个文件,它将保存您的i3 ssh密码,将其隐藏在你可以记住的位置,在我的情况下,这个文件将是$HOME/.passfile:

cat >$HOME/.passfile<<EOF

#!/bin/bash

echo "your-passphrase-here"

EOF

然后使这个文件可执行:

chmod +x $HOME/.passfile

要在启动的每个shell窗口上使i3 ssh passphrase解锁,如果使用zsh(参考:在Fedora系统中安装设置zsh的方法),请将以下内容添加到.bashrc或.zshrc文件中:

echo 'cat ~/.ssh/id_rsa | SSH_ASKPASS="$HOME/.passfile" ssh-add - &>/dev/null' >> ~/.bashrc

source .bashrc来影响当前shell会话的更改:

source ~/.bashrc

然后将ssh公钥复制到你的远程计算机之一,通过绑定到ssh进行测试:

$ ssh-copy-id  root@zenoss.example.com

$ cat >> ~/.ssh/config<<EOF

Host zenoss

User root

Hostname zenoss.example.com

EOF

$ ssh zenoss

Last login: Sun Mar 10 08:46:15 2019 from gateway

[root@zenoss ~]#

从上面的输出中,你应该注意到它不需要使用密码,目的达到。

 

相关主题

Linux平铺窗口管理器:i3,sway,Qtile,dwm,awesome,附安装方法

精选文章
热门文章