## Ubuntu端口映射到外网的实现

欢迎来到这篇文章,本文将教会你如何将Ubuntu上的端口映射到外网。本文适合有一定Linux基础的开发者,希望你能跟着步骤一步步完成这个任务。首先,让我们看看整个操作的步骤:

| 步骤 | 操作 |
|------|----------|
| 1 | 安装并配置ssh服务 |
| 2 | 修改ssh配置文件 |
| 3 | 重新加载ssh服务 |
| 4 | 在路由器上配置端口转发 |

接下来,让我们逐步实现这些步骤。

### 步骤1:安装并配置ssh服务

首先,我们需要确保Ubuntu服务器上已经安装了ssh服务,如果没有安装,可以通过以下命令安装:

```bash
sudo apt-get update
sudo apt-get install openssh-server
```

安装完成后,我们需要对ssh配置文件进行修改。

### 步骤2:修改ssh配置文件

编辑ssh配置文件,找到并修改以下几个参数:

- **Port**: 修改ssh服务监听的端口号为外部访问的端口号,通常我们会选择一个不常用的端口号,比如2200。
- **ListenAddress**: 确保ssh服务监听所有接口,可以注释掉这一行,或者设置为0.0.0.0。
- **PermitRootLogin**: 禁止root用户直接登录,修改为`PermitRootLogin no`。

找到配置文件`/etc/ssh/sshd_config`,使用文本编辑器进行修改:

```bash
sudo nano /etc/ssh/sshd_config
```

保存修改并退出编辑器,接着重新加载ssh服务。

### 步骤3:重新加载ssh服务

在修改了配置文件后,我们需要重新加载ssh服务使其生效。

```bash
sudo systemctl reload sshd
```

现在ssh服务已经按照我们的需求进行了配置,接下来需要在路由器上做端口转发。

### 步骤4:在路由器上配置端口转发

打开路由器管理界面,找到端口转发设置,添加一条规则将服务器的端口映射到外部访问的端口上。

- **服务类型(Service Type)**: 选择TCP或者UDP,根据你的实际情况选择。
- **内部IP地址(Internal IP Address)**: 输入Ubuntu服务器的IP地址。
- **内部端口(Internal Port)**: 输入Ubuntu服务器上ssh服务的端口号,默认为22。
- **外部端口(External Port)**: 输入我们之前设置的ssh服务外部访问的端口号,比如2200。

保存设置并重新启动路由器。现在Ubuntu服务器的端口已经成功映射到外网。

通过以上步骤,我们成功将Ubuntu服务器上的端口映射到外网,实现了远程访问。希望这篇文章对你有所帮助,祝你工作顺利!