I am setting up a few EC2 instances in a shared AWS account and want to give them access to each other. At the same time I want to prohibit access from other instances in the account.
I created a security group and added SSH access from "My IP" for logging in and that works well.
Now I need to SSH between all of the instances but I can't even though they are all in the same security group.
How can I do that?
Итак, вы настраиваете какой-то кластер на AWS и вам нужен SSH-доступ между узлами, верно? У вас есть 2 варианта:
Наивный вариант - добавить каждый IP-адрес экземпляра в список входящей группы безопасности, но это означает, что вам нужно будет обновлять SG каждый раз, когда вы добавляете новый экземпляр в кластер. (Если вы когда-нибудь сделаете это). Не делайте этого, Я упомянул это только для полноты.
Намного лучше использовать сам идентификатор группы безопасности в качестве источника трафика .
Важно понимать, что SG является не только входящим фильтром , но также помечает весь исходящий трафик - и затем вы можете ссылаться на исходный идентификатор SG в такие же или другие группы безопасности.
Посмотрите на группу безопасности по умолчанию в вашем VPC. Скорее всего, вы увидите что-то вроде этого:
Обратите внимание, что правило относится к самому идентификатору группы безопасности .
С помощью этого правила все, что исходит от любого хоста, входящего в ваша группа безопасности будет принята всеми другими участниками / экземплярами в группе.
В вашем случае вы можете захотеть ограничить ее SSH, ICMP (если вам нужен ping
рабочий) или любые другие порты, которые вы нужно.
Также проверьте вкладку Исходящий и убедитесь, что в ней есть запись для Весь трафик на 0.0.0.0/0
(если у вас нет конкретных безопасность), иначе экземпляры не смогут инициировать исходящие соединения. По умолчанию он должен быть там.
Надеюсь, что это поможет :)
В конфигурации для вашей группы безопасности, которую вы хотите использовать для разрешения SSH между экземплярами:
Вы должны добавить правило, которое включает SSH, где источником является сам идентификатор группы.
Например. если ваш идентификатор группы безопасности sg-12345678
, вы можете добавить правило в эту самую группу, которая открывает SSH из sg-12345678
.
Также убедитесь, что что на вкладке Исходящий есть правило для 0.0.0.0/0
или, по крайней мере, еще раз для SSH на sg-12345678
, иначе исходящий трафик будет заблокирован. По умолчанию 0.0.0.0/0
должен быть там.