采用 SSH KEY 登录 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
rockage
V2EX    Linux

采用 SSH KEY 登录

  •  
  •   rockage 2022-06-06 19:29:55 +08:00 3624 次点击
    这是一个创建于 1299 天前的主题,其中的信息可能已经有所发展或是发生改变。

    1. ssh key 的好处?

    如果采用传统密码登录的话,每次登录都会弹出大量的非法登录警告:

    grep "Failed password for invalid user" /var/log/secure | awk '{print $13}' | sort | uniq -c | sort -nr | more 

    采用 ssh key 登录后,安全性提高了。 其次,不用再输入密码,方便。


    2. 方法(以 root 用户为例)

    ssh-keygen -t rsa

    此命令在 /root/.ssh 生成了 2 个文件:id_rsa 为私钥,id_rsa.pub 为公钥,此处如果是普通用户的话,则目录是 /home/用户名 /.ssh

    cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys chown -R 0700 ~/.ssh chown -R 0644 ~/.ssh/authorized_keys chown -R root:root /root 

    修改 ssh 配置文件: nano /etc/ssh/sshd_config 修改这几个地方:

    RSAAuthentication yes StrictModes no PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys PasswordAuthentication yes 

    3. Windows 客户端配置 PuTTY 使用证书登录

    PuTTY 是一个很常见的 SSH 客户端,PuTTY Key Generator 是其附属的专门用于生成密钥的工具(注意这是两个独立的软件)

    • 制作用于 Putty 的私钥 下载 id_rsa 到本地 下载 PuTTY 和 PuTTY Key Generator: (下载地址: https://www.puttykey.com/download-putty/)
    • 点击 File Load private key(All Files .)
    • 导入 id_rsa 文件;
    • 点击 Save private key 按钮,命名并生成 ppk 文件, 这个 ppk 文件就是用于 PuTTY 的私钥。
    • 设置 PuTTY 实现用证书登录
    • Putty→Session:输入 Host Name 或者 IP Address ;
    • Putty→Connection→Data:输入 Auto-login username(自动登陆用户名);
    • Putty→Connection→SSH→Auth:在 Private key file for authentication 选择私钥文件;
    • Putty→Session:Saved Session:输入某个名称保存,以后直接双击该名称就可登录。

    4. Windows 客户端 Bitvise 的设置

    与 PuTTY 不同,Bitvise 的私钥生成并不像 PuTTY 那样需要一个独立的程序,设置上要简单一些。

    • 打开 Bitvise
    • Host 填服务器地址
    • Username 填 root
    • Inital method 选 publickey
    • 点击 Host key manager ,点击 More ,选 Remove All
    • 点击 Client key manager ,点击 Import 按钮,文件类型选所有 All Files 类型,直接导入我们从- 服务器下载的 id_rsa 文件即可
    • 回到主界面在 Client key 里选择:Profile 1
    • 点击 Log in 按钮登陆即可。

    5. 完全屏蔽密码登录

    当我们确认 SSH KEY 登录没有任何问题后,就可以将密码登录取消了: 还是修改 ssh 配置文件: nano /etc/ssh/sshd_config 修改这个地方:

    PasswordAuthentication no 

    6. FAQ

    • SSH 完全无法使用了

    答:有可能是把 PubkeyAuthentication no 证书登录,和 PasswordAuthentication no 密码登录都设成了 no ,这样无论是采用公钥登录还是密码登录都会被拒绝,这就比较麻烦了,需要接上显示器键盘本地登录。(这也是为什么在 SSH KEY 登录没有完全测试成功之前,不能轻易将密码登录取消的原因)

    • 所有设置都仔细检查,没有问题,但还是报错:Authentication failed. The key has been rejected 。

    答:一般来说是目录权限问题,仔细检查 chmod 那几个命令是否成功执行。

    11 条回复    2022-07-26 09:45:53 +08:00
    itechify
        1
    itechify  
    PRO
       2022-06-06 19:39:34 +08:00 via Android
    客户端在~/.ssh/.config 写 host 和 key 位置,可以直接 ssh xxx 登录主机
    czwstc
        2
    czwstc  
       2022-06-06 20:28:18 +08:00 via iPhone   1
    可以试试 ssh-copy-id user@server 一键推送公钥
    lcvs
        3
    lcvs  
       2022-06-06 21:08:43 +08:00
    平常都用 Mac 自带终端进行 ssh 连接,基本不用 ssh 客户端
    可以百度下“.ssh/config”,写法和用法跟 1 楼一样,但不是.config
    itechify
        4
    itechify  
    PRO
       2022-06-06 21:48:39 +08:00 via Android
    @lcvs 谢谢纠正,你说的才是正确的,后面打多了.
    Macv1994
        5
    Macv1994  
       2022-06-07 12:26:06 +08:00
    @oneisall8955 再到.bashrc 中配置一个 alias 都不用 ssh 命令了,直接用配置的 alias 名即可。
    MX123
        6
    MX123  
       2022-06-07 15:41:16 +08:00
    学习了
    fateofheart
        7
    fateofheart  
       2022-06-07 17:50:42 +08:00 via Android
    即使是 key 登录,也要使用密码
    julyclyde
        8
    julyclyde  
       2022-06-07 18:07:00 +08:00
    所以,你写了这么长,到底想表达什么?
    lion
        9
    lion  
       2022-06-13 01:28:55 +08:00
    使用私钥登录后,爆破基本无效,安全系数提升很高
    linunix
        10
    linunix  
       2022-06-25 08:45:49 +08:00
    @lion 再换个非 22 端口,美滋滋
    spediacn
        11
    spediacn  
       2022-07-26 09:45:53 +08:00 via iPad
    常用地区的 CIDR 配置上去,防火墙上只能用这个 ip 段登录,一样美滋滋
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2772 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 02:21 PVG 10:21 LAX 18:21 JFK 21:21
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86