📜  linux 开放端口 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:32:41.985000             🧑  作者: Mango

Linux 开放端口 - Shell-Bash

在 Linux 中,开放端口通常用于使另一个设备或计算机能够连接到我们的计算机。由于安全方面的考虑,仅需要开放必要的端口。在本文中,我们将介绍如何在 Linux 中使用 Shell-Bash 开放端口。

开放端口的必要性

开放端口是让不同设备互相访问的前提。比如说,在服务器上运行一个应用程序,我们常常要开放相应端口,使得客户端可以通过该端口访问我们的应用程序。然而,我们必须谨慎选择哪些端口需要开放。不必要的开放可能会给我们的计算机带来安全风险,因此必须确保只开放必要的端口。

开放端口的步骤

以下是使用 Shell-Bash 开放端口的基本步骤:

  1. 打开终端并登录到您的 Linux 服务器或计算机。
  2. 使用 iptables 命令添加新的规则或修改现有规则。命令的语法如下:
iptables -A INPUT -p tcp --dport <port_number> -j ACCEPT
  1. <port_number> 替换为您要开放的端口号。
例子

以下是一个示例命令,用于开放端口 80:

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

如果您要开放的是 UDP 端口,只需将 -p tcp 替换为 -p udp 即可。

持久化

上述步骤开放端口无法立即生效,当您下次重新启动服务器或计算机时,之前设置的规则将会失效。因此,我们需要持久化这些规则,使它们能够在服务器或计算机重新启动后保存。

在 Ubuntu/Debian 等 Linux 发行版中,可以使用 iptables-persistent 包来持久化 iptables 规则。 在 CentOS/Fedora/RHEL 等发行版中,可以使用 iptables-services 包来持久化规则。

例子

以下是 Ubuntu/Debian 等发行版使用 iptables-persistent 包持久化规则的例子:

  1. 安装 iptables-persistent 包:
sudo apt-get update && sudo apt-get install -y iptables-persistent
  1. 添加规则:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  1. 保存规则:
sudo iptables-save >/etc/iptables/rules.v4
  1. 将以上代码片段保存为文件 iptables.sh 并设置其可执行权限:
sudo chmod +x /path/to/iptables.sh
  1. 修改 rc.local 文件,添加启动脚本:
sudo nano /etc/rc.local

添加以下内容:

/path/to/iptables.sh
  1. 重启服务器或计算机。
结论

在 Linux 中使用 Shell-Bash 开放端口是一项重要任务。在打开端口之前,请仔细考虑哪些端口是必要的。开启的端口越多,安全风险就越高。在持久化设置过程中,请遵循厂商提供的规则,并检查是否生效。