近期因为项目需求,采购了两台阿里云ECS,选择的系统为CentOS 6.3 X64 安全加固版,额外买了160G的硬盘,应该够应付此项目的需求了。

ECS默认已经配置好了sshd服务,可以使用root账号直接登录,但是这通常是不安全的,第一件事就是针对sshd服务进行优化配置。

1.创建常用的账号

在任何Linux相关的描述中,都会说日常使用root操作是很不安全的行为,因此首先创建一个日常使用的账户。

useradd gary
passwd gary

2.编辑sudoer文件

vim /etc/sudoers

加入用户,以便使用sudo命令直接操作一些系统命令,减少对root账户的使用。

3.编辑sshd配置文件,修改一些默认选项

vim /etc/ssh/sshd_config

修改一些默认的配置项

#仅使用SSH2协议
Protocol #修改密钥生成强度
ServerKeyBits #禁止root账户通过ssh登录
PermitRootLogin no #禁止使用常规的用户名密码方式登录,此项慎用
#在没有生成好Key,并且成功使用之前,不要设置为no
PasswordAuthentication no #禁止空密码登录
PermitEmptyPasswords no

4.重启sshd服务

/etc/rc.d/init.d/sshd restart

service sshd restart

5.生成个人的公钥与密钥

#切换到要生成key的账号
su - gary #建立公钥与私钥
ssh-keygen -t rsa
#密钥文件,可直接回车使用默认的文件名
Enter file in which to save the key (/home/gary/.ssh/id_rsa): #输入两遍密钥文件,仅供密钥登录用,可为空,不需与系统密码一致
Enter passphrase (empty for no passphrase):
Enter same passphrase again: #改名为sshd支持的默认公钥文件名
mv ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys #设置公钥文件名,如不设置为400,会无法登录
chmod ~/.ssh/authorized_keys #取出私钥文件(可远程通过pscp获取),并删除服务器备份
rm –rf ~/.ssh/id_rsa

6.在linux系统中,可以直接使用密钥文件,登录远程服务器

ssh gary@ip -i id_rsa

7.在windows系统中,需要使用putty项目的puttygen生成本地私钥,再使用putty进行登录

载入--全部文件,选择获取到的服务器密钥--确定(如果服务器端生成时,设置了密钥,会提示输入)--保存私钥(保存为本地putty可是别的ppk私钥文件)

在putty的认证标签中,浏览选择上一步生成的ppk私钥文件,即可登录。

8.总结

8.1.为什么说是安全的SSH链接呢?关闭了空密码链接、禁止常规的ssh用户名密码方式登录,只有在服务器上生成过key文件的用户方可访问,key文件+密钥,保护更完善一些

8.2.友情提示,PasswordAuthentication no配置内容,一定要在已经生成好了至少一个key之后再使用,否则会导致直接无法登录哦。

8.3.参考:

http://www.centospub.com/make.html

阿里云ECS每天一件事D1:配置SSH的更多相关文章

  1. 阿里云ECS每天一件事D2:配置防火墙

    在linux中配置防火墙是一件比较有风险的事情,尤其是在ECS中,一个不当心的操作,可能就会需要重置服务器. 包括阿里云的官方建议,不要配置防火墙,没有必要什么的吧啦吧啦…… (http://bbs. ...

  2. 阿里云ECS每天一件事D5:安装php5.4.34

    原本是想把php和nginx合在一起来说的,不过考虑后,还是分开来做吧,已熟悉的更透彻一些. 1.准备类库 yum install autoconf automake libtool re2c fle ...

  3. 阿里云ECS每天一件事D3:挂载硬盘

    阿里云的系统盘通常都不大,对于我们的日常使用,基本不足,因此都会额外购买至少一块硬盘,作为存储数据之用. 数据盘要经过分区.格式化.挂载三个步骤,方能正常使用.  1.数据盘的分区 先使用fdisk命 ...

  4. 阿里云ECS每天一件事D9:nginx1.7整合tomcat8.0

    仅通过8080端口访问jsp显然不是一算是一个太好的方法,可以使用nginx的proxy_pass子模块,实现nginx转发jsp请求至tomcat. 典型的配置如下: server { listen ...

  5. 阿里云ECS每天一件事D8:nginx1.7整合php5.4

    nginx本身的并不能解析php或者jsp,要转发给后端的php或者tomcat以及其他类似的应用程序服务器来提供服务. 首先我需要完成的配置是实现与php的整合,典型的配置信息如下: server ...

  6. 阿里云ECS每天一件事D7:安装tomcat8.0

    这一D,跨越了几个月啊,人是越来越懒,集中写一些,就懒得再记录了.也是因为测试需要,搭建个jsp的服务环境,只是测试,考虑用tomcat就够了. 在Tomcat官网下载最新Core版本,下载之后,将文 ...

  7. 阿里云ECS每天一件事D6:安装nginx-1.6.2

    自从接触nginx就开始喜欢上这个小东西了,似乎没什么特别的原因,就是喜欢而已. 1.安装环境的准备 yum install pcre pcre-devel openssl openssl-devel ...

  8. 阿里云ECS每天一件事D4:安装mysql5.5.40

    Linux平台上MySQL也没什么好说的了,首先准备一下软件环境: yum install gcc gcc-c++ gcc-g77 autoconf automake make cmake bison ...

  9. 阿里云ECS专有网络产品三个步骤配置教程

    阿里云ECS专有网络产品三个步骤配置教程 阿里云专有网络节点已开通地域:美国硅谷可用区1B,新加坡可用区A,北京可用区A,深圳可用区A,杭州可用区D,上海可用区B 举个栗子:购买 美国硅谷可用区1B  ...

随机推荐

  1. 侯老师的话(Application Framework)

    摘自http://blog.csdn.net/zlc19876/article/details/5355022 本篇文章主要介绍了"侯老师的话(Application Framework)& ...

  2. CSS:margin负数的使用

    给所有div加上边框=10px之后,再给所有div设置margin-left与margin-top;以及浮动(float:left) 因此时需要鼠标悬停效果:所以设置给div设置伪类:hover,然因 ...

  3. HTML之学习笔记(六)添加链接

    html添加链接所用的标签为<a>标签 语法: 定义:从当前页面,跳转到指定页面或文件的一个标签            <a href="URL">热点文字 ...

  4. MySQL学习笔记(4)

    插入记录① INSERT [INTO] tbl_name [(col_name,-)] {VALUES | VALUE} ({expr | DEFAULT},-),(-),- 可以用表达式或者DEFA ...

  5. MailBee的简单使用

    保存为Eml文件方法:MailMessage.SaveMessage() 读取文件方法(不知道是不是我用的问题,没找到直接读取Eml文件的方法): MsgConvert conv = new MsgC ...

  6. C++中const简介及用法

    1.const简介 C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助. Const 是C++中常用的类型修饰 ...

  7. hdu3507

    题意: 给n(n<=10^6)个非负数字,放在一个数组num中,再给一个特殊值m.求将这个数组分成任意多个区间,每个区间[a,b]的值定义为( sigma(num[i] | (a<=i&l ...

  8. C++学习之文件的输入输出

    C++学习之文件的输入输出        一.文件的打开与关闭        1.输出数据到文件        文件的操作需要包含fstream头文件,文件的操作对象为ifstream,ofstrea ...

  9. Java和JavaScript的时间互传

    原创文章,转载请注明:Java和JavaScript的时间互传 By Lucio.Yang 1.从JavaScript到Java JavaScript: function query(){ var s ...

  10. JS 节流阀

    JS 节流阀 参考 https://github.com/hahnzhu/read-code-per-day/issues/5 节流阀 节流阀的基本原理 事件函数的执行都记下当前时间, 只有当前时间与 ...