VPS 安全措施(CentOS 6)

新到手一台VPS,要做的第一件事大概是做好安全措施。

下面针对CentOS 6随便写点,我目前做的几步是:

  1. 修改root密码
  2. SSH-key登录
  3. 配置iptable
  4. 安装fail2ban

1.修改root密码

登录到VPS,键入 passwd 即可修改root密码,注意输入内容不会以星号呈现。

2.采用SSH-key登录

采用密钥登录的好处就是如果有人知道你的root密码了,但他没有对应的密钥文件,那么他就不能通过SSH登录到VPS。而这个密钥文件只存在在你自己的电脑上,除非你硬盘被盗或者被入侵了。相应的教程实在太多了,这里简略说下:

1 //服务器端(生成密钥对)
2 ssh-keygen -t rsa             //生成密钥,按照提示操作
3 //将root/.ssh目录中的id_rsa和id_rsa.pub下载到本地
4 cd /root/.ssh                 //更改工作目录到/root/.ssh
5 mv id_rsa.pub authorized_keys //将id_rsa.pub重命名为authorized_keys
6 chmod 600 authorized_keys     //给authorized_keys设置600权限
7 vi /etc/ssh/sshd_config       //编辑SSHD配置文件
8 //去掉RSAAuthentication和PubkeyAuthentication两行前面的#
9 /etc/init.d/sshd restart      //重启SSHD服
1 //本地端(载入私钥)
2 打开puttygen.exe,载入密钥(id_rsa文件,无后缀),输入在SSH中设置的密钥密码,最后保存私钥(Putty适用的类型,后缀为ppk)。
3 打开putty.exe,找到连接(Connection)-SSH-认证(Auth),找到“认证私钥文件”一栏(Private key for authentication),点击浏览(Browse),载入刚才保存的ppk文件,应该可以顺利登陆了。
1 //服务器端(关闭密码登录)
2 vi /etc/ssh/sshd_config       //编辑SSHD配置文件
3 //找到PasswordAuthentication后面的yes改成no,保存
4 /etc/init.d/sshd restart      //重启SSHD服

到此,VPS密钥登录配置完成。

3.配置iptables

iptables 是一个配置 Linux 内核 防火墙 的命令行工具,是 netfilter 项目的一部分。术语 iptables 也经常代指该内核级防火墙。iptables 可以直接配置,也可以通过许多 前端 和 图形界面 配置。iptables 用于 ipv4,ip6tables 用于 ipv6。

Archlinux Wiki 中的 iptables 条目

iptables研究起来会耗费大量时间,有兴趣的话不妨移步:Iptables 指南 1.1.19

下面粘贴一下自己的配置:

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]

# 开放本地和Ping
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -j ACCEPT

# 保持当前SSH连接
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

# 控制端口
# HTTP (建站才会用到)
#-A INPUT -p tcp --dport 80 -j ACCEPT
# nginx (建站才会用到)
#-A INPUT -p tcp --dport 8384 -j ACCEPT
# SSH (自行修改)
-A INPUT -p tcp --dport $(SSH)-j ACCEPT
# SS (自行修改)
-A INPUT -p tcp --dport $(SS)-j ACCEPT

#拒绝其它
-A INPUT -p icmp -j REJECT --reject-with icmp-port-unreachable
-A INPUT -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -j REJECT --reject-with icmp-port-unreachable

#开放出口
-A OUTPUT -j ACCEPT

COMMIT

4.fail2ban

字面上理解,就是“登录失败了就把你ban掉”,可以防范某些不怀好意的人暴力登录你的VPS。

可参考:centos下fail2ban安装与配置详解

时间: 2024-10-07 18:28:21

VPS 安全措施(CentOS 6)的相关文章

在自己的VPS服务器(CentOS 6 x86)上配置nodejs

1.ssh登录 推荐用Xshell(免费,支持自定义端口号) 直接用root登录 2.安装nodejs编译环境 yum -y install gcc gcc-c++ openssl-devel 3.安装git yum install git 4.安装nvm curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash 表示用bash执行install.sh中的命令 5.安装node nvm

使用VNC远程管理VPS(Centos系统)

首先安装桌面环境,我选择的是xfce,轻量级桌面,小巧实用不占太多内存,(占用内存方面,xfce<kde,kde<gnome). centos默认源里面没有xfce,首先安装epel源,然后安装桌面: wget http://download.Fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6-8.noarch.rpm yum groupinstall xfce 装完桌面

CentOS 7 / RHEL 7 上安装 LAMP + phpMyAdmin

原文 CentOS 7 / RHEL 7 上安装 LAMP + phpMyAdmin 发表于 2014-11-02 作者 Haoxian Zeng 更新于 2014-12-12 之前根据在 Linode VPS 上部署 LAMP 服务器的经验写了安装记录,得到不少网友的亲睐.随着 CentOS 7 发布,安装过程发生了不少变化.因此在虚拟机上跑了一下,根据之前的记录做了修改,以供参考.主要注意的是,现在数据库由 MySQL 改成 MariaDB 了,故而 LAMP 代表的就是 Linux + A

VPS三道安全之门

BY abamon/XTBlock 我的个人博客站:www.zy2zy.com 转载请注明出处:http://www.zy2zy.com/articles/79.html 最近刚买了自己的vps,今天关注了vps需要注意的点,结果发现vps非常需要注意安全,作为一个直接暴露在互联网上的主机,如果只有root+密码的模式,那么非常容易被暴力破解.如果被破解了,那么黑客就可以使用你的vps刷流量(流量超标需要你来付钱!).发动DDOS攻击等. 首先说明一下,我的vps是CentOS,一开始我也是以为

VPS CentOS-6 下 LNMP HTTP服务器的搭建

VPS CentOS-6 下 LNMP HTTP服务器的搭建 前言 恢复更新后的第一篇博文, 前段时间由于各种理由, 把博客更新给宕掉了, 个人独立博客的开发也搁浅了, 现在随着工作的逐步稳定, 决心把博客重新恢复更新, 继续记录着代码路上的一点一滴. 在上篇博文中提到, 笔者将把工作和学习环境全面转移到Linux, 转移也没什么目的, Windows用久了, 换个口味.目前使用的Linux环境是 Ubuntu 14.04, 该版本是一个长期支持版本, 对于想试一试Linux系统的朋友, 也是值

【记录】haphost免费vps初始配置

1.配置德国epel源 yum install yum-priorities rpm -Uvh http://ftp-stud.hs-esslingen.de/pub/epel/6/i386/epel-release-6-8.noarch.rpm rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 在[epel]最

官方解答:Vultr VPS常见问题

VULTR VPS配置高,价格低廉,是非常优秀的vps品牌.今天我来翻译vultr官方FAQ,相信你能找到具体答案. Q 请介绍VULTR VPS机器硬件配置 Intel CPU 3+ GHz Cores,100% SSD 固态硬盘存储 Q 提供哪些vps操作系统 CentOS 6 x64, CentOS 6 i386, CentOS 5 x64, CentOS 5 i386, CentOS 7 x64, Ubuntu 14.04 x64, Ubuntu 14.04 i386, Ubuntu 1

CentOS如何开启ssh远程连接

假设VPS采用centos,再假设用较新版本6.5. VPS上可能没有安装桌面,但一般来说都会安装ssh,并且防火墙默认开放22端口. 那就从ssh开始. # 安装ssh,默认已安装好 # yum install ssh # 启动ssh服务器端 # service sshd start # chkconfig sshd on ssh登陆 如果本地端是Linux # ssh [email protected] 其中root表示的是登录用户名,192.168.1.1为主机的IP地址,当然也可以使用主

LNAP安装

系统需求: CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian Linux系统 需要5GB以上硬盘剩余空间 需要128MB以上内存(如果为128MB的小内存VPS,Xen的需要有SWAP,OpenVZ的至少要有128MB以上的vSWAP或突发内存),注意小内存请勿使用64位系统! 安装MySQL 5.6或5.7及MariaDB 10必须1G以上内存!. VPS或服务器必须已经联网,且必须设置的是网络源不能是光盘源,同时VPS/服务器 DNS要正常! Linux下区