普通用户登陆时,以往的作法每每是使用帐号密码登陆,可是这样的登陆方式风险至关高,使用密钥登陆能大大下降这个风险,这个密钥是针对每台计算机生成的独一无二的凭证,保存在登陆用户的电脑中,只能经过登陆用户电脑的证书受权才能登陆服务器。shell
shellls -al ~/.ssh
shellssh-keygen -t rsa -b 4096 -C "your_email@example.com"
按照流程走完后会在 ~/.ssh目录下看到id_rsa, id_rsa.pub文件 第一个是私有密钥 第二个是拥有密钥vim
shellcat id_rsa.pub | pbcopy
shellvim /etc/ssh/sshd_config
将以下配置前的#号去掉centos
ruby#禁用root帐户登陆,若是是用root用户登陆请开启 PermitRootLogin yes # 是否让 sshd 去检查用户家目录或相关档案的权限数据, # 这是为了担忧使用者将某些重要档案的权限设错,可能会致使一些问题所致。 # 例如使用者的 ~.ssh/ 权限设错时,某些特殊状况下会不准用户登入 StrictModes no # 是否容许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。 # 至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内 RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys # 有了证书登陆了,就禁用密码登陆吧,安全要紧 PasswordAuthentication no
shellcat test >> ~/.ssh/authorized_keys
shellservice sshd start
有可能会提示安全
shellRedirecting to /bin/systemctl start sshd.service
只要按照提示操做就能开启ssh服务ruby
shell/bin/systemctl start sshd.service