prefixkit Вопрос инженеруСпросить EN

Порт 22 SSH / SFTP

Защищённый удалённый доступ к серверу, передача файлов SFTP и SCP, Git по SSH.

Протокол
TCP
Служба
SSH / SFTP
Открывать в интернет
Открывать с осторожностью

Проверить, открыт ли порт 22

Безопасно ли открывать

Не оставляйте удалённый доступ открытым всему интернету: боты перебирают пароли круглосуточно. Спрячьте его за VPN (WireGuard, IPsec) или разрешите только свои адреса, используйте ключи или длинные пароли и защиту от перебора (fail2ban, блокировка учётных записей).

Как открыть порт 22

Открыть всем

# Linux iptables
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Ubuntu ufw
ufw allow 22/tcp
# firewalld
firewall-cmd --permanent --add-port=22/tcp && firewall-cmd --reload
# MikroTik
/ip firewall filter add chain=input protocol=tcp dst-port=22 action=accept place-before=0 comment="port 22"
# Windows (PowerShell)
New-NetFirewallRule -DisplayName "Port 22 TCP" -Direction Inbound -Protocol TCP -LocalPort 22 -Action Allow

Только для своих адресов

# allow only one address or network (replace 203.0.113.0/24)
iptables -A INPUT -p tcp --dport 22 -s 203.0.113.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
ufw allow from 203.0.113.0/24 to any port 22 proto tcp
/ip firewall filter add chain=input protocol=tcp dst-port=22 src-address=203.0.113.0/24 action=accept
/ip firewall filter add chain=input protocol=tcp dst-port=22 action=drop

Если сервер за роутером, нужен ещё проброс порта (dst-nat) на роутере. За CGNAT провайдера (адрес 100.64.0.0/10 на WAN) проброс не поможет — нужен белый IP или VPN.

Кто слушает порт

Проверка на сервере

# what listens on the port
ss -lntup | grep ':22 '
netstat -ano | findstr :22   # Windows
lsof -i :22   # macOS
# test from another machine
nc -vz example.com 22

Похожие порты