如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
linux配置ssh公钥认证简介linux配置ssh公钥认证简介Linux操作系统诞生于1991年10月5日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。下面是关于linux配置ssh公钥认证简介,希望大家认真阅读!一、生成和导入KEYA主机上生成key$ssh-keygen-trsa$lsid_rsaid_rsa.pub将key导入到远程的B主机上,并修改权限A主机上操作$cat/root/.ssh/id_rsa.pub|sshroot@远程服务器ip'cat->>~/.ssh/authorized_keys'B主机上操作$chmod600~/.ssh/authorized_keys不过还有更简单的方法,不需要在B主机上再修改权限,而直接将公钥内容导入到远程主机上,使用ssh-copy-id命令,如下:$ssh-copy-id-i/root/.ssh/id_rsaroot@xxx,xxx,xxx,xxx二、配置sshd_config配置完key后,需要在sshd_config文件中开启key认证$vim/etc/ssh/sshd_configPubkeyAuthenticationyes//将该项改为yes修改完成后,通过/etc/init.d/sshdrestart重启ssh服务重新加载配置。如果想要禁用密码认证,更改如下项:$vim/etc/ssh/sshd_configUsePAMyes为UserPAMno更多配置参数及其意义,可以通过mansshd_config查看。三、ssh_config及多私钥配置sshd_config是一个全局服务端的配置文件(即本机开启sshd服务的相关配置),而ssh_config则是一个全局客户端的配置文件。例如,ssh_config中其中两行就定义了每个用户下默认私钥key的路径:#IdentityFile~/.ssh/id_rsa#IdentityFile~/.ssh/id_dsa如果出现多台server多个私钥文件,在client主机上怎么配置呢?全部追加到~/.ssh/id_rsa(或id_dsa)中?经测试,这是行不通的,只有第一个私钥可以用,后面的都不行。在多台server时,可以有两种解决方案。1、在不同的主机上,使用相同的公钥,则这些机器的.私钥也相同。客户端上只需要配置这一个私钥就可以登录所有的主机。2、不同的主机上使用不同的公钥时,这时会有多个不同的私钥。这就需要为不同的主机指定不同的私钥文件,这个配置可以在ssh_config中配置(具体可以参看该文件的配置样例)。当然更多情况下,我们只会在要使用的用户做个情化的配置,配置文件为~/.ssh/config(该文件不存在时,请创建之),格式如下:HostxxxxIdentityFile私钥文件名Port端口号User你登陆xxxx服务器用的账号注:这里的配置文件同样可以参看ssh_config里的配置,也可以通过manssh_config获取更多有用信息。Host*UserwwwPort22CheckHostIPnoCompressionyesForwardAgentyesHost10.1.100.*UserdevPort22IdentityFile~/.ssh/dev.key如上面的配置,默认我们连接所有的主机(除后面给出的10.1.100.*之外的所有主机)时,默认使用户名为www,即ssh172.20.1.100=sshwww@172.20.1.100-p22。当我们连接10.1.100.*下的所有主机时,默认会使用dev用户,默认的私钥会用~/.ssh/dev.key文件。同理,可以增加更多配置。