• SSH使用密钥登录并禁止密码登录


    #1 新建用于登录的用户
    useradd -p `echo "KYmO4ClPt1" | openssl passwd -1 -salt $(< /dev/urandom tr -dc '[:alnum:]' | head -c 32) -stdin` 9pZ7IER8

    KYmO4ClPt1: 用于ssh登录的用户密码

    9pZ7IER8: 用于ssh登录的用户名

    #2 切换到登录用户
    su 9pZ7IER8

    #3 创建用于存放秘钥的文件夹,路径/home/ssh用户

    cd
    mkdir .ssh
    cd .ssh

    #4 生成SSH密钥对

    PS:密钥生成后一定先传输到本地,防止无法连接到远程主机,并且要记录密码密码。

    ssh-keygen -t rsa

    #5 注册公钥文件
    cat id_rsa.pub >> authorized_keys
    chmod 644 authorized_keys
    cd ..
    chmod 700 .ssh

    #6 切换到root用户,修改ssh配置文件
    su root

    #7 开启RSA验证
    sed -i -e 's/#RSAAuthentication yes/RSAAuthentication yes/g' /etc/ssh/sshd_config
    sed -i -e 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/g' /etc/ssh/sshd_config
    sed -i -e 's/#AuthorizedKeysFile/AuthorizedKeysFile/g' /etc/ssh/sshd_config

    #8 禁止用户采用password登录
    sed -i -e 's/#AuthorizedKeysFile/AuthorizedKeysFile/g' /etc/ssh/sshd_config
    sed -i -e 's/PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config
    sed -i -e 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config

    #9 禁止用户以root身份进行登录
    sed -i -e 's/#PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config

    #10 修改端口号
    sed -i -e 's/#Port 22/Port 41042/g' /etc/ssh/sshd_config

    #11 修改iptables
    sed -i '11s/^/-A INPUT -m state --state NEW -m tcp -p tcp --dport 41042 -j ACCEPT /g' /etc/sysconfig/iptables
    service iptables restart

    #12 重启sshd服务

    PS:执行下面操作前,确认密码在本地,防止无法连接到远程主机。
    service sshd restart

  • 相关阅读:
    Java Output流写入包装问题
    SpringBoot项目单元测试不经过过滤器问题
    SpringSecurity集成启动报 In the composition of all global method configuration, no annotation support was actually activated 异常
    JWT jti和kid属性的说明
    Maven 排除依赖
    第五章 基因概念的发现
    第三章 孟德尔遗传的拓展
    第二章 孟德尔遗传
    第一章 引言
    GWAS全基因组关联分析
  • 原文地址:https://www.cnblogs.com/sgwjj/p/7551144.html
Copyright © 2020-2023  润新知