Назад | Перейти на главную страницу

EC2 Security Group, ограничить входящий доступ по имени хоста

Я написал веб-ловушку для PayPal IPN и хочу разрешить доступ с серверов PayPal через порт 80/443 только к экземпляру EC2, на котором размещена конечная точка.

В консоли группы безопасности EC2 я могу фильтровать только по IP / диапазону. Этого недостаточно, поскольку PayPal заявляет, что они меняют IP-адрес случайным образом и без предварительного уведомления, поэтому необходимо использовать имена хостов.

Я видел здесь ответы, в которых рекомендуется расширить блок IP и т. Д., Но нет реального прямого решения. Одно из предлагаемых решений заключалось в обновлении группы безопасности с помощью API AWS.

Это лучший вариант? Что я мог бы сделать, так это запланировать задачу для сравнения текущего IP-адреса, разрешенного хостом PayPal, с последним известным IP-адресом. Если они разные, обновите группу AWS EC2.

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

Это наиболее подходящее решение? Я сделаю то же самое для своего дома, где у меня есть аналогичная проблема.

Группы безопасности не выполняют фильтрацию имен хостов, только диапазоны IP-адресов или другие логические ссылки в AWS.

Поскольку AWS предлагает API для SG, вы можете обновлять их по мере изменения IP-адресов, хотя этот метод кажется слишком хрупким для производственной службы.

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

AWS предлагает подробное руководство по установке и настройке squid здесь. https://aws.amazon.com/articles/6884321864843201

Это небольшой фрагмент, который поможет вам понять, в чем дело:

$ sudo vim /etc/squid/squid.conf

acl s3 dstdom_regex .*s3\.amazonaws\.com
acl s3 dstdom_regex .*s3\.ap-southeast-2\.amazonaws\.com
acl s3 dstdom_regex .*s3\.ap-southeast-1\.amazonaws\.com
http_access allow localnet s3

$ sudo service squid restart

Должна ли фильтрация выполняться на уровне AWS. Вы можете добавить дополнительный программный брандмауэр в экземпляр (или в качестве другого экземпляра между IGW и экземпляром), Pfsense должен разрешить блокировку брандмауэра на основе имени хоста.