Initial Server Setup with Ubuntu 14.04 on Aliyun

介绍

参加了阿里云的云翼计划,获得了每月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
现在,你的用户就拥有了超级用户的权限了。

生成钥匙对

要生成一个钥匙对,就需要在本地终端下输入以下命令:
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_keysi进入编辑模式,粘贴公钥,然后按ESC退出编辑模式,输入:wq保存且退出
aliyun$ chmod 600 authorized_keys (可选)
现在,你可以在本机上使用通过RSA验证的方式ssh登录远程服务器。
使用exit命令切换回root用户

Step Five — 配置SSH

对远程服务器上的SSH程序进行一定的配置,使其更加安全。
aliyun$ vim /etc/ssh/sshd_config
找到PermitRootLogin yesPasswordAuthentication 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
即可完成登录操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值