ssh туннелируют установка через шлюз, возможный?

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

Ваша догадка является правильной, всегда хорошо иметь две отдельных копии repo, один для разработки и один для живого развертывания, необходимо присвоить менеджеру по релизам для продвижения живого кода или иметь некоторую процедуру.

Позвольте всем продвинуть/вытянуть от дьявола repo и сохранить Ваше напоминание repo защищенным, затем каждый раз, когда код хорош для выхода, просто продвигают все необходимые изменения от дьявола repo к живому repo и продвигают оттуда ко всем живым серверам.

О полномочиях моя рекомендация состоит в том, чтобы всегда продвигать как пользователь, которого Вы пишете в, поэтому если Вы развертываетесь через ssh скрещенные ключи от Вашего пользователя развертывания (помните, должен быть разделен от дьявола для предотвращения искушения) www-пользователю-данных, если не только добавляют другой шаг в сценарии развертывания к chown файлы

2
задан 16 October 2013 в 07:14
2 ответа

Это зависит.

Является ли ваш шлюз настоящим шлюзом / маршрутизатором? или это шлюз / сервер?

Если это шлюз / маршрутизатор, то вы можете использовать переадресацию портов или NAT. Я бы дал вам инструкции, но это зависит от ОС / производителя. По сути, у вас есть шлюз / маршрутизатор, который прослушивает порт 22, и вы перенаправляете на пункт назначения: 9980 , пока пункт назначения прослушивает порт 9980, это должно работать автоматически.

Если это шлюз / сервер (при условии, что он основан на Linux), то вы можете использовать правило NAT IPTABLES или обратный туннель ssh (который должен быть инициализирован с конечной стороны).

ПРИМЕР IPTABLES NAT:

iptables -t nat -I PREROUTING --src 0/0 -p tcp --dport 22 -j REDIRECT --to-destination $destination_ip --to-ports 9980

Это будет принимать любой входящий трафик с любого адреса для порта 22 и автоматически перенаправлять его на ваш $ destination_ip на порт 9980. Для этого:

ssh -L 9980:remote:9980 gateway

свяжет ваш локальный 9980 с удаленным портом 9980, используя ssh-туннель через шлюз.

0
ответ дан 3 December 2019 в 11:45

Это зависит.

Ваш шлюз действительно является шлюзом / маршрутизатором? или это шлюз / сервер?

Если это шлюз / маршрутизатор, то вы можете использовать переадресацию портов или NAT. Я бы дал вам инструкции, но это зависит от ОС / производителя. По сути, у вас есть шлюз / маршрутизатор, который прослушивает порт 22, и вы перенаправляете на пункт назначения: 9980 , пока пункт назначения прослушивает 9980, это должно работать автоматически.

Если это шлюз / сервер (предполагается, что на базе Linux), то вы можете использовать правило NAT IPTABLES или обратный туннель ssh (который должен быть инициализирован с конечной стороны).

ПРИМЕР IPTABLES NAT:

iptables -t nat -I PREROUTING --src 0/0 -p tcp --dport 22 -j REDIRECT --to-destination $destination_ip --to-ports 9980

Это будет принимать любой входящий трафик с любого адреса для порта 22 и автоматически перенаправлять его на ваш $ destination_ip на порт 9980.

ПРИМЕР ОБРАТНОГО SSH-ТУННЕЛЯ:

destination# ssh -R 9980:localhost:22 user@gateway

Это устанавливает прослушиватель на шлюзе, который отображает все, что идет на шлюз: 9980 , на пункт назначения: 22

Для вас, если вы подключитесь к шлюзу как обычно:

local# ssh user@gateway

После этого вы сможете вручную подключиться к месту назначения со своего шлюза по мере необходимости вместо автоматического

gateway# ssh user@localhost:9980
2
ответ дан 3 December 2019 в 11:45

Теги

Похожие вопросы