• 服务器配置用户信息、ssh免密码登录和防火墙等安全配置


    一、登录服务器

          1、回到根目录 cd ~ 

          2、ssh + 用户名@服务器公网地址 ssh root@47.94.208.76

          3、输入密码:注意输入法大小写

    二、查看服务器信息

          df -h  查看数据盘的文件空间剩余信息

        fdisk -l   查看磁盘信息

      用户列表文件:/etc/passwd
      用户组列表文件:/etc/group

      查看系统中有哪些用户:cut -d : -f 1 /etc/passwd
      查看可以登录系统的用户:cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1
      查看用户操作:w命令(需要root权限)
      查看某一用户:w 用户名
      查看登录用户:who
      查看用户登录历史记录:last

    三、登出服务器

      contrl + d

    四、shell小工具zsh安装

      1、安装方法见官网:https://ohmyz.sh/

      2、vim .zshrc 打开zsh配置文件

      3、在最后一行添加别名:alias login_root="ssh root@47.94.208.76"

      4、保存并退出后 source .zshrc 重新加载文件资源

      5、在命令行输入login_root  会直接跳到ssh root@47.94.208.76 登录

    五、添加和配置新的用户信息

      1、useradd system_manager 添加新用户

      2、passwd system_manager 设置用户密码

      3、groupadd sudo  创键组

      4、gpasswd -a system_manager sudo 将用户追加到组

      5、sudo visudo  打开配置文件

      6、增加system_manager ALL=(ALL) ALL  使用户有和root一样的权限

      7、在root用户下重启 systemctl restart sshd

    六、登录新用户

      1、command+t 新开一个命令行

      2、ssh system_manager@47.94.208.76  登录新用户

    七、配置ssh实现无密码登录

      本地私钥--本地传到服务器的公钥--密钥算法比对--登录成功

      1、进入本地根目录,找到.ssh文件夹

        cd ~

        ls -a

        cd .ssh

        会看到如下文件,其中id_rsa为私钥,id_rsa.pub为公钥

      2、将以上两个文件重命名,如果之前已经生成过私钥和公钥,先把他们备份下来:

        mv id_rsa id_rsa_copy

        mv id_rsa.pub id_rsa_copy.pub

      3、回到根目录cd ~  配置:

        ssh-keygen -t rsa -b 4096 -C "1095098525@qq.com"   密码提示一直回车就行    

      4、回到.ssh文件夹下,看到生成了两个文件,就是私钥和公钥:

      5、在.ssh文件夹下,查看私钥和公钥

        cat id_rsa

        cat id_rsa.pub    

      6、在.ssh文件夹下,将ssh代理跑起来:

        eval "$(ssh-agent -s)"

      7、在.ssh文件夹下,将文件加入代理中:

        ssh-add ~/.ssh/id_rsa    

      8、登录服务器,重复在本地电脑生成私钥和公钥的步骤。

      9、在服务器的.ssh文件夹下,查看是否存在权限文件(只对当前用户有效)。

      10、将本地电脑的公钥(id_rsa.pub)复制到服务器的authorized_keys文件夹里面。

      11、在服务器的.ssh文件夹下,赋予权限的操作:chmod 600 authorized_keys

      12、在服务器的.ssh文件夹下,重启ssh服务:systemctl restart sshd

      13、重新登录root用户,就可以不用输入密码直接登录啦,其他用户同样的方式!

    八、增强服务器安全配置

      1、用root账号登录,保持登录状态,避免用新的端口登录不成功而导致无法登陆服务器。

        在服务器管理后台添加端口

        

      2、command+t 新开一个控制台窗口,用system_manager登录下:

        sudo vi /etc/ssh/sshd_config  打开ssh配置文件

      3、修改端口:保留22端口  添加port: 8290

        

      4、在最后一行添加:AllowUsers system_manger

      5、禁止root账号登录:

        将上图PermitRootLogin 改成no

      6、重启:

         sudo systemctl restart sshd 

      7、用新的端口登录

        ssh -p 8290 system_manager@47.94.208.76

          如果报错信息,可在另一个已经登录的账号下将/etc/ssh/sshd_config文件复原,采用默认的22端口,也可以在阿里云管理终端登录修改

      配置防火墙部分:

      8、由于在Centos7下,默认有firewalld,打开防火墙,发现用此端口登录不上:

        systemctl start firewalld

      9、查看端口8290是否开启;

        firewall-cmd --query-port=8290/tcp   返回no  说明没有开启

      10、防火墙永久开启端口:

        firewall-cmd --zone=public --add-port=8290/tcp --permanent

        命令含义 : --zone #作用域 , --add-port=80/tcp #添加端口 , 格式为 : 端口/通讯协议 , --permanent #永久生效 , 没有此参数重启后失效

      11、重启防火墙:

        firewall-cmd --reload    

      12、关闭端口命令:firewall-cmd --zone=public --remove-port=3306/tcp --permanent

      13、查看防火墙状态: systemctl status firewalld

      14、开启防火墙开机自启动:systemctl enable firewalld

      15、停止开机启动:sytemctl disable firewalld

      16、查看防火墙永久开放的端口: firewall-cmd --permanent --list-port

      17、查看防火墙配置信息列表: firewall-cmd --list-all

       禁用22端口,只允许用新端口登录:

      firewall-cmd --query-port=8290/tcp    返回 yes 说明此端口防火墙开通

      修改vi /etc/ssh/sshd_config    ssh配置文件  将22端口删除

      重启ssh: ystemctl restart sshd

      用新的端口登录 ssh -p 8290 root@47.94.208.76

     九、管理终端远程登录:

      https://help.aliyun.com/document_detail/25433.html?spm=a2c4g.11186623.2.14.f8de7c60SVNZdE

    十、ubantu下用iptables建立防火墙 

      1、清空 iptables 规则: iptables -F

      2、vim /etc/iptables.up.rules

    *filter
    #allow all connections
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

     #mongodb connect
     -A INPUT -s 127.0.0.1 -p tcp --destination-port 27017 -m state --state NEW,ESTABLISHED -j ACCEPT
     -A OUTPUT -d 127.0.0.1 -p tcp --source-port 27017 -m state --state ESTABLISHED -j ACCEPT

    #allow out traffic
    -A OUTPUT -j ACCEPT
    
    #allow http https
    -A INPUT -p tcp --dport 443 -j ACCEPT
    -A INPUT -p tcp --dport 80 -j ACCEPT
    
    #allow ssh port login
    -A INPUT -p tcp -m state --state NEW --dport 8290 -j ACCEPT
    
    #ping
    -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
    
    #log dejied calls
    -A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied:" --log-level 7
    
    #drop incoming sensitive connections
    -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
    -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 150 -j DROP
    
    #reject all other inbound
    -A INPUT -j REJECT
    -A FORWARD -j REJECT
    
    COMMIT

    3、iptables-restore < /etc/iptables.up.rules

    4、ufw enable

    5、ufw status

    6、vi /etc/network/if-up.d/iptables

    #!/bin/sh
    iptables-restore /etc/iptables.up.rules

    7、chmod +x /etc/network/if-up.d/iptables

    8、ubantu用apt-get安装fail2ban

      service fail2ban status

      service fail2ban stop

      service fail2ban start

  • 相关阅读:
    3.无重复字符的最长字串
    k-近邻算法(KNN)
    决策树
    解决anaconda与pycharm冲突导致import无法使用
    2.两数相加
    1.两数之和
    数学建模第七章 数理统计
    数学建模第六章 微分方程建模
    Web(4)servlet
    阿里云卸载自带的JDK,安装JDK完成相关配置
  • 原文地址:https://www.cnblogs.com/angelatian/p/10072250.html
Copyright © 2020-2023  润新知