AWS ssh অ্যাক্সেস 'অনুমতি অস্বীকার (পাবলিককি)' ইস্যু [বন্ধ]


284

Ssh এর মাধ্যমে কীভাবে AWS উদাহরণের সাথে সংযোগ স্থাপন করবেন?

আমার আছে:

  1. AWS এ সাইন আপ করেছেন;
  2. এডাব্লুএস ওয়েবসাইটে একটি সর্বজনীন কী এবং একটি শংসাপত্র তৈরি করে এবং সেগুলি ডিস্কে সংরক্ষণ করে;
  3. আমার কনসোলটিতে গিয়ে পরিবেশের ভেরিয়েবলগুলি তৈরি হয়েছিল:

    $ export JAVA_HOME=/usr/lib/jvm/java-6-openjdk/
    $ export EC2_CERT=/home/default/aws/cert-EBAINCRNWHDSCWWIHSOKON2YWGJZ5LSQ.pem
    $ export EC2_PRIVATE_KEY=/home/default/aws/pk-EBAINCRNWHDSCWWIHSOKON2YWGJZ5LSQ.pem
    
  4. এই কী-কেয়ারটি ব্যবহার করতে এডাব্লুএস এপিআইকে বলে এবং কীপাইয়ারটি ফাইলটিতে সংরক্ষণ করে:

    $ ec2-add-keypair ec2-keypair > ec2-keypair.pem
    
  5. এই কী-পেয়ারটি ব্যবহার করে একটি এডাব্লুএস উবুন্টু 9 টি সূচনা শুরু হয়েছে:

    $ ec2-run-instances ami-ed46a784 -k ec2-keypair
    
  6. দৃষ্টান্তটির সাথে একটি এসএসএস সংযোগ স্থাপনের চেষ্টা করা হয়েছে:

    $ ssh -v -i ec2-keypair.pem ubuntu@ec2-174-129-185-190.compute-1.amazonaws.com
    OpenSSH_5.1p1 Debian-5ubuntu1, OpenSSL 0.9.8g 19 Oct 2007
    debug1: Reading configuration data /etc/ssh/ssh_config
    debug1: Applying options for *
    debug1: Connecting to ec2-174-129-185-190.compute-1.amazonaws.com [174.129.185.190] port 22.
    debug1: Connection established.
    debug1: identity file ec2-keypair.pem type -1
    debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1p1 Debian-5ubuntu1
    debug1: match: OpenSSH_5.1p1 Debian-5ubuntu1 pat OpenSSH*
    debug1: Enabling compatibility mode for protocol 2.0
    debug1: Local version string SSH-2.0-OpenSSH_5.1p1 Debian-5ubuntu1
    debug1: SSH2_MSG_KEXINIT sent
    debug1: SSH2_MSG_KEXINIT received
    debug1: kex: server->client aes128-cbc hmac-md5 none
    debug1: kex: client->server aes128-cbc hmac-md5 none
    debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
    debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
    debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
    debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
    debug1: Host 'ec2-174-129-185-190.compute-1.amazonaws.com' is known and matches the RSA host key.
    debug1: Found key in /home/default/.ssh/known_hosts:11
    debug1: ssh_rsa_verify: signature correct
    debug1: SSH2_MSG_NEWKEYS sent
    debug1: expecting SSH2_MSG_NEWKEYS
    debug1: SSH2_MSG_NEWKEYS received
    debug1: SSH2_MSG_SERVICE_REQUEST sent
    debug1: SSH2_MSG_SERVICE_ACCEPT received
    debug1: Authentications that can continue: publickey
    debug1: Next authentication method: publickey
    debug1: Trying private key: ec2-keypair.pem
    debug1: read PEM private key done: type RSA
    debug1: Authentications that can continue: publickey
    debug1: No more authentication methods to try.
    Permission denied (publickey).
    

    কী কী সমস্যা হতে পারে এবং কীভাবে এটি কাজ করবে?


2
অদ্ভুত যে আমি ব্যবহারকারীর নাম হিসাবে "রুট" ব্যবহার করি তবে "উবুন্টু" (আপনি যা উল্লেখ করেছেন) আমার এএমআইয়ের সঠিক নাম এবং আপনার পোস্টের জন্য আপনাকে ধন্যবাদ!
realjin

উত্তর:


512

উবুন্টু উদাহরণগুলির জন্য:

chmod 600 ec2-keypair.pem
ssh -v -i ec2-keypair.pem ubuntu@ec2-174-129-185-190.compute-1.amazonaws.com

অন্যান্য উদাহরণগুলির জন্য, আপনাকে এর ec2-userপরিবর্তে ব্যবহার করতে হতে পারে ubuntu

বেশিরভাগ ইসি 2 লিনাক্স চিত্রগুলি আমি ব্যবহার করেছি কেবলমাত্র ডিফল্টরূপে তৈরির ব্যবহারকারী।

আরও দেখুন: http://www.youtube.com/watch?v=WBro0TEAd7g


6
তুমি রক! এত সুন্দর!
অ্যালেক্স

50
আপনি এসএস-অ্যাড ইক 2-কীপায়ার.পিএমও ব্যবহার করতে পারেন যাতে আপনি -i বিকল্পটি ফেলে দিতে পারেন
আদমেকে

12
যদি আপনি রুট চেষ্টা করুন এবং আপনি ব্যবহার "মূল ব্যবহারকারী EC2-ইউজার ব্যবহারকারী বদলে। 'হিসেবে লগইন করুন" পেতে EC2-ইউজার মূল জায়গায়।
টনি

8
এবং কিছু উবুন্টু চিত্রের মনে হয় কেবল "উবুন্টু" ব্যবহারকারী রয়েছে। (যা শিকড়কে যেতে পারে))
অধ্যাপক ফ্যালকেন চুক্তি

1
সুপার, সুপার দরকারী।
এনএসকোডার

93

এখন এটা:

ssh -v -i ec2-keypair.pem ec2-user@[yourdnsaddress]

ধন্যবাদ। এটি খুঁজে বার করতে আমার বয়স হয়েছিল - এটি কনসোল থেকে সংযুক্ত তথ্যে উল্লেখ করা হয়নি! আপনি রুটটি ব্যবহার করার চেষ্টা করার সময় এটি আপনাকে জানায় না, তবে আমি ভেবেছিলাম যে ইক্য 2 ব্যবহারকারী আমার ব্যবহারকারীর নাম। ডোহ!
অ্যাড্রিয়ান মৌআত

1
ওহ মানুষ. সন্ধান করার মতো সহজ টিডবিট নয়। ধন্যবাদ!
vroomfondel

ধন্যবাদ, সহজ টিআই

খুব ভালো! ধন্যবাদ!
ভায়ানা

46

ক্যানোনিকাল এর রিলিজগুলি একই সমস্যাটি নিয়ে আসা একটি উবুন্টু চিত্র নিয়ে যে কেউ এখানে অবতরণের জন্য ডিফল্টরূপে ব্যবহারকারী 'উবুন্টু' ব্যবহার করে।


2
এটি খুঁজে বের করা সহজ নয়।
গুস্তাভ

17

আপনি যদি একটি বিটনামি চিত্র ব্যবহার করেন তবে 'বিটনামি' হিসাবে লগ ইন করুন।

সুস্পষ্ট বলে মনে হচ্ছে তবে কিছু উপেক্ষা করেছি।


আপনার উত্তর আমার দিন বাঁচায়!
সূর্য

2
মানে? Seems <sarcasm>obvious</sarcasm>
বব স্টেইন

কীভাবে ডাটাবেস পাসওয়ার্ডগুলি খুঁজে পাওয়া যায় সেগুলি সহ বিটনামির নির্দেশাবলী
বব স্টেইন

8

আমার উবুন্টু চিত্রগুলির জন্য, এটি আসলে উবুন্টু ব্যবহারকারী এবং ইসি 2-ব্যবহারকারী নয়;)


5

ওপেনএসএইচ সহ উবুন্টু 10.04

এটি হ'ল সঠিক ব্যবহার:

ssh -v -i [yourkeypairfile] ec2-user@[yourdnsaddress]

উদাহরণ স্বরূপ:

ssh -v -i GSG_Keypair.pem ec2-user@ec2-184-72-204-112.compute-1.amazonaws.com

উপরের উদাহরণটি লিনাক্স / ইউএনআইএক্স মেশিনে সংযুক্ত করার জন্য সরাসরি এডাব্লুএস টিউটোরিয়াল থেকে নেওয়া হয়েছিল: http://docs.amazonwebservices.com/AWSEC2/latest/GettingStartedGuide/


Ssh -i স্যুইচ সহ আমরা কেবলমাত্র .pem ফাইল ব্যবহার করতে পারি।
অভয় জোহরি 14

5

পেম ফাইলের অনুমতিগুলি খুব বেশি খোলা থাকলে এটিও অভিযোগ করবে। ফাইলটি chmod করুন 600 এ ঠিক করতে।


এই টিপটির জন্য ধন্যবাদ - আমাকে অনেক সাহায্য করেছে
বিলি মুন

4
নবীনদের জন্য .. এটি করার আদেশটি chmod 600 your_file.pem
হ'ল

5

আমি এটিতেও ছড়িয়ে পড়ছিলাম - দেখা যাচ্ছে আমি একটি সম্প্রদায়-নির্মিত এএমআই ব্যবহার করছিলাম - এবং ডিফল্ট ব্যবহারকারীর নামটি নীচু রুট ছিল না, এটি কোনও ব্যবহারকারীর বা উবুন্টুও ছিল না। পর্যন্ত আমি 'চেষ্টা করেছে - আসলে, আমি কি কোন ধারণা ছিল ছিল রুট ' এবং সার্ভার কল্যাণকামী হিসাবে লগইন করার জন্য আমাকে জিজ্ঞাসা XXX যেখানে XXX যাহা এটা আপনাকে বলে নেই।

-cheers!


4

আপনার স্থানীয় মেশিনে আপনার ব্যক্তিগত কী থাকতে হবে

আপনার দূরবর্তী মেশিন বা সার্ভারের আইপি ঠিকানা বা ডিএনএস নাম জানতে হবে, আপনি এডাব্লুএস কনসোল থেকে এটি পেতে পারেন

আপনি যদি একটি লিনাক্স ব্যবহারকারী হন

  • নিশ্চিত করুন যে ব্যক্তিগত কীতে অনুমতিগুলি 600 ( chmod 600 <path to private key file>)
  • Ssh ( ssh -i <path to private key file> <user>@<IP address or DNS name of remote server>) ব্যবহার করে আপনার মেশিনে সংযুক্ত হন

আপনি যদি উইন্ডোজ ব্যবহারকারী হন

  • Ssh অধিবেশন তৈরি করতে PuTTy ব্যবহার করুন ( http://the.earth.li/~sgtatham/putty/latest/x86/putty-0.66-installer.exe )
  • যদি আপনার প্রাইভেট কী ফাইলটি .pem ফর্ম্যাটে থাকে তবে এটি পুটটিজেন ব্যবহার করে .ppk এ রূপান্তর করুন
  • পুটিটি চালু করুন, আপনাকে পিএমপি ফাইল, আইপি ঠিকানা বা ডিএমএসের রিমোট সার্ভারের নাম সেট করুন এবং এসএসএস সেশন শুরু করুন

Chmod 400 <পেম কী>
বৈভব জৈন

3

ব্যবহার করুন ...

# chmod 400 ec2-keypair.pem

600 অনুমতি ব্যবহার করবেন না অন্যথায় আপনি দুর্ঘটনাক্রমে আপনার কী ওভাররাইট করতে পারেন।


2

এটি আমার পক্ষে কাজ করেছে:

ssh-keygen -R <server_IP>

ওয়ার্কস্টেশনে সঞ্চিত পুরানো কীগুলি মুছতে তার পরিবর্তে এর সাথেও কাজ করে

তারপরে একই ssh করে আবার এটি কাজ করে:

ssh -v -i <your_pem_file> ubuntu@<server_IP>

উবুন্টু উদাহরণগুলির মধ্যে ব্যবহারকারীর নামটি হ'ল: অ্যামাজন লিনাক্স এএমআই-তে উবুন্টু ব্যবহারকারীর নামটি: ইসি-ব্যবহারকারী

আমাকে কোনও চিত্র থেকে পুনরায় তৈরি করতে হবে না।



2

সংযুক্ত হওয়ার জন্য দুটি পদক্ষেপ রয়েছে:

আপনার ব্যক্তিগত কীতে Chmod 400, এর মতো অন্যরা আপনার কীতে অ্যাক্সেস করতে পারে না:

chmod 400 toto.pem

এসএসএইচে আপনার দৃষ্টান্তের সাথে সংযোগ স্থাপনের জন্য আপনার উদাহরণের সার্বজনীন আইপি ঠিকানাটি জানতে হবে:

ssh -i toto.pem ec2-user@XX.XX.XX.XXX

আশা করি এটা সাহায্য করবে !


1

আপনি যদি ইবিএস ব্যবহার করে থাকেন তবে চলমান পরিস্থিতিতে ইবিএস ভলিউম মাউন্ট করার চেষ্টা করতে পারেন। তারপরে এটিকে চলমান ইভেন্টে মাউন্ট করুন এবং দেখুন / ঘরে কী চলছে। আপনি ব্যবহারকারী উবুন্টু বা ইক 2-ব্যবহারকারীর মতো জিনিস দেখতে পাচ্ছেন? বা it / .ssh / ਅਧਿਕਾਰ্য_কিগুলি এর অধীনে এর সঠিক পাবলিক কী রয়েছে



1

আপনি যদি বিটানামি থেকে AWS চিত্র চালাচ্ছেন are ব্যবহারকারীর নাম বিটনামি হবে। চিয়ার্স!

আমার ডিবাগটি দেখুন এবং শেষটি দেখুন:

*

ssh -v -i awsliferaysrta.pem.txt root@54.254.250.***
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to 54.254.250.*** [54.254.250.***] port 22.
debug1: Connection established.
debug1: identity file awsliferaysrta.pem.txt type -1
debug1: identity file awsliferaysrta.pem.txt-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.9p1 Debian-5ubuntu1.1
debug1: match: OpenSSH_5.9p1 Debian-5ubuntu1.1 pat OpenSSH_5*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA 05:5c:78:45:c9:39:3a:84:fe:f8:19:5d:31:48:aa:5f
debug1: Host '54.254.250.***' is known and matches the RSA host key.
debug1: Found key in /Users/macbookpro/.ssh/known_hosts:2
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: awsliferaysrta.pem.txt
debug1: read PEM private key done: type RSA
debug1: Authentication succeeded (publickey).
Authenticated to 54.254.250.*** ([54.254.250.***]:22).
debug1: channel 0: new [client-session]
debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: Remote: Port forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Forced command.
debug1: Sending environment.
debug1: Sending env LANG = en_US.UTF-8
Please login as the user "bitnami" rather than the user "root".

*


1

আমার ক্ষেত্রে (ম্যাক ওএস এক্স) সমস্যাটি ছিল ফাইলটির ব্রেক ব্রেক। এটা চেষ্টা কর:

1.- টেক্সটরঙ্গলারের সাহায্যে .pem ফাইলটি খুলুন

২.- অ্যাপের নীচে, ব্রেক টাইপটি "উইন্ডোজ (সিআরএলএফ)" কিনা তা যাচাই করুন।


1

এটির এক্সো-ব্যবহারকারী ব্যবহারকারী অ্যামাজন লিনাক্স এএমআই এবং উবুন্টু চিত্রগুলির জন্য উবুন্টু। এছাড়াও, RHEL 6.4 এবং পরবর্তীতে ec2- ব্যবহারকারী RHEL 6.3 এবং পূর্ববর্তী রুট ফেডোরা ইক 2-ব্যবহারকারী সেন্টোস রুট


0

শুধু এই তালিকায় যুক্ত। একটি নতুন ব্যবহারকারী সবেমাত্র একটি এডাব্লুএস ইসি 2 ইভেন্টে যুক্ত হয়ে আমার আজ সকালে সমস্যা হচ্ছে। ধাওয়াটি কাটাতে, সমস্যাটি সেলিনাক্স (যা প্রয়োগকারী মোডে ছিল) একসাথে হয়েছিল যে আমার ব্যবহারকারীর বাড়ির দির নতুন ইবিএস সংযুক্ত ভলিউমে ছিল। একরকম আমি অনুমান করি সেলিনাক্স অন্য ভলিউম পছন্দ করে না। আমি অন্যান্য সাধারণ ssh ইস্যুগুলিতে যেমন দেখলাম (/ etc / ssh / sshd_config ঠিক আছে, অবশ্যই কোনও পাসওয়ার্ড অনুমোদিত নয়, অনুমতিগুলি সঠিক ছিল না, ইত্যাদি) বের করার জন্য আমাকে কিছুটা সময় নিয়েছিল)

ঠিক করা?

আপাতত (যতক্ষণ না আমি বুঝতে পারি যে কোনও ব্যবহারকারীকে কীভাবে আলাদা আলাদা ভলিউমে ছড়িয়ে পড়তে দেওয়া হয়, বা কোনওভাবে সেই পরিমাণকে একটি ভীষণ বাড়ির ডায়ার পয়েন্ট হিসাবে তৈরি করা যায়):

sudo perl -pi -e 's/^SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
sudo setenforce 0

এটাই. এখন আমার নতুন ব্যবহারকারী নিজের আইডি_রসায় কী ব্যবহার করে লগ ইন করতে পারবেন।


0

একই সমস্যা ছিল। 'ইক 2-ব্যবহারকারীর' সাথে বা 'রুট' দিয়ে লগ ইন করার চেষ্টা করার সময় অনুমতি অস্বীকার করা হয়েছে (পাবলিককি)।

মেশিনের চিত্রের এএমআই নম্বর গুগল করে এবং এতে এসবিএইচ লগইন তথ্য ডিবিয়ান উইকি পৃষ্ঠায় রয়েছে had

আশাকরি এটা সাহায্য করবে.

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.