创建文件夹

mkdir asd

linux服务器常用命令

sudo rebot

删除目录.目录文件名和文件名不可相同在linux系统中

sudo rm -r /etc/systemd/system/apphub.service

更改目录权限

chmod -R a+rw /usr/share/nginx/html/

创建文件夹

mkdir test

查找特定服务的ip

ps aux | grep apphub

这会显示包含"apphub"的所有进程。找到你的服务进程,然后记下PID。

然后,你可以使用以下命令来查看该进程的网络连接:

sudo netstat -tunp | grep <PID>
sudo ss -tunp | grep <PID>

在这里,<PID>是你的服务进程的PID。这些命令会显示该进程的所有TCP和UDP连接。

在输出的每一行中,"Local Address"列显示了你的服务正在监听的地址和端口,"Foreign Address"列显示了与你的服务建立连接的远程地址和端口。

如果你的服务是客户端应用,即主动发起连接,那么"Local Address"就是源地址,"Foreign Address"就是目的地址。如果你的服务是服务器应用,即接受连接,那么情况就相反。

删除iptable规则

sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT

这些命令的含义如下:

  • -F :删除所有链中的规则。

  • -X :删除用户自定义的链。

  • -t nat-t mangle :选择要操作的表,natmangle 分别是iptables的两个表。

  • -P INPUT ACCEPT-P FORWARD ACCEPT-P OUTPUT ACCEPT :设置默认策略为接受。这意味着,如果一个数据包没有匹配到任何规则,那么默认的操作就是接受这个数据包。

请注意,这些命令需要root权限来执行。如果你没有登录为root,你需要使用sudo前缀来执行这些命

iptables规则限制连接数,

  1. 添加白名单规则:在设置限制规则之前,首先需要添加两个规则,允许来自这两个地址的所有请求:

   sudo iptables -I INPUT -p tcp -s 172.31.12.79 -j ACCEPT
   sudo iptables -I INPUT -p tcp -s 18.162.46.5 -j ACCEPT

这会将这两个IP地址添加到白名单。

  1. 设置连接限制:接下来,添加一个新的规则,限制其他地址的连接数:

   sudo iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 1000 -j REJECT

这将限制每分钟到端口80的新TCP连接数不超过500个。超过这个限制的连接将会被拒绝。

请注意,你需要将这些命令中的端口号(--dport 80)替换为你的服务实际使用的端口号。

再次提醒,iptables的规则是按顺序执行的,因此确保你先添加白名单规则,再添加限制规则。因为一旦一个包匹配了一个规则并被接受(ACCEPT)或拒绝(REJECT),后续的规则就不会再应用到这个数据包上。

最后,别忘了保存你的iptables规则,这样在重启后才能保留这些设置。具体的保存方法取决于你的系统配置,一种常

用的方法是使用命令sudo iptables-save

设置ip并发数连接

sudo iptables -A INPUT -p tcp --syn --dport 80 -m conntrack --ctstate NEW -m connlimit --connlimit-above 500 -j REJECT

查看iptables传递所有过滤规则

查看iptables的所有限制规则

在Linux系统中,你可以使用以下命令来检查iptables的所有规则:

sudo iptables -L -n -v

在这个命令中:

  • -L 选项用于列出所有的iptables规则。

  • -n 选项用于以数字形式显示地址和端口,这样可以防止iptables尝试解析它们,从而加快命令的执行。

  • -v 选项用于显示详细的输出,包括规则的使用计数和规则的其他详细信息。

这个命令会显示iptables的所有链中的规则,包括INPUTOUTPUTFORWARD链。每个规则都会在它所属的链中的一个特定位置,iptables会按照这个顺序来处理数据包。

除了上面的命令,你也可以使用以下命令来查看特定表的规则,比如filter表(这是默认的表,用于过滤数据包):

sudo iptables -t filter -L -n -v

请注意,查看iptables规则通常需要管理员权限,因此你可能需要在命令前添加sudo

删除iptables规则

在iptables中,删除一个规则需要知道它在链中的位置或者完全匹配到该规则。首先,我们需要列出所有规则以找到你想要删除的规则的位置。

运行以下命令查看INPUT链中的所有规则及其行号:

sudo iptables -L INPUT --line-numbers -n

找到你想要删除的规则的行号,然后使用以下命令删除它:

sudo iptables -D INPUT <line_number>

<line_number>替换为你想要删除的规则的行号。

另外,你也可以通过匹配规则的方式删除特定的规则,就像这样:

sudo iptables -D INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 500 -j REJECT

这将会删除与提供的规则完全匹配的规则。请注意,在iptables中,规则的顺序很重要。当你添加新的规则时,它将被添加到链的末尾,或者如果使用了-I选项,则会被插入到链的开头。当处理数据包时,iptables会从链的开头开始,匹配每一个规则,直到找到一个与数据包匹配的规则。

文章作者: 轻语清风
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 达达的博客
精选教程 教程
喜欢就支持一下吧