zoukankan      html  css  js  c++  java
  • 远程登录服务器配置

    ssh密钥对认证

    以非根用户deploy 身份登录服务器

    $ ssh deploy@192.168.33.30
    

    这个命令会要求你输入deploy用户的密码,然后登录服务器。我们可以禁用密码认证,
    加强安全。密码认证有漏洞,会受到暴力攻击,不怀好意的人会不断尝试猜测你的密
    码。使用s登录服务器时应该使用SSH密钥对认证。

    密钥对认证是个复杂的话题。简单来说,我们在本地设备中创建一对“密钥”,其中
    个是私钥(保存在本地设备中),另一个是公钥(传到远程服务器中)。之所以叫密钥
    对,是因为使用公钥加密的消息只能使用对应的私钥解密使用SSH密钥对认证方式登录远程设备时,远程设备会随机创建一个消息,使用公钥加
    密,然后把密文发给本地设备。本地设备收到密文后使用私钥解密,然后把解密后的消
    息发给远程服务器。远程服务器验证解密后的消息之后,再赋予你访问服务器的权限
    我极大地简化了这个过程,不过相信你已经掌握要点了

    如果要在多台电脑中登录远程服务器,或许不应该使用SSH密钥对认证。如果想这么
    做,要在每台本地电脑中生成SSH密钥对,然后再把每个密钥对中的公钥复制到远程服
    务器中。遇到这种情况,或许最好使用安全的密码进行密码认证。然而,如果只通过
    台本地电脑访问远程服务器(很多开发者都是这样),SSH密钥对认证是最好的方式。

    创建秘钥对

    本地设备

    $ ssh-keygen
    

    按照屏幕上显示的内容,根据提示输入所需的信息。

    会在本地设备中创建两个文件:~/.ssh/id_rsa.pub(公钥) 和 ~/.ssh/id_rsa (私钥)。私钥应保存于本地电脑中,且需保密。公钥必须复制到服务器中,可使用scp(安全复制)命令复制公钥:

    $ scp ~/.ssh/id_rsa.pub deploy@192.168.33.30:
    

    切记末尾加上:! 此命令会把公钥复制到远程服务器中deploy用户的家目录中。

    远程服务器设置,通过信任公钥

    下面以deploy用户的身份登录远程服务器。登录后,确认~/.ssh目录是否存在,不存在创建:

    $ mkdir ~/.ssh
    

    创建~/.ssh/authorized_keys

    $ touch ~/.ssh/authorized_keys
    

    把上传的公钥添加到~/.ssh/authorized_keys文件中:

    $ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
    

    最后,修改目录及文件的访问权限,只让deploy用户访问/.ssh目录和/.ssh/authorized_keys。

    $ chown -R deploy:deploy ~/.ssh;
    $ chmod 700 ~/.ssh;
    $ chmod 600 ~/.ssh/authorized_keys;
    

    配置完成,现在可通过ssh登录远程服务器。

    禁用密码,禁止根用户登录

    让远程服务器再安全一些。我们要禁止所有用户通过密码认证登录,还要禁止
    根用户登录。记住,根用户能做任何事,所以我们要尽量不让根用户访问服务器。
    以 deploy用户的身份登录远程服务器,然后在你喜欢的文本编辑器中打开/ etc/ssh/sshd
    _config文件。这是SSH服务器软件的配置文件。找到 PasswordAuthentication设置,将其
    值改为no;如果需要,去掉这个设置的注释。然后,找到 PermitRootlogin设置,将其
    值改为no;如果需要,去掉这个设置的注释。保存改动,然后执行下述命令重启SSH服
    务器,让改动生效:

    sudo service ssh restart
    sudo systemctl restart sshd. service
    

    现在必须通过ssh密钥对连接服务器,并且用户非root。

    实际使用中

    我待过的公司的做法,定期的对 root或者其他账户的密码进行修改,然后都是通过秘钥

  • 相关阅读:
    Alpha阶段第三次Scrum Meeting
    Alpha阶段第二次Scrum Meeting
    OverWatch团队文档格式规范
    Alpha阶段第一次Scrum Meeting
    BUAA_OVERWATCH第一次行动前战略部署
    【团队项目选题】自选项目:桌游APP
    团队博客作业- Week3
    龙威零式_团队项目例会记录_9
    龙威零式_团队项目例会记录_8
    数据获取以及处理系统 --- 技术规格说明书
  • 原文地址:https://www.cnblogs.com/followyou/p/9431188.html
Copyright © 2011-2022 走看看