Невозможно соединиться с созданным terraform AWS экземпляром через ssh - PullRequest
0 голосов
/ 05 января 2020

Я пытаюсь использовать terraform, чтобы раскрутить VP C и один экземпляр, а затем подключиться через s sh, но я не могу. Я знаю, что у меня нет ключей здесь, но я пытаюсь просто подключиться через веб-терминал, и он по-прежнему говорит

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

Кто-нибудь может посмотреть мой код и увидеть, что я делаю неправильно?

provider "aws" {
    region = "us-east-2"
}

resource "aws_vpc" "vpc" {
    cidr_block = "10.0.0.0/16"
    enable_dns_hostnames = true
    enable_dns_support = true
    tags = {
        Name = "test"
    }
}

resource "aws_internet_gateway" "gateway" {
    vpc_id = "${aws_vpc.vpc.id}"

    tags = {
        Name = "test"
    }
}

resource "aws_subnet" "subnet" {
    vpc_id = "${aws_vpc.vpc.id}"
    cidr_block = "${aws_vpc.vpc.cidr_block}"
    availability_zone = "us-east-2a"
    map_public_ip_on_launch = true

    tags = {
        Name = "test"
    }
}

resource "aws_route_table" "table" {
    vpc_id = "${aws_vpc.vpc.id}"

    route {
        cidr_block = "0.0.0.0/0"
        gateway_id = "${aws_internet_gateway.gateway.id}"
    }

    tags = {
        Name = "test"
    }

}

resource "aws_route_table_association" "public" {
    subnet_id = "${aws_subnet.subnet.id}"
    route_table_id = "${aws_route_table.table.id}"
}

resource "aws_instance" "node" {
    #ami = "ami-0d5d9d301c853a04a" # Ubuntu 18.04
    ami = "ami-0d03add87774b12c5" # Ubuntu 16.04
    instance_type = "t2.micro"
    subnet_id = "${aws_subnet.subnet.id}"
}

UPDATE1 : я добавил key_name = "mykey", который я ранее создал. Я не могу пропинговать ip publi c и при попытке s sh с ключом я получаю следующее:

$ ssh -v -i ~/.ssh/mykey ubuntu@1.2.3.4
OpenSSH_7.9p1, LibreSSL 2.7.3
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 48: Applying options for *
debug1: Connecting to 1.2.3.4 [1.2.3.4] port 22.

, где mykey и 1.2.3.4 были изменены для публикации.

ОБНОВЛЕНИЕ2 : Глядя на группу безопасности, я не вижу ничего выдающегося. ACL для этого имеет следующее:

Rule # Type          Protocol Port Range Source      Allow / Deny
100    ALL Traffic   ALL      ALL        0.0.0.0/0   ALLOW
*      ALL Traffic   ALL      ALL        0.0.0.0/0   DENY

Это проблема? Кажется, что никто не видит проблемы с кодом terraform, поэтому, если кто-то может подтвердить, что это не проблема с кодом, то я думаю, что это можно закрыть и перенести на другую доску, так как это не будет проблемой кода, правильно?

Ответы [ 2 ]

0 голосов
/ 05 января 2020

Веб-консоль использует S SH для подключения, поэтому вам все равно нужно настроить клавишу S SH. Единственный способ подключения без настроенного ключа S SH и открытого порта 22 в группе безопасности - использовать диспетчер сеансов AWS Systems Manager, но для этого требуется агент SSM, работающий на экземпляре EC2, и соответствующие роли IAM, назначенные к экземпляру.

0 голосов
/ 05 января 2020

Вы не указали имя ключа , чтобы указать, какую пару ключей S SH использовать.

Если у вас нет aws_key_pair , вы также необходимо создать один.

...