您的位置:首页 > 其它

Initial Server Setup with Ubuntu 14.04 on Aliyun

2016-02-04 15:39 309 查看

介绍

参加了阿里云的云翼计划,获得了每月9.9元的服务器,然后想通过这个服务器来做些什么,比如web项目之类的,所以首先要服务器进行一些初始化和安全的调整。

声明:下面的代码块中,如果出现
local$
即为在本地终端输入的命令,出现
aliyun$
即为在远程服务器终端上输入的命令

Step One — 使用root登录

在购买了阿里云的服务器,并创建实例(安装系统)后,会让你输入初始的实例密码,而这个实例密码就是你的服务器上的系统中root用户的密码。我们可以使用ssh登录服务器

local$ ssh root@SERVER_IP_ADDRESS
SERVER_IP_ADDRESS 为你的阿里云实例的公网ip

登录的时候,会提示你输入root用户的密码。

Step Two — 创建一个新用户

root
登录成功后,我们就可以创建一个用户用于我们以后的常规登录。在ubuntu中,添加用户的命令为
adduser
演示如下:

aliyun$ adduser USERNAME
USERNAME 为你要新增的用户名

输入完毕后,会提示输入新增用户的密码,请务必输入一个强壮的密码,然后其他输入信息都是可选项,一路按
enter
跳过

Step Three — Root 权限

上面创建的用户,只是普通用户,但是我们经常需要用这个用户来做一些有管理员权限才能执行的操作(比如,安装软件)。所以我们需要提升我们上面创建的用户的权限,让他能使用sudo命令。

root
用户下,使用以下命令将上面创建的用户添加到 sudo group

aliyun$ gpasswd -a USERNAME sudo


现在,你的用户就拥有了超级用户的权限了。

Step Four — 添加公钥认证 (Recommended)

生成钥匙对

要生成一个钥匙对,就需要在本地终端下输入以下命令:

local$ ssh-keygen


一路使用回车跳过即可。

Mac下,公私钥默认生成在
/Users/yourusername/.ssh/
目录下,生成完毕后,通过
cd .ssh
进入该目录可以看到,id_rsa(私钥) 和 id_rsa.pub(公钥).

复制公钥

.ssh
目录下,使用
cat id_rsa.pub
查看公钥,输出应该类似是这样子的

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDRl2aMWW7EtC8dN74p2wvnYZvVxdjGvTOc5aex1QZtdJ/EtCDxKrwjs4+SG1KwOosN75tgd9XoHoW3mfta03OC44j6CmlxS2e6UUfzhtayVFw1u11Jvb2i2JSpbr/bpqgHmsjyNfQoz4FPz6fk+GmVfG0TTJjkUDENXgII73/yNZRrioSslKhLY+Z7kwo9hEoTJ9f07j6y1WKlEON93n+5pNrWzm6sZzNZT+qDAgU685EHemJjTU9zrt+BUAcKBj77tFUM4yFbxFehIq986TYzXf7+cw9ossdWbBt/jYNyc9kDtRhBcCSZH0iNqG+2IuUx8FrJ0n0nmQ3iC1coPpN5 localuser@localmachine.local


然后将输出的东西复制。

添加公钥到远程服务器

root
用户下,使用
su - USERNAME
切换到你先前创建的用户,然后输入
cd ~
进入先前创建用户的HOME目录下。

然后使用以下命令创建
.ssh
文件夹和更改他的权限

aliyun$ mkdir .ssh


aliyun$ chmod 700 .ssh
(可选)

然后进入
.ssh
文件夹内创建
authorized_keys
文件,并将上面复制的公钥粘贴进去这个文件内

aliyun$ vim authorized_keys
i
进入编辑模式,粘贴公钥,然后按
ESC
退出编辑模式,输入
:wq
保存且退出

aliyun$ chmod 600 authorized_keys
(可选)

现在,你可以在本机上使用通过RSA验证的方式ssh登录远程服务器。

使用
exit
命令切换回
root
用户

Step Five — 配置SSH

对远程服务器上的SSH程序进行一定的配置,使其更加安全。

aliyun$ vim /etc/ssh/sshd_config


找到
PermitRootLogin yes
PasswordAuthentication yes
,将两者后面的yes都改为no。前者修改为no后就禁用ssh使用root用户登录(平常登录使用我们上面创建的用户),后者修改为no后就禁用了ssh使用密码登录,只是用公钥认证,这样可以防止别人通过多次试探猜测密码登录

Step Six — 重载SSH

使用以下命令重启ssh,以便我们上面的设置生效

aliyun$ service ssh restart


现在,我们可以在本地使用

local$ ssh USERNAME@SERVER_IP_ADDRESS
测试登录是否使用RSA登录

Step Seven - 修改本地ssh配置

我们发现,现在每次登录都要输入很长的远程服务器的IP(SERVER_IP_ADDRESS),这东西即难记而且麻烦输入,有没有什么方法而已简化输入呢?答案是有的。

我们在本地的
.ssh
文件夹内,新增一个文件
config
,然后对其进行编辑。

local$ vim ~/.ssh/config


添加大概如下内容

Host 别名
HostName 主机名(远程服务器的公网ip)
Port 端口(ssh的默认端口为22,如果修改这项,需要与你在远程服务器设置的进行匹配)
User 用户名
IdentityFile 密钥文件的路径


比如我设置一个ip为123.123.123.123的服务器,用户名为demo,设置大概如下

Host aliyun
HostName 123.123.123.123
Port 22
User demo
IdentityFile ~/.ssh/id_rsa


这样子,我只要在本地终端使用

local$ ssh aliyun


即可完成登录操作
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息