@midia21

Go get — connection refused, какие порты открывать?

Поставили задачу, для одной компании разработать проект. По некоторым обстоятельствам разработка может осуществляться только на их выделенном виртуально сервере. На сервере все запросы наружу закрыты)) Открыть определенные порты на определенные ip можно только подав запрос в отдел безопасности. Проект на golang - поэтому нужна возможность качать зависимости через github/gitlab, какие порты нужно открывать? Вроде открыли 80 и 443, но зависимости все ровно не скачиваются((

Заранее спасибо.
  • Вопрос задан
  • 244 просмотра
Пригласить эксперта
Ответы на вопрос 3
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Помимо HTTP(S), нужно как-то отрезолвить хосты, с которых предполагается скачивание - это ещё, как минимум, DNS.

Вообще, по-хорошему, это не ваше дело - разбираться, чего не хватает. Нормальный ИБ-отдел должен понимать задачи, сформулированные человеческим языком, вроде "мне нужно мочь скачивать информацию из интернета по HTTP, конкретно - зависимости для проекта из репозиториев".
Ответ написан
Комментировать
uvelichitel
@uvelichitel Куратор тега Go
habrahabr.ru/users/uvelichitel
Go get под капотом использует git.
git в качестве транспорта умеет использовать:
  • http - 80
  • https - 443
  • собственный протокол git - 9418
  • ssh - по умолчанию 22, но часто для безопасности меняют на кастомный(например 2222)

Для связи протоколами git и ssh вы ещё должны иметь пару rsa ключей -- приватный у себя и публичный на git сервере.
Ответ написан
Комментировать
Это неверный подход и с точки зрения ИБ и разворачивания ПО.
Для доступа к конечному серверу на Linux и разворачивания новых версий на нем достаточно лишь открытого порта для SSH, причем, необязательно 22. А собирать приложения стоит на отдельном сервере для сборки (негоже продакшн засорять всякими системами сборки). Это называется CI/CD. Ну или, хоть, на своем компьютере собирай, где хоть все порты открыты.
При использовании внешних хранилищ для скачивания артефактов сборки типа Docker Hub или AWS ECR требуется еще и открытый порт наружу 443 на хранилище.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы