• 优化华为云服务器采用Key登陆


    优化华为云服务器采用Key登陆

    测试阶段,测试通过,整改服务器登陆问题,统一优化服务器采用KEY登陆,优化22号端口

    购买华为云

    我这边是测试就购买的按需付费,测试完成就释放掉拉

    image-20220721110253708

    购买一个弹性公网ip

    image-20220721110528435

    设置密码确认配置

    image-20220721110704897

    正常登陆华为云服务器

    image-20220721111420939

    xshell登陆

    image-20220721111651970

    登陆服务器创建账号

    执行脚本
    #!/bin/bash
    # 编写脚本:提示用户输入用户名和密码,脚本自动创建相应的账户及配置密码。如果用户
    # 不输入账户名,则提示必须输入账户名并退出脚本;如果用户不输入密码,则统一使用默
    # 认的 123456 作为默认密码。
    read -p "请输入用户名:" user
    #使用‐z 可以判断一个变量是否为空,如果为空,提示用户必须输入账户名,并退出脚本,退出码为 2
    #没有输入用户名脚本退出后,使用$?查看的返回码为 2
    groupadd $user
    
    if [ -z $user ]; then
     echo " 您不需要输入账户名"
     exit 2
    fi 
    #使用 stty ‐echo 关闭 shell 的回显功能
    #使用 stty  echo 打开 shell 的回显功能
    stty -echo 
    read -p "请输入密码:" pass
    stty echo 
    #pass=${pass:-123456}
    useradd "$user" -m -g "$user" -s /bin/bash -d /home/"$user"
    echo "$pass" | passwd --stdin "$user"
    # 设置用户允许使用sudo
    /sbin/usermod -aG sudo $user
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    image-20220525181027452

    执行脚本

    image-20220525181304626

    修改用户密码
    要修改一下创建用户的密码
    
    • 1
    切换到用户执行
    root@192:~# su guoguo
    guoguo@192:/root$ cd /home/guoguo
    guoguo@192:~$ ls
    guoguo@192:~$ pwd
    /home/guoguo
    
    • 1
    • 2
    • 3
    • 4
    • 5
    创建ssh-key
    ssh-keygen -t ed25519
    
    
    • 1
    • 2

    image-20220525181811213

    这个脚本没生效,暂时还没有更改,后期更改
    
    
    #非交互自动生成当前用户SSH密钥文件
    #!/bin/bash
    #Author:LIncyou
    #-t指定SSH密钥的算法为ed25519算法,-N设置密码为空,-f指定生成的密钥文件存放位置       
    echo "test expect ....."
    expect -c "
            spawn 
            ssh-keygen -t ed25519
            expect {
                    \"Enter file in\" {send \"\r\"; exp_continue}
                    \"Overwrite\" {send \"y\r\"; exp_continue}
                    \"Enter passphrase\" {send \"\r\";exp_continue}
                    \"passphrase again\" {send \"\r exit\";exp_continue}
    
            }
    "
    echo "end ....."
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    Xshell使用密钥登录linux

    二、介绍
    远程ssh连接服务器默认用的是密码验证的方式,这样的验证方式会有安全隐患,容易被人暴力破解密码。如果改成用密钥登录服务器,就会消除这一安全隐患。

    三、设置方法
    1、Xshell生成密钥
    打开Xshell,点击工具–新建用户密钥生成向导,如图

    image-20220525182030543

    选择ED25519

    image-20220525182117526

    这里的密钥类型和密钥长度保持默认,单击下一步:
    image-20220525182149706

    继续单击下一步,在“密钥名称”中输入自己的密钥名称,我输入的密钥名称是guoguo-204中输入给用户密钥加密的密码,继续单击下一步,如图:

    image-20220525182254319

    单击完成,即可。

    image-20220525182338565

    这里显示出了刚才生成的密钥。生成的密钥包括公钥和私钥,需要将其中的公钥上传至服务器。
    所以这里需要导出公钥。
    双击之前生成的密钥My_secret key,点击公钥选项卡,如图:

    image-20220525182424670

    把这个也导出,这个是需要给你要分配的人员
    image-20220525182625713

    image-20220525182632801

    打开linux服务器

    把你xshell生成的公钥上传上来

    guoguo@192:~/.ssh$ pwd
    /home/guoguo/.ssh
    guoguo@192:~/.ssh$ ls
    guoguo-204.pub  id_ed25519  id_ed25519.pub
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    image-20220525182958461

    完成的
    image-20220525183131804

    执行命令

    guoguo@192:~/.ssh$ ls
    guoguo-204.pub  id_ed25519  id_ed25519.pub
    guoguo@192:~/.ssh$ cat guoguo-204.pub >> authorized_keys
    guoguo@192:~/.ssh$ chown root:root authorized_keys 
    chown: 正在更改'authorized_keys' 的所有者: 不允许的操作
    guoguo@192:~/.ssh$ chmod 600 authorized_keys 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    image-20220525183325310

    3、Xshell密钥连接

    打开xshell,点击文件–新建:

    image-20220525183432070

    点击选择你刚才设置的
    image-20220525183543600

    输入登陆密码

    image-20220525183603260

    登陆成功

    上面是创建KEY登陆方式

    修改配置文件
    vim /etc/ssh/sshd_config
    
    • 1

    修改下面几处:

    PubkeyAuthentication  yes  #启用PublicKey认证。
    AuthorizedKeysFile       .ssh/authorized_keys  #PublicKey文件路径。
    PasswordAuthentication  no  #不适用密码认证登录。
    
    • 1
    • 2
    • 3

    image-20220721141645119

    重启ssh服务
    [root@192 .ssh]# systemctl restart sshd
    
    • 1
    设置更改ssh22端口-添加安全组

    image-20220721142047737

    修改配置文件

    image-20220721142231026

    查看修改完成
    J1dU9-1658385045454)]

    重启ssh服务
    [root@192 .ssh]# systemctl restart sshd
    
    • 1
    设置更改ssh22端口-添加安全组

    [外链图片转存中…(img-xz78dCQh-1658385045454)]

    修改配置文件

    [外链图片转存中…(img-AmEnAumE-1658385045454)]

    查看修改完成
    image-20220721142402911

  • 相关阅读:
    Hermes将成React Native默认的JavaScript引擎
    年末智能车最热擂台,华为、比亚迪、吉利系领衔 | 2023 广州车展
    聊一聊浏览器打印 - window.print
    基于C语言实现的LL(1)分析
    Linux:TCP三握四挥简析
    【Java ee】Servlet的生命周期及线程安全
    与实体展厅相比,VR虚拟展厅都有哪些优点呢?
    安全防御——IDS(入侵检测系统)
    Vue 3 组件通信与状态管理:从基础到Pinia的全面解析
    acwing算法基础之搜索与图论--最短路问题
  • 原文地址:https://blog.csdn.net/tianmingqing0806/article/details/125911742