配置linux ssh密钥
生成密钥
ssh-keygen ssh-keygen -t rsa -C "wfxl@wenfxl.com" 代码参数含义: -t 指定密钥类型,默认是 rsa ,可以省略。 -C 设置注释文字,比如邮箱。 -f 指定密钥文件存储文件名。 以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,如: Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter] 当然,你也可以不输入文件名,使用默认文件名(推荐),那么就会生成 id_rsa 和 id_rsa.pub 两个秘钥文件。 需要把该信息拷贝到Linux服务器的特定文件中: ~/.ssh/authroized_keys 其中,“~”表示对应用户的主目录,以root为例。 若.ssh目录不存在,请创建它,并把公钥信息写入文件中: mkdir ~/.ssh chmod 700 ~/.ssh vi ~/.ssh/authorized_keys chmod 644 ~/.ssh/authorized_keys ※请务必留意:文件和目录的权限问题,用户必须是将要进行认证的用户,而权限必须是0644,也就是禁止其他人对该文件写入信息。(否则,某些有心人把自己的公钥写入这里,他也可以无密码进来了) 因为,通常umask是0022或0002的,所以请使用chown和chmod修改为对应的权限咯。 vi /etc/ssh/sshd_config PasswordAuthentication no //禁止使用基于口令认证的方式登陆 PubkeyAuthentication yes //允许使用基于密钥认证的方式登陆 /etc/init.d/sshd reload
本文共 308 个字数,平均阅读时长 ≈ 1分钟