То, что вы делаете, также можно назвать ssh-туннелированием.Преимущество в том, что ваш трафик будет зашифрован, но он также будет немного медленнее (шифрование / дешифрование выполняется ssh) и более ресурсоемким.Кроме того, туннель должен оставаться открытым для доступа к конечной точке.
Этот метод особенно полезен, если вы не заинтересованы в удаленном доступе к сервису, но хотите использовать его в частном порядке.
Например, у меня есть сервер couchdb, прослушивающий localhost: 5984, на моем хосте "server1" я могу сделать этот порт локально доступным через порт 22222 на моем настольном компьютере, выполнив:
desktop $ ssh -f user@server1 -L localhost:22222:server1:5984 -N
Thisспособ получить доступ к своему удаленному couchdb:
curl -X GET http://localhost:22222
И это несмотря на то, что удаленный сервер couchdb только прослушивает локальные соединения.Туннель SSH творит магию.