运维工具大全

自动化部署

1. Fabric

优点

小巧,无需装agent,可以做一些简单的服务器部署操作,使用简单,容易上手,但功能比较有限,用了两天就切到ansible了;

缺点

部署机与服务器交互不太友好

2. Ansible

优点

无需agent,基于ssh实现,对新申请的机器做初始化扩展不错;

特性较多,日常部署需要的功能基本上都覆盖了,比如git、打包解压、copy文件、yum安装等等都已经集成到了核心模块里面,alternatives、xattr等模块也有所集成,当然,理论上所有操作都能用命令模块来完成。

缺点

比较依赖网络的健壮性,网络不好的话会比较坑;

还有SaltStack、Pupet、Chef等;

DNS

1. dnsmasq

提供 DNS 缓存,DNS重定向、记录转发,DNS反向解析, DHCP 服务功能,配置简单;

可以配置对上层DNS轮询请求记录;

配置支持通配符,不用批量修改hosts;

2. pdnsd

提供DNS缓存服务

设置向上级DNS请求方式(TCP、UDP,Both)

设置多个上级DNS并设置请求规则

配置缓存保留时间

3. namebench

Google在09年12月推出了一项新的网络服务Google Public DNS,允许用户免费使用Google服务器解析网络域名,主要目的则是为了提速加快浏览。不过对于多数普通网民来说,对DNS是一知半解,更不用说如何去配置服务器或者测试速度的快慢了。

而今,Google推出了一款DNS测试工具Namebench,有了这个工具,你就可以轻松的找到最快的DNS了。Namebench由Google工程师开发,主要目的是希望它能够帮助用户正确查找出最有效的DNS中最快的一个,使网速在同等条件下能够达到最快。

Namebench是一款跨平台的开源测试工具,支持Windows、Linux和Mac平台,采用图形用户界面,提供命令行接口

统一帐号管理

你还在自己写脚本批量增加机器的用户名、分组和修改密码或者同步主机的/etc/passwd吗?你还在使用脚本批量对用户设置权限吗?如果有一台帐号主机能够提供所有服务器的帐号、密码、权限控制,如此一来,如果想要增加、修改、刪除用户,只要到这台服务器上面处理即可,这样是不是很方便?

1. LDAP

统一管理各种平台帐号和密码,包括但不限于各种操作系统(Windows、Linux),Linux系统sudo集成,系统用户分组,主机登入限制等;

可与Apache,HTTP,FTP,SAMBA,ZABBIX,Jenkins等集成;

支持密码策略(密码强度、密码过期时间、强制修改、超过验证错误次数锁定帐号)等;

支持插件式鉴别模块PAM;

不同平台权限的设定、划分;

2. jumpserver

一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent,目前本版本处于beta阶段,线上环境慎用。试用了一下demo,感觉在统一帐号管理方面并不成熟。

3. NIS

NIS是集中控制几个系统管理数据库的网络用品。NIS简化了UNIX和LINUX桌面客户的管理工作,客户端利用它可以使用中心服务器的管理文件。桌面系统的用户无需建立他们自己的/etc/passwd,他们只简单的使用维护在NIS服务器的文件即可。
在一个大型的网域中,如果有多部linux主机,而且需要每台主机都设定相同的帐号与密码时,是十分麻烦的。此时,如果能够有一台NIS主控制服务器(master server)来管理该网域中所有主机的帐号密码,当其他的主机有用户登录的需求时,才到这台服务器上请求相关的帐号密码等使用者资料,这样一来,如果想要增加、修改、删除用户的资料,只需要到这台服务器上面处理即可,这样就能够大大降低重复设定用户帐号密码的步骤,便于管理。NIS(Network Information Services) Server就可以实现这样的功能。

压力测试

1. ApacheBench

创建多并发线程模拟多用户对URL访问进行压力测试

Apache中有个自带的,名为ab的程序,ab可以创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。

ApacheBench(ab)工具程式是标准 Apache 网站服务器发布的一部份,跟 Apache 网站服务器一样,也是免费软件,并可以用Apache许可证的规范下散布此软件。

2. TCPcopy、UDPcopy

直接对某一机器流量copy到另一机器进行压力测试;

提到压力测试,可能大多数人首先想到的就是ApacheBench,但ab是模拟访问,模拟毕竟是模拟,然而线上会遇到的错误可能往往无法预知,其实国内已经有人开发了一款线上流量copy的工具,就是TCPcopy、UDPcopy,能够之间copy线上流量到测试环境,大大减少了上线前的风险。支持设置copy流量倍数放大、缩小,修改流量的客户端IP源地址。

3. TCPburn

类似ApacheBench

tcpburn是由网易自主研发的能够模拟千万级别并发用户的一个软件,目的是能够用较少的资源来模拟出大量并发用户,并且能够更加真实地进行压力测试, 以解决网络消息推送服务方面的压力测试的问题和传统压力测试的问题。

安全

1. PortSentry

对端口扫描的机器做防御策略;

特点

给出虚假的路由信息,把所有的信息流都重定向到一个不存在的主机;

自动将对服务器进行端口扫描的主机加到TCP-Wrappers的/etc/hosts.deny文件中

利用Netfilter机制、包过滤程序,比如iptables和ipchain等,把所有非法数据包(来自对服务器进行端口扫描的主机)都过滤掉;

通过syslog()函数给出一个目志消息,甚至可以返回给扫描者一段警告信息。

2.fail2ban

对SSH密码暴力破解的机器做防御策略;

防御 SSH 服务器的暴力破解攻击,对安全性要求过高的服务器还是建议禁止密码登入,使用密钥或者密钥+密码验证。

3. Google Authenticator

可以将第二部验证设置为通过短信或语音电话接收验证码,同时也支持 Android、iPhone 或 BlackBerry 设备来生成验证码;

一款开源的,可基于开放规则(如 HMAP/基于时间)生成一次性密码的软件。Google公司同时也支持插件式鉴别模块PAM,使其能和其他也适用PAM进行验证的工具(如OpenSSH)协同工作。

您可能也感兴趣:

Teambition更换邮箱
关于敏捷组织
替 Selenium WebDriver 加上 Proxy 的设定来加快测试的速度
2017 在 Ubuntu 16.04 上面报税
ASP.NET MVC + Multi Level Dropdown menu in Bootstrap 3
什么在线项目管理系统好
Bitcoin 新币转台币初体验心得
什么项目管理流程系统好
项目管理工具软件
Firebase – 实时同步数据库