Как настроить перенаправление порта для samba?

Как изменить порт для samba и ssh в операционной системе Linux (Fedora)? Я хочу изменить порт для samba, который в данный момент использует 1010, чтобы обеспечить доступ к нему через внешний IP-адрес в моей локальной сети. Кроме того, я также хотел бы узнать, как изменить порт для ssh.
  • 5 января 2024 г. 13:28
Ответы на вопрос 2
Чтобы изменить порт для Samba и SSH на Linux (в данном случае, Fedora), выполните следующие шаги:

### Изменение порта Samba:
Samba обычно использует следующие порты:
- TCP 139 (NetBIOS session service)
- TCP 445 (Microsoft-DS)

Если вы хотите изменить порты Samba, это нестандартная операция и не рекомендуется, так как может привести к проблемам с совместимостью и доступностью. Samba не предусматривает простого изменения портов через свою конфигурацию.

Вместо этого, если ваша цель перенаправить порт 1010 на стандартный порт Samba для доступа с внешних адресов, вам нужно настроить перенаправление портов на вашем маршрутизаторе или фаерволе.

### Настройка перенаправления порта:
Настройка перенаправления портов сильно зависит от вашего оборудования или используемой системы фаервола. Пример для `iptables`, который может работать на Fedora:

```bash
sudo iptables -t nat -A PREROUTING -p tcp --dport 1010 -j REDIRECT --to-ports 445
```

Это правило перенаправит весь трафик, приходящий на порт 1010, на порт 445, который используется Samba.

Не забудьте сохранить ваши правила iptables, чтобы они применялись после перезагрузки системы.

### Изменение порта SSH:
Для изменения порта SSH отредактируйте файл конфигурации SSH-сервера:

1. Откройте файл с помощью текстового редактора (например, `nano` или `vi`):

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

2. Найдите строки, начинающиеся со `#Port 22`. Удалите знак `#`, если он присутствует, и замените `22` на желаемый номер порта, например:

```conf
Port 2222
```

3. Сохраните файл и закройте редактор.

4. Перезапустите SSH-сервер, чтобы применить изменения:

```bash
sudo systemctl restart sshd
```

### Внимание:
После изменения порта SSH убедитесь, что вы добавили новый порт в список разрешенных в вашем фаерволе. Для `firewalld` на Fedora команда может выглядеть так:

```bash
sudo firewall-cmd --permanent --zone=public --add-port=2222/tcp
sudo firewall-cmd --reload
```

Обращайте внимание на возможные последствия изменений, такие как проблемы с подключением, если клиенты ожидают стандартные порты или если изменения не учтены в правилах фаервола.
Для самбы порты поменять нельзя, Microsoft не предусмотрела в протоколе такой возможности. На роутере должны быть проброшены порты 137-139 и 445 по TCP и UDP. 
Но, вообще, открывать самбу наружу - не самое лучшее решение.
Для ssh на роутере настраивайте проброс любого порта снаружи на 22 порт внутреннего сервера.
Похожие вопросы