美文网首页安全
Linux_187_服务器安全与sshd配置

Linux_187_服务器安全与sshd配置

作者: 为宇绸缪 | 来源:发表于2022-06-29 10:40 被阅读0次

    ssh配置文件
    Linux强调一切皆文件,Linux系统更改各种软件的配置参数,也就是在修改文件内容而已
    sshd服务的配置文件,默认在 /etc/ssh/sshd_config
    grep -Ev '$|[# ]' /etc/ssh/sshd_config
    默认的sshd配置文件,如下

    HostKey /etc/ssh/ssh_host_rsa_key
    HostKey /etc/ssh/ssh_host_ecdsa_key
    HostKey /etc/ssh/ssh_host_ed25519_key
    SyslogFacility AUTHPRIV
    AuthorizedKeysFile .ssh/authorized_keys
    PasswordAuthentication yes
    ChallengeResponseAuthentication no
    GSSAPIAuthentication yes
    GSSAPICleanupCredentials no
    UsePAM yes
    X11Forwarding yes
    ClientAliveInterval 30
    ClientAliveCountMax 86400
    UseDNS no
    AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
    AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
    AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
    AcceptEnv XMODIFIERS
    Subsystem sftp  /usr/libexec/openssh/sftp-server
    Ciphers aes128-ctr,aes192-ctr,aes256-ctr
    

    在生产服务器下,运维人员一般会禁止root用户登录服务器,最大程度的保证服务器的安全,减少被黑客攻击的几率,以及修改ssh的远程连接端口

    • 修改ssh的端口:port 23354
    • 禁止root登录:PermitRootLogin no
    • 禁止用密码:PasswordAuthentication no

    port改为23354,将 AddressFamily解开注释(让ssh支持各种地址家族,同时支持ipv4和ipv6)。ListenAddress解注释,绑定这台机器的所有的网卡。PermitRootLogin no。PasswordAuthentication no

    修改/etc/ssh/sshd_config文件的如下参数,此时一个安全的ssh服务器以及配置,参数如下

    [root@yuweijie ~]# grep -Ev '^$|^[# ]' /etc/ssh/sshd_config 
    Port 23354
    AddressFamily any
    ListenAddress 0.0.0.0
    HostKey /etc/ssh/ssh_host_rsa_key
    HostKey /etc/ssh/ssh_host_ecdsa_key
    HostKey /etc/ssh/ssh_host_ed25519_key
    SyslogFacility AUTHPRIV
    PermitRootLogin no
    AuthorizedKeysFile .ssh/authorized_keys
    PasswordAuthentication no
    ChallengeResponseAuthentication no
    GSSAPIAuthentication yes
    GSSAPICleanupCredentials no
    UsePAM yes
    X11Forwarding yes
    ClientAliveInterval 30
    ClientAliveCountMax 86400
    UseDNS no
    AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
    AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
    AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
    AcceptEnv XMODIFIERS
    Subsystem sftp  /usr/libexec/openssh/sftp-server
    Ciphers aes128-ctr,aes192-ctr,aes256-ctr
    

    注意,此时别立即重启服务。配置一个普通用户的账号,且支持公钥登录的形式

    1、登录服务器,创建普通用户,设置登录密码
    useradd yuweijie
    passwd yuweijie

    2、在自己本地机器,生成一个普通用户的公私钥对
    ssh-keygen -t rsa

    3、发送公钥给服务器,配置公钥登录
    ssh-copy-id yuweijie@你的ip地址

    4、在正确配置了公私钥登录之后,yuweijie这个用户就可以免密登录Linux服务器了
    ssh yuweijie@你的ip地址

    在Linux机器上配置yuweijie用户支持sudo命令
    1、使用root登录服务器,配置yuweijie用户支持sudo命令
    vim /etc/sudoers 添加如下行
    yuweijie ALL=(ALL) ALL

    2、此时尝试用yuweijie用户登录,是否能够使用sudo命令

    最后一步,使用root账号,重启Linux的sshd服务器,以后root用户就无法使用密码登录了,只能用yuweijie这个用户进行免密登录,最大程度保证服务器的安全了

    1、使用root用户重启sshd服务
    ssh root@ip地址
    2、重启sshd服务
    systemctl restart sshd
    3、此时机器已经禁止root登录,禁止密码登录,且修改了ssh端口为23354
    4、此时只能使用配置好的yuweijie用户进行免密登录了
    ssh yuweijie@ip地址 -p 23354

    如果使用新的端口登录超时,是因为防火墙没有开对应的端口

    相关文章

      网友评论

        本文标题:Linux_187_服务器安全与sshd配置

        本文链接:https://www.haomeiwen.com/subject/xsytbrtx.html