2017-11-05 4 views
-1

wenn ich amazon ubuntu instance von amazon web console erstelle und versuche, mich mit ssh von jedem entfernten computer an dieser instanz anzumelden, kann ich mich anmelden, aber wenn ich ec2 instance mit anssible aws.yml file erstelle und versuche, das gleiche zu tun, kann ich nicht verbinden und erhielt einen Fehler Permission denied (publickey) von jedem Remote-Host mit Ausnahme von dem Host, in dem ich ansible Skript lief. Bin ich etwas falsch in meinem ansible Datei tunssh zu amazon ubuntu instance

Hier ist meine ansiblle yml Datei

auth: { 
    auth_url: "", 
    # This should be your AWS Access Key ID 
    username: "AKIAJY32VWHYOFOR4J7Q", 
    # This should be your AWS Secret Access Key 
    # can be passed as part of cmd line when running the playbook 
    password: "{{ password | default(lookup('env', 'AWS_SECRET_KEY')) }}" 
} 

# These variable defines AWS cloud provision attributes 
cluster: { 
    region_name: "us-east-1",  #TODO Dynamic fetch 
    availability_zone: "", #TODO Dynamic fetch based on region 
    security_group: "Fabric", 

    target_os: "ubuntu", 
    image_name: "ubuntu/images/hvm-ssd/ubuntu-xenial-16.04-amd64-*", 
    image_id: "ami-d15a75c7", 
    flavor_name: "t2.medium", # "m2.medium" is big enough for Fabric 
    ssh_user: "ubuntu", 
    validate_certs: True, 
    private_net_name: "demonet", 

    public_key_file: "/home/ubuntu/.ssh/fd.pub", 
    private_key_file: "/home/ubuntu/.ssh/fd", 
    ssh_key_name: "fabric", 
    # This variable indicate what IP should be used, only valid values are 
    # private_ip or public_ip 
    node_ip: "public_ip", 

    container_network: { 
    Network: "172.16.0.0/16", 
    SubnetLen: 24, 
    SubnetMin: "172.16.0.0", 
    SubnetMax: "172.16.255.0", 
    Backend: { 
     Type: "udp", 
     Port: 8285 
    } 
    }, 

    service_ip_range: "172.15.0.0/24", 
    dns_service_ip: "172.15.0.4", 

    # the section defines preallocated IP addresses for each node, if there is no 
    # preallocated IPs, leave it blank 
    node_ips: [ ], 

    # fabric network node names expect to be using a clear pattern, this defines 
    # the prefix for the node names. 
    name_prefix: "fabric", 
    domain: "fabricnet", 

    # stack_size determines how many virtual or physical machines we will have 
    # each machine will be named ${name_prefix}001 to ${name_prefix}${stack_size} 
    stack_size: 3, 

    etcdnodes: ["fabric001", "fabric002", "fabric003"], 
    builders: ["fabric001"], 

    flannel_repo: "https://github.com/coreos/flannel/releases/download/v0.7.1/flannel-v0.7.1-linux-amd64.tar.gz", 
    etcd_repo: "https://github.com/coreos/etcd/releases/download/v3.2.0/etcd-v3.2.0-linux-amd64.tar.gz", 
    k8s_repo: "https://storage.googleapis.com/kubernetes-release/release/v1.7.0/bin/linux/amd64/", 

    go_ver: "1.8.3", 

    # If volume want to be used, specify a size in GB, make volume size 0 if wish 
    # not to use volume from your cloud 
    volume_size: 8, 

    # cloud block device name presented on virtual machines. 
    block_device_name: "/dev/vdb" 
} 

Für Anmeldung:

Für die Anmeldung mit ssh ich diese Schritte tue.

1- Download private Schlüsseldatei.

2- chmod 600 privater Schlüssel.

3-ssh -vvv -i ~/.ssh/sshkeys.pem [email protected]

Ich erhalte Fehler Permission denied (publickey)

+0

Haben Sie den richtigen Instanznamen für dieses Bit angegeben: 'ubuntu @ ec.compute-1.amazonaws.com'? –

Antwort

1

Sie sollen die Schlüssel verwenden, die Sie für den Anschluss an AWS-Instanz erstellt.

Gehen Sie zu EC2-Dashboard und finden Sie Instanzen und klicken Sie auf verbinden auf der laufenden Instanz, die Sie zu SSH benötigen.

Es wäre so etwas wie ssh -i sein "XXX.pem" [email protected]

Speichern XXX.pem aus Sicherheitsgruppe zu Ihrer Maschine. Nicht das ssh keygen Ihres Systems

+0

Wie kann ich ein Schlüsselpaar herunterladen, nachdem sich das Gerät im laufenden Modus befunden hat? Ich habe das korrekte Schlüsselpaar vor der Erstellung der Instanz heruntergeladen, habe aber immer noch den gleichen Fehler –

+0

Sie sollten es von den Einstellungen abrufen können. –

+0

https://confluence.atlassian.com/bamkb/obtaining-aws-key-pair-to-access-amazon-elastic-instances-779166048.html –

Verwandte Themen