• 关于nginx安装、iptables设置和查看端口指令netstat/ss


    实验1:

    Nginx介绍

    Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。

    在高连接并发的情况下,Nginx是Apache服务器不错的替代品。

    Nginx安装

    首先使用以下命令安装nginx源

    rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

    Nginx源安装完成后,使用yum命令进行安装

    yum install -y nginx

    使用nginx命令启动nginx,使用nginx查看配置是否正确

    Nginx 常用的命令:

    重新载入配置文件               nginx -s reload 

    重启                                     nginx -s reopen

    停止                                     nginx -s stop

    验证是否成功

    使用ifconfig查看虚拟机ip,使用本机浏览器进行打开

    实验2

    这次实验我使用的是centos7.6版本,使用iptables时一些命令老是找不到,所以我先把系统自身的firewall禁了(不知道有没有必要,只是觉得可能会影响到实验的效果所以就禁用了),然后重新安装iptables进行的实验

    下面是我的版本CentOS版本

    禁用firewall防火墙

    首先停止firewall防火墙,将防火墙禁用,然后查看状态

    systemctl stop firewalld

    systemctl disable firewalld

    systemctl status firewalld

    安装iptables

    yum install  -y iptables  iptables-services

     

    查看iptables

    设置iptables为开机启动

    设置iptables默认拒绝所有

    iptables -P INPUT DROP
    iptables -P FORWARD DROP
    iptables -P OUTPUT DROP

     

    使用putty连接虚拟机实验一下,发现报错了连接超时,这说明22端口已经无法使用

    这样设置只是暂时的, 重启虚拟机将还原修改之前的状态,想要保存的话需要使用一下命令(如果报错了的话,就进行上面操作就能解决)
    service iptables save

    开启ssh端口22(http只要添加80端口即可)

    iptables -A INPUT -p tcp --dport 22 -j ACCEPT

    iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT

    使用putty连接成功,说明端口22已经开启

     通过 iptables -L -n --line-number 可以显示规则和相对应的编号,如下图所示

    如果想要进行删除的话,只要使用iptables -D+类型+编号,即可删除,比如
    iptables -D INPUT 2

    实验3

    使用netstat -ano进行端口扫描(通常都是-ano具体指令可以用netstat --help查看)

    netstat --help

    netstat [选项]

    -a或--all:显示所有连线中的Socket;

    -A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址;

    -c或--continuous:持续列出网络状态;

    -C或--cache:显示路由器配置的快取信息;

    -e或--extend:显示网络其他相关信息;

    -F或--fib:显示FIB;

    -g或--groups:显示多重广播功能群组组员名单;

    -h或--help:在线帮助;

    -i或--interfaces:显示网络界面信息表单;

    -l或--listening:显示监控中的服务器的Socket;

    -M或--masquerade:显示伪装的网络连线;

    -n或--numeric:直接使用ip地址,而不通过域名服务器;

    -N或--netlink或--symbolic:显示网络硬件外围设备的符号连接名称;

    -o或--timers:显示计时器;

    -p或--programs:显示正在使用Socket的程序识别码和程序名称;

    -r或--route:显示Routing Table;

    -s或--statistice:显示网络工作信息统计表;

    -t或--tcp:显示TCP传输协议的连线状况;

    -u或--udp:显示UDP传输协议的连线状况;

    -v或--verbose:显示指令执行过程;

    -V或--version:显示版本信息;

    -w或--raw:显示RAW传输协议的连线状况;

    -x或--unix:此参数的效果和指定"-A unix"参数相同;

    --ip或--inet:此参数的效果和指定"-A inet"参数相同。

    只显示tcp的话就是netstat -t;显示所有tcp的话就是netstat -at

    使用ss -als进行端口扫描(常用的就是-als)

    ss -a 查看机器的socket连接数
    ss -l 查看机器的端口情况
    ss -s 查看机器的网络连接数

    ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。

  • 相关阅读:
    this_is_flag
    攻防世界-misc-如来十三掌
    攻防世界-misc-pdf
    nextcloud取消新用户的默认文件
    nextcloud开放注册-添加注册功能
    图片马制作
    Npoi Web 项目中(XSSFWorkbook) 导出出现无法访问已关闭的流的解决方法
    VS2017 如何安装水晶报表 VS2017 如何下载相应版本的水晶报表 VS2017 水晶报表 中文乱码
    js 带有返回值的 匿名方法
    varchar nvarchar 设计长度时 设计成 (2^n)-1 的好处
  • 原文地址:https://www.cnblogs.com/hai-long/p/10551021.html
Copyright © 2020-2023  润新知