如何在Amazon EC2实例中启用Root SSH访问?

Jai*_*man 27 ssh lamp amazon-ec2

这个问题在过去几天一直困扰着我.

我一直在努力在Amazon EC2上设置LAMP服务器.主要问题是我正在为需要大量高端处理的客户端编写应用程序,而Amazon EC2似乎是一个不错的选择.

最初,我开始使用基本的AMI,它真的没有任何东西.我尝试使用root访问权限登录SSH(使用WinSCP),我被告知要使用ec2-user.

我尝试使用ec2-user,我能够登录.但是,我仍然没有root访问权限,无法安装apache.我做了一些理由,我发现了"sudo"命令,几乎我在这个问题上阅读的每篇文章都说要么使用root访问权限,要么登录ec2-user和用户sudo.

我已经尝试了另一个已经安装了LAMP的AMI.我能够让它工作,建立一个数据库并开始运行一个网站.但是,我仍然需要安装一些扩展.也就是说,我试图用于此应用程序的API需要安装SOAP.

这是我的困境:

/$ whereis soap
soap:
/$ whereis yum
yum: /usr/bin/yum /etc/yum /etc/yum.conf /usr/share/man/man8/yum.8.gz
/$ yum install php-soap
Loaded plugins: fastestmirror, priorities, security
You need to be root to perform this command.
/$ sudo yum install php-soap
sudo: sorry, you must have a tty to run sudo

Command 'sudo yum install php-soap' failed with return code 1 and error message sudo: sorry, you must have a tty to run sudo
Run Code Online (Sandbox Code Playgroud)

我不能使用yum因为我没有root访问权限,每当我登录root时它会告诉我使用ec2-user或提供我没有的密码.另一个选择是使用sudo让ec2-user像root一样,但我总是得到错误'抱歉,你必须有一个tty来运行sudo.我在网上运行了这个错误消息,似乎我需要将用户添加到sudoers ...我不能没有root访问权限.

这个完全相同的问题困扰着我两个独立的AMI.在第一次我收到一条消息说我必须以ec2-user身份登录(我必须有一个tty才能运行sudo),而第二个(安装了LAMP)要求我输入root用户的密码,并为用户输入密码我得到了同样的sudo错误.

以下是我使用的AMI的ID:

ami-8c1fece5
ami-6ae81503
Run Code Online (Sandbox Code Playgroud)

我还尝试了第三个AMI,后来也安装了LAMP ......我根本无法进入那个.

我确实下载了我的SSH密钥,并使用PuttyGen将其转换为ppk文件.我可以作为ec2-user成功登录,但我无法在任何地方获得root访问权限.

我一直在寻找相当多的帮助,但我读过的每篇文章都假定用户可以使用root访问权限,或者在ec2-user上有sudo可用.我也没有.只是我需要一个新的形象吗?

任何帮助将不胜感激...

Ale*_*man 61

我刚试过

$ sudo su
Run Code Online (Sandbox Code Playgroud)

在你的一个amis和瞧!我是根...

玩得开心!

[ec2-user@ip-10-244-146-238 ~]$ sudo su
[root@ip-10-244-146-238 ec2-user]# 
Run Code Online (Sandbox Code Playgroud)


Dan*_*man 5

使用真正的SSH客户端,如PuTTY,而不是WinSCP,文件传输客户端.你所有的问题都会消失.

  • 这...实际上没有回答"*如何在Amazon EC2实例中启用Root SSH访问?*"问题... (2认同)