分类目录归档:DevOps

警惕linux系统ssh默认端口22的爆破ddos攻击

今天一机房刚刚给一客户安装好操作系统centos6.x 64位系统,默认可能是他们idc机房统一的。结果几分钟服务器远程就登陆卡的要命,带宽耗尽。经过分析发现,这个网络其他服务器遭黑客攻击了,在整个网络上进行ssh爆破。具体体现如下图所示:

1我们可以看见,黑客启动了向121.12.110.96 112.90.22.197服务器的10991端口进行大量的连接。

我在网络流量满载,而且极卡的情况下,查看了进程。如下图:

20140301214837上面那些./*dxd ./*dd结尾的进程全为黑客ddos进程。

希望广大运维人员,及时加固你的linux和ssh,最好把管理端口放在防火墙保护内。

具体加固做如下建议:

1.修改默认ssh端口

2.将ssh端口放在防火墙后,限定特定ip访问

3.关闭远程root,设置PermitRootLogin no,linux默认为yes,允许root登陆很危险,这点Freebsd做的不错。

4.禁止明文密码登陆。PasswordAuthentication no

5.设置ssh为key认证登陆。RSAAuthentication yes

6.限制SSH验证重试次数,MaxAuthTries 1

 

黑客攻击信息,google搜索:

2

 

 

 

服务器巡查常用命令

查看一些硬件配置
# uname -a  # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue  # 查看操作系统版本
# cat /proc/cpuinfo  # 查看CPU信息
# hostname  # 查看计算机名
# lspci -tv  # 列出所有PCI设备
# lsusb -tv  # 列出所有USB设备
# lsmod  # 列出加载的内核模块
# env  # 查看环境变量 继续阅读

网卡绑定技术

CentOS 6.x 通过bonding技术实现网络负载均衡及冗余

一、什么是bonding

Linux bonding 驱动提供了一个把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余。 继续阅读

CentOS 6.x 默认服务列表

服务名称

功能

默认

建议

备注

NetworkManager

用于自动连接网络,常用在Laptop上

开启

关闭

对服务器没用

abrt-ccpp

 

开启

开启

 

abrt-oops

 

开启

开启

 

abrtd

 

开启

开启

 

acpid

电源的开关等检测管理,常用在Laptop上

开启

关闭

对服务器没用

atd

在指定时间执行命令

开启

关闭

如果用crond,则可关闭它

auditd

审核守护进程

开启

自定

如果用selinux,需要开启它

autofs

文件系统自动加载和卸载

开启

自定

只在需要时开启它,可以停止

avahi-daemon

本地网络服务查找

开启

关闭

对服务器没用

blk-availability

lvm2相关

开启

自定

 如果用lvm,建议开启

bluetooth

蓝牙无线通讯

开启

关闭

对服务器没用

certmonger

 

关闭

关闭

 

cpuspeed

调节cpu速度用来省电,常用在Laptop上

开启

关闭

对服务器没用

crond

计划任务管理

开启

开启

很有用,开启

cups

通用unix打印服务

开启

关闭

对服务器没用

dnsmasq

dns cache

关闭

关闭

没用

firstboot

系统安装后初始设定

关闭

关闭

 

haldaemon

硬件信息收集服务

开启

开启

 

ip6tables

ipv6防火墙

开启

关闭

 

iptables

ipv4防火墙

开启

开启

 

irqbalance

cpu负载均衡

开启

自定

多核cup需要

iscsi

一种新储存技术

开启

自定

iscsid

一种新储存技术

开启

自定

kdump

硬件变动检测

关闭

关闭

服务器无用

lvm2-monitor

lvm2相关

开启

自定

如果用lvm,建议开启

matahari-broker

 

关闭

关闭

 

matahari-host

 

关闭

关闭

 

matahari-network

 

关闭

关闭

 

matahari-service

 

关闭

关闭

 

matahari-sysconfig 

 

关闭

关闭

 

mdmonitor

软raid监视

开启

关闭

 

messagebus

负责在各个系统进程之间传递消息

开启

开启

如停用,haldaemon启动会失败

multipathd

 

关闭

关闭

 

netconsole

 

关闭

关闭

 

netfs

系统启动时自动挂载网络文件系统

开启

关闭

 

network

系统启动时激活所有网络接口

开启

开启

 

nfs

网络文件系统

关闭

关闭

 

nfslock

nfs相关

开启

关闭

 

ntpd

自动对时工具

关闭

开启

 

ntpdate

自动对时工具

关闭

关闭

 

oddjobd

与D-BUS相关

关闭

关闭

 

portreserve

RPC 服务相关

开启

自定

 

postfix

替代sendmail的邮件服务器

开启

自定

如服务器不提供邮件服务,可关闭

psacct

负荷检测

关闭

关闭

 

qpidd

消息通信

开启

开启

 

quota_nld

 

关闭

关闭

 

rdisc

自动检测路由器

关闭

关闭

 

restorecond

selinux相关

关闭

关闭

 

rpcbind

 

开启

关闭

 

rpcgssd

NFS相关

开启

关闭

 

rpcidmapd

RPC name to UID/GID mapper

开启

关闭

NFS相关

rpcsvcgssd

NFS相关

关闭

关闭

 

rsyslog

提供系统的登录档案记录

开启

开启

 

saslauthd

sasl认证服务相关

关闭

关闭

 

smartd

硬盘自动检测守护进程

关闭

关闭

 

spice-vdagentd

 

开启

开启

 

sshd

ssh服务端,可提供安全的shell登录

开启

开启

关闭后系统将无法远程登录

sssd

 

关闭

关闭

 

sysstat

 

开启

开启

 

udev-post

设备管理系统

开启

开启

 

wdaemon

 

关闭

关闭

 

wpa_supplicant

无线认证相关

关闭

关闭

 

ypbind

network information service客户端

关闭

关闭

 

 

 

注:上述服务列表是在CentOS 6最小化桌面安装出现的,其中红色字体标注的是最小化系统安装后的服务列表。

 

附:

显示所有服务:# chkconfig –list

查看服务的说明:

CentOS下这些服务都是脚本,我们可以利用rpm的命令来查看相应的说明。例如想查看sshd服务说明,请执行:

# rpm -qi $(rpm -qf /etc/rc.d/init.d/sshd )

如何让Linux进程在后台稳定运行

我们经常会碰到用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务, 结果却由于网络的不稳定、系统超时或者用户 logout 从而导致任务中途失败。那么怎么让命令提交后不受本地关闭终端窗口/网络断开连接的干扰呢?下面收集整理了一些实际的例子, 您可以针对不同的场景选择不同的方式来解决这个问题。 继续阅读

php内存溢出的问题

php内存溢出的问题

我们一台服务器上运行centos6.4 64位操作系统,内存16G。但是新装Wordpress的时候发现有内存溢出现象:
Oct 25 17:12:34 sklinux.com kernel: php-cgi[31887]: segfault at 8048 ip 00007ffc96ef2e9c sp 00007fff6c50ba70 error 4 in libsqlite3.so.0.8.6[7ffc96ed6000+8c000]
Oct 25 17:12:41 sklinux.com kernel: php-cgi[31888]: segfault at 8048 ip 00007ffc96ef2e9c sp 00007fff6c50ba70 error 4 in libsqlite3.so.0.8.6[7ffc96ed6000+8c000]
Oct 25 17:12:50 sklinux.com kernel: php-cgi[31889]: segfault at 8048 ip 00007ffc96ef2e9c sp 00007fff6c50ba70 error 4 in libsqlite3.so.0.8.6[7ffc96ed6000+8c000]
Oct 25 17:14:04 sklinux.com kernel: php-cgi[17348]: segfault at 8048 ip 00007fb3fd033e9c sp 00007fff1ec21720 error 4 in libsqlite3.so.0.8.6[7fb3fd017000+8c000]
Oct 25 17:14:07 sklinux.com kernel: php-cgi[17349]: segfault at 8048 ip 00007fb3fd033e9c sp 00007fff1ec21720 error 4 in libsqlite3.so.0.8.6[7fb3fd017000+8c000]
Oct 25 17:14:07 sklinux.com kernel: php-cgi[17350]: segfault at 8048 ip 00007fb3fd033e9c sp 00007fff1ec21720 error 4 in libsqlite3.so.0.8.6[7fb3fd017000+8c000]

我们重新编译过多次php,最后我们将
mv /usr/lib64/libsqlite3.so.0.8.6 /usr/lib64/libsqlite3.so.0.8.6.bak 更名后,发现正常。

不知道这是软件问题还是硬件问题。希望有遇见的同学交流!

linux下对单服务器的一些流量整形

文章翻译转自
http://www.cyberciti.biz/faq/linux-traffic-shaping-using-tc-to-control-http-traffic/

不少中小企业服务器接入带宽往往只有10Mbps 通常服务器也运行了其它服务,比如FTP服务、web服务,当网站访问量较大并且有多人同时下载时,带宽很容易耗尽,导致服务器延迟增加或丢包。如何对80端口进行速度限制,而保障其它服务能正常运行? 继续阅读