1. 什么是网络管理网络管理的目的是什么
网络管理,英文名称:Network Management,定义:监测、控制和记录电信网络资源的性能和使用情况,以使网络有效运行,为用户提供一定质量水平的电信业务。
网络管理的目的
1、故障管理
故障管理是网络管理中最基本的功能之一。用户都希望有一个可靠的计算机网络。当网络中某个组成失效时,网络管理器必须迅速查找到故障并及时排除,网络故障管理包括故障检测、隔离和纠正三方面。
2、计费管理
计费管理记录网络资源的使用,目的是控制和监测网络操作的费用和代价。
3、配置管理
配置管理初始化网络、并配置网络,以使其提供网络服务。配置管理是一组对辨别、定义、控制和监视组成一个通信网络的对象所必要的相关功能,目的是为了 实现某个特定功能或使网络性能达到最优。
4、性能管理
性能管理估价系统资源的运行状况及通信效率等系统性能。其能力包括监视和分析被管网络及其所提供服务的性能机制。性能分析的结果可能会触发某个诊断测试过程或重新配置网络以维持网络的性能。性能管理收集分析有关被管网络当前状况的数据信息,并维持和分析性能日志。
5、安全管理(Security Management)
网络安全管理应包括对授权机制、访问控制 、加密和加密关键字的管理,另外还要维护和检查安全日志。
6、上网行为管理
小草网管软件综合智能动态带宽保障,服务器流量分析与保障、虚拟多设备管理等多项突破性技术,涵盖流量分析、带宽管理、上网行为管理、DMZ区服务器管理,专线集中管理、企业级防火墙与路由器、负载均衡等功能,在网络性能、质量、安全等方面为客户提供完整的解决方案。
2. 逻辑安全包括访问控制加密安全管理及用户身份认证对吗
网络系统安全
网络信息系统的安全技术体系通常是在安全策略指导下合理配置和部署:网络隔离与访问控制、入侵检测与响应、漏洞扫描、防病毒、数据加密、身份认证、安全监控与审计等技术设备,并且在各个设备或系统之间,能够实现系统功能互补和协调动作。
网络系统安全具备的功能及配置原则
1.网络隔离与访问控制。通过对特定网段、服务进行物理和逻辑隔离,并建立访问控制机制,将绝大多数攻击阻止在网络和服务的边界以外。
2.漏洞发现与堵塞。通过对网络和运行系统安全漏洞的周期检查,发现可能被攻击所利用的漏洞,并利用补丁或从管理上堵塞漏洞。
3.入侵检测与响应。通过对特定网络(段)、服务建立的入侵检测与响应体系,实时检测出攻击倾向和行为,并采取相应的行动(如断开网络连接和服务、记录攻击过程、加强审计等)。
4.加密保护。主动的加密通信,可使攻击者不能了解、修改敏感信息(如VPN方式)或数据加密通信方式;对保密或敏感数据进行加密存储,可防止窃取或丢失。
5.备份和恢复。良好的备份和恢复机制,可在攻击造成损失时,尽快地恢复数据和系统服务。
6.监控与审计。在办公网络和主要业务网络内配置集中管理、分布式控制的监控与审计系统。一方面以计算机终端为单元强化桌面计算的内外安全控制与日志记录;另一方面通过集中管理方式对内部所有计算机终端的安全态势予以掌控。
边界安全解决方案
在利用公共网络与外部进行连接的“内”外网络边界处使用防火墙,为“内部”网络(段)与“外部”网络(段)划定安全边界。在网络内部进行各种连接的地方使用带防火墙功能的VPN设备,在进行“内”外网络(段)的隔离的同时建立网络(段)之间的安全通道。
1.防火墙应具备如下功能:
使用NAT把DMZ区的服务器和内部端口影射到Firewall的对外端口;
允许Internet公网用户访问到DMZ区的应用服务:http、ftp、smtp、dns等;
允许DMZ区内的工作站与应用服务器访问Internet公网;
允许内部用户访问DMZ的应用服务:http、ftp、smtp、dns、pop3、https;
允许内部网用户通过代理访问Internet公网;
禁止Internet公网用户进入内部网络和非法访问DMZ区应用服务器;
禁止DMZ区的公开服务器访问内部网络;
防止来自Internet的DOS一类的攻击;
能接受入侵检测的联动要求,可实现对实时入侵的策略响应;
对所保护的主机的常用应用通信协议(http、ftp、telnet、smtp)能够替换服务器的Banner信息,防止恶意用户信息刺探;
提供日志报表的自动生成功能,便于事件的分析;
提供实时的网络状态监控功能,能够实时的查看网络通信行为的连接状态(当前有那些连接、正在连接的IP、正在关闭的连接等信息),通信数据流量。提供连接查询和动态图表显示。
防火墙自身必须是有防黑客攻击的保护能力。
2.带防火墙功能的VPN设备是在防火墙基本功能(隔离和访问控制)基础上,通过功能扩展,同时具有在IP层构建端到端的具有加密选项功能的ESP隧道能力,这类设备也有SVPN的,主要用于通过外部网络(公共通信基础网络)将两个或两个以上“内部”局域网安全地连接起来,一般要求SVPN应具有一下功能:
防火墙基本功能,主要包括:IP包过虑、应用代理、提供DMZ端口和NAT功能等(有些功能描述与上相同);
具有对连接两端的实体鉴别认证能力;
支持移动用户远程的安全接入;
支持IPESP隧道内传输数据的完整性和机密性保护;
提供系统内密钥管理功能;
SVPN设备自身具有防黑客攻击以及网上设备认证的能力。
入侵检测与响应方案
在网络边界配置入侵检测设备,不仅是对防火墙功能的必要补充,而且可与防火墙一起构建网络边界的防御体系。通过入侵检测设备对网络行为和流量的特征分析,可以检测出侵害“内部”网络或对外泄漏的网络行为和流量,与防火墙形成某种协调关系的互动,从而在“内部”网与外部网的边界处形成保护体系。
入侵检测系统的基本功能如下:
通过检测引擎对各种应用协议,操作系统,网络交换的数据进行分析,检测出网络入侵事件和可疑操作行为。
对自身的数据库进行自动维护,无需人工干预,并且不对网络的正常运行造成任何干扰。
采取多种报警方式实时报警、音响报警,信息记录到数据库,提供电子邮件报警、SysLog报警、SNMPTrap报警、Windows日志报警、Windows消息报警信息,并按照预设策略,根据提供的报警信息切断攻击连接。
与防火墙建立协调联动,运行自定义的多种响应方式,及时阻隔或消除异常行为。
全面查看网络中发生的所有应用和连接,完整的显示当前网络连接状态。
可对网络中的攻击事件,访问记录进行适时查询,并可根据查询结果输出图文报表,能让管理人员方便的提取信息。
入侵检测系统犹如摄像头、监视器,在可疑行为发生前有预警,在攻击行为发生时有报警,在攻击事件发生后能记录,做到事前、事中、事后有据可查。
漏洞扫描方案
除利用入侵检测设备检测对网络的入侵和异常流量外,还需要针对主机系统的漏洞采取检查和发现措施。目前常用的方法是配置漏洞扫描设备。主机漏洞扫描可以主动发现主机系统中存在的系统缺陷和可能的安全漏洞,并提醒系统管理员对该缺陷和漏洞进行修补或堵塞。
对于漏洞扫描的结果,一般可以按扫描提示信息和建议,属外购标准产品问题的,应及时升级换代或安装补丁程序;属委托开发的产品问题的,应与开发商协议修改程序或安装补丁程序;属于系统配置出现的问题,应建议系统管理员修改配置参数,或视情况关闭或卸载引发安全漏洞的程序模块或功能模块。
漏洞扫描功能是协助安全管理、掌握网络安全态势的必要辅助,对使用这一工具的安全管理员或系统管理员有较高的技术素质要求。
考虑到漏洞扫描能检测出防火墙策略配置中的问题,能与入侵检测形成很好的互补关系:漏洞扫描与评估系统使系统管理员在事前掌握主动地位,在攻击事件发生前找出并关闭安全漏洞;而入侵检测系统则对系统进行监测以期在系统被破坏之前阻止攻击得逞。因此,漏洞扫描与入侵检测在安全保护方面不但有共同的安全目标,而且关系密切。本方案建议采购将入侵检测、管理控制中心与漏洞扫描一体化集成的产品,不但可以简化管理,而且便于漏洞扫描、入侵检测和防火墙之间的协调动作。
网络防病毒方案
网络防病毒产品较为成熟,且有几种主流产品。本方案建议,网络防病毒系统应具备下列功能:
网络&单机防护—提供个人或家庭用户病毒防护;
文件及存储服务器防护—提供服务器病毒防护;
邮件服务器防护—提供LotusNotes,MicrosoftExchange等病毒防护;
网关防护—在SMTP,HTTP,和FTPservergateway阻挡计算机病毒;
集中管理—为企业网络的防毒策略,提供了强大的集中控管能力。
关于安全设备之间的功能互补与协调运行
各种网络安全设备(防火墙、入侵检测、漏洞扫描、防病毒产品等),都有自己独特的安全探测与安全保护能力,但又有基于自身主要功能的扩展能力和与其它安全功能的对接能力或延续能力。因此,在安全设备选型和配置时,尽可能考虑到相关安全设备的功能互补与协调运行,对于提高网络平台的整体安全性具有重要意义。
防火墙是目前广泛用于隔离网络(段)边界并实施进/出信息流控制的大众型网络安全产品之一。作为不同网络(段)之间的逻辑隔离设备,防火墙将内部可信区域与外部危险区域有效隔离,将网络的安全策略制定和信息流动集中管理控制,为网络边界提供保护,是抵御入侵控制内外非法连接的。
但防火墙具有局限性。这种局限性并不说明防火墙功能有失缺,而且由于本身只应该承担这样的职能。因为防火墙是配置在网络连接边界的通道处的,这就决定了它的基本职能只应提供静态防御,其规则都必须事先设置,对于实时的攻击或异常的行为不能做出实时反应。这些控制规则只能是粗颗粒的,对一些协议细节无法做到完全解析。而且,防火墙无法自动调整策略设置以阻断正在进行的攻击,也无法防范基于协议的攻击。
为了弥补防火墙在实际应用中存在的局限,防火墙厂商主动提出了协调互动思想即联动问题。防火墙联动即将其它安全设备(组件)(例如IDS)探测或处理的结果通过接口引入系统内调整防火墙的安全策略,增强防火墙的访问控制能力和范围,提高整体安全水平。
目前,防火墙形成联动的主要有以下几种方式:
1.与入侵检测实现联动
目前,实现入侵检测和防火墙之间的联动有两种方式。一种是实现紧密结合,即把入侵检测系统嵌入到防火墙中,即入侵检测系统的数据来源不再来源于抓包,而是流经防火墙的数据流。但由于入侵检测系统本身也是一个很庞大的系统,从目前的软硬件处理能力来看,这种联动难于达到预期效果。第二种方式是通过开放接口来实现联动,即防火墙或者入侵检测系统开放一个接口供对方调用,按照一定的协议进行通信、警报和传输,这种方式比较灵活,不影响防火墙和入侵检测系统的性能。
防火墙与入侵检测系统联动,可以对网络进行动静结合的保护,对网络行为进行细颗粒的检查,并对网络内外两个部分都进行可靠管理。【网络安全设计方案3篇】网络安全设计方案3篇。
2.与防病毒实现联动
防火墙处于内外网络信息流的必经之地,在网关一级对病毒进行查杀是网络防病毒的理想措施。目前已有一些厂商的防火墙可以与病毒防治软件进行联动,通过提供API定义异步接口,将数据包转发到装载了网关病毒防护软件的服务器上进行检查,但这种联动由于性能影响,目前并不适宜部署在网络边界处。
3.与日志处理间实现联动
防火墙与日志处理之间的联动,目前国内厂商做的不多。比较有代表性的是CheckPoint的防火墙,它提供两个API:LEA(LogExportAPI)和ELA(EventLoggingAPI),允许第三方访问日志数据。报表和事件分析采用LEAAPI,而安全与事件整合采用ELAAPI。防火墙产品利用这个接口与其他日志服务器合作,将大量的日志处理工作由专门的服务设备完成,提高了专业化程度。
内部网络监控与审计方案
上面的安全措施配置解决了网络边界的隔离与保护,网络与主机的健康(防病毒)运行,以及用户访问网络资源的身份认证和授权问题。
然而,县卫生局网络内部各办公网络、业务网络的运行秩序的维护,网络操作行为的监督,各种违规、违法行为的取证和责任认定,以及对操作系统漏洞引发的安全事件的监视和控制等问题,则是必须予以解决的问题。因此有必要在各种内部办公网络、业务网内部部署集中管理、分布式控制的监控与审计系统。这种系统通过在局域网(子网)内的管理中心安装管理器,在各台主机(PC机)中安装的代理软件形成一个监控与审计(虚拟网络)系统,通过对代理软件的策略配置,使得每台工作主机(PC机)按照办公或业务操作规范进行操作,并对可能经过主机外围接口(USB口、串/并口、软硬盘接口等)引入的非法入侵(包括病毒、木马等),或非法外连和外泄的行为予以阻断和记录;同时管理器通过网络还能及时收集各主机上的安全状态信息并下达控制命令,形成“事前预警、事中控制和事后审计”的监控链。
监控与审计系统应具有下列功能:
管理器自动识别局域网内所有被监控对象之间的网络拓扑关系,并采用图形化显示,包括被监控主机的状态(如在线、离线)等;
支持对包含有多个子网的局域网进行全面监控;
系统对被监控对象的USB移动存储设备、光驱、软驱等外设的使用以及利用这些设备进行文件操作等非授权行为进行实时监视、控制和审计;
系统对被监控对象的串/并口等接口的活动状态进行实时监视、控制和审计;
系统对进出被监控对象的网络通信(www,ftp,pop,smtp)数据包进行实时拦截、分析、处理和审计,对telnet通信数据包进行拦截;
系统可根据策略规定,禁止被监控对象进行拨号(普通modem拨号、ADSL拨号、社区宽带拨号)连接,同时提供审计;
系统对被监控对象运行的所有进程进行实时监视和审计;
系统支持群组管理,管理员可以根据被监控对象的属性特征,将其划分成不同的安全组,对每个组制定不同的安全策略,所有组的成员都根据该策略执行监控功能;
支持多角色管理,系统将管理员和审计员的角色分离,各司其职;
强审计能力,系统具有管理员操作审计、被监控对象发送的事件审计等功能;
系统自身有极强的安全性,能抗欺骗、篡改、伪造、嗅探、重放等攻击。
3. linux中日志文件存在哪里
日志文件通常保存在/var/log目录下。
下面是几个重要的日志文件:
/var/log/messages:包括整体系统信息,其中也包含系统启动期间的日志。
/var/log/syslog:它和/etc/log/messages日志文件不同,它只记录警告信息,常常是系统出问题的信息。
/var/log/user.log:记录所有等级用户信息的日志。/var/log/auth.log:包含系统授权信息,包括用户登录和使用的权限机制等。
(3)syslog加密扩展阅读:
日志文件分为事件日志和消息日志。
事件日志
事件日志记录在系统的执行中发生的事件,以便提供可用于理解系统的活动和诊断问题的跟踪。 它们对理解复杂系统的活动至关重要,特别是在用户交互较少的应用程序中。
它还可以用于组合来自多个源的日志文件条目。 这种方法与统计分析相结合,可以产生不同服务器上看起来不相关的事件之间的相关性。 其他解决方案采用网络范围的查询和报告。
消息日志
互联网中继聊天(IRC),即时消息(IM)程序,具有聊天功能的对等文件共享客户端和多人游戏(特别是MMORPG)通常具有自动记录(即保存)文本通信的能力。
消息日志几乎是通用的纯文本文件,但是IM和VoIP客户端(其支持文本聊天,例如Skype)可以将它们保存在HTML文件中或以自定义格式以便于阅读和加密。
参考资料:网络——日志文件
4. 网络交换机哪些ios版本带加密功能
交换机在公司或机房里是常用的设备.我们来学习一下如何配置
在“傻瓜”型交换机肆意的今天,如何配置交换机对很多人来说都是一门高深的学问,甚至在被问及交换机如何配置时,有人会反问道:交换机还需要配置的么?
确实,交换机的配置过程复杂,而且根据品牌及产品的不同也各不相同,那么我们应该如何配置交换机呢?本文将以图文结合的方式来具体介绍一下交换机配置,希望对大家有所帮助。
交换机本地配置
谈起交换机本地配置,首先我们来看一下交换机的物理连接。交换机的本地配置方式是通过计算机与交换机的“Console”端口直接连接的方式进行通信的。
计算机与交换机的“Console”端口连接
网管型交换机一般都有“Console”端口,用于进行交换机配置。
物理连接完成后就要进行交换机软件配置,下面以思科“Catalyst 1900”为例来说明如何进行交换机软件配置:
第1步:单击“开始”按钮,在“程序”菜单的“附件”选项中单击“超级终端”,弹出如图所示界面。
第2步:双击“Hypertrm”图标,弹出如图所示对话框。这个对话框是用来对立一个新的超级终端连接项。
第3步:在“名称”文本框中键入需新建超的级终端连接项名称,这主要是为了便于识别,没有什么特殊要求,我们这里键入“Cisco”,如果您想为这个连接项选择一个自己喜欢的图标的话,您也可以在下图的图标栏中选择一个,然后单击“确定”按钮,弹出如图所示的对话框。
第4步:在“连接时使用”下拉列表框中选择与交换机相连的计算机的串口。单击“确定”按钮,弹出如图所示的对话框。
第5步:在“波特率”下拉列表框中选择“9600”,因为这是串口的最高通信速率,其他各选项统统采用默认值。单击“确定”按钮,如果通信正常的话就会出现类似于如下所示的主配置界面,并会在这个窗口中就会显示交换机的初始配置情况。
Catalyst 1900 Management Console
Copyright(c)Cisco Systems,Inc。 1993-1999
All rights reserved。
Standard Edition Software
Ethernet address:00-E0-1E-7E-B4-40
PCA Number:73-2239-01
PCA Serial Number:SAD01200001
Model Number:WS-C1924-A
System Serial Number:FAA01200001
User Interface Menu
[M]Menus//主配置菜单
[I]IP Configuration//IP地址等配置
[P]Console Password//控制密码配置
Enter Selection://在此输入要选择项的快捷字母,然后按回车键确认
至此就正式进入了交换机配置界面了,下面的工作就可以正式配置交换机了。
交换机的基本配置
进入配置界面后,如果是第一次配置,则首先要进行的就是IP地址配置,这主要是为后面进行远程配置而准备。IP地址配置方法如下:
在前面所出现的配置界面“Enter Selection:”后中输入“I”字母,然后单击回车键,则出现如下配置信息:
The IP Configuration Menu appears。
Catalyst 1900-IP Configuration
Ethernet Address:00-E0-1E-7E-B4-40
[I]IP address
[S]Subnet mask
[G]Default gateway
[B]Management Bridge Group
[M]IP address of DNS server 1
[N]IP address of DNS server 2
[D]Domain name
[R]Use Routing Information Protocol
-------------Actions-------------------
[P]Ping
[C]Clear cached DNS entries
[X]Exit to previous menu
Enter Selection:
在以上配置界面最后的“Enter Selection:”后再次输入“I”字母,选择以上配置菜单中的“IP address选项,配置交换机的IP地址,单击回车键后即出现如下所示配置界面:
Enter administrative IP address in dotted quad format(nnn。nnn。nnn。nnn)://按”nnn。nnn。nnn。nnn“格式输入IP地址
Current setting===>0.0.0.0//交换机没有配置前的IP地址为”0.0.0.0“,代表任何IP地址
New setting===>//在此处键入新的IP地址
如果你还想配置交换机的子网掩码和默认网关,在以上IP配置界面里面分别选择”S“和”G“项即可。现在我们再来学习一下密码的配置:
在以上IP配置菜单中,选择”X“项退回到前面所介绍的交换机配置界面。
输入”P“字母后按回车键,然后在出现的提示符下输入一个4 ̄8位的密码(为安全起见,在屏幕上都是以”*“号显示),输入好后按回车键确认,重新回到以上登录主界面。
在你配置好IP和密码后,交换机就能够按照默认的配置来正常工作。如果想更改交换机配置以及监视网络状况,你可以通过控制命令菜单,或者是在任何地方通过基于WEB的Catalyst 1900 Switch Manager来进行操作。
如果交换机运行的是Cisco Catalyst 1900/2820企业版软件。你可以通过命令控制端口(command-line
interface CLI)来改变配置。当进入配置主界面后,就在显示菜单多了项”Command Line“,而少了项”Console
Password“,它在下级菜单中进行。
1 user(s)now active on Management Console。
User Interface Menu
[M]Menus
[K]Command Line
[I]IP Configuration
Enter Selection:
在这一版本中的配置方法与前面所介绍的配置方法基本一样,不同的只是在这一版本中可以通过命令方式(选择”[K]Command Line“项即可)进行一些较高级配置,下面本文仅作简单介绍。
远程配置交换机
交换机除了可以通过“Console”端口与计算机直接连接,还可以通过普通端口连接。此时配置交换机就不能用本地配置,而是需要通过Telnet或者Web浏览器的方式实现交换机配置。具体配置方法如下:
1、Telnet
Telnet协议是一种远程访问协议,可以通过它登录到交换机进行配置。
假设交换机IP为:192.168.0.1,通过Telnet进行交换机配置只需两步:
第1步,单机开始,运行,输入“Telnet 192.168.0.1”
第2步,输入好后,单击“确定”按钮,或单击回车键,建立与远程交换机的连接。然后,就可以根据实际需要对该交换机进行相应的配置和管理了。
2、Web
通过Web界面,可以对交换机设置,方法如下:
第1步,运行Web浏览器,在地址栏中输入交换机IP,回车,弹出如下对话框。
第2步,输入正确的用户名和密码。
第3步,连接建立,可进入交换机配置系统。
第4步,根据提示进行交换机设置和参数修改。
交换机的安全配置
交换机的安全配置在病毒肆意的今天越来越受到人们的关注,下面介绍六种交换机配置方法来增强交换机的安全。
1、 L2-L4层过滤
现在的新型交换机大都可以通过建立规则的方式来实现各种过滤需求。规则配置有两种模式,一种是MAC模式配置,可根据用户需要依据源MAC或目的MAC有效实现数据的隔离,另一种是IP模式配置,可以通过源IP、目的IP、协议、源应用端口及目的应用端口过滤数据封包。
建立好的规则必须附加到相应的接收或传送端口上,则当交换机六种安全设置此端口接收或转发数据时,根据过滤规则来过滤封包,决定是转发还是丢弃。另外,交换机六种安全设置通过硬件“逻辑与非门”对过滤规则进行逻辑运算,实现过滤规则确定,完全不影响数据转发速率。
2、802.1X 基于端口的访问控制
为了阻止非法用户对局域网的接入,保障网络的安全性,基于端口的访问控制协议802.1X无论在有线LAN或WLAN中都得到了广泛应用。
持有某用户账号的用户无论在网络内的何处接入,都会超越原有802.1Q 下基于端口VLAN 的限制,始终接入与此账号指定的VLAN组内,这一功能不仅为网络内的移动用户对资源的应用提供了灵活便利,同时又保障了网络资源应用的安全性。
另外,GigaX2024/2048 交换机还支持802.1X的Guest VLAN功能,即在802.1X的应用中,如果端口指定了Guest VLAN项,此端口下的接入用户如果认证失败或根本无用户账号的话,会成为Guest VLAN 组的成员,可以享用此组内的相应网络资源,这一种功能同样可为网络应用的某一些群体开放最低限度的资源,并为整个网络提供了一个最外围的接入安全。
3、流量控制(traffic control)
交换机六种安全设置的流量控制可以预防因为广播数据包、组播数据包及因目的地址错误的单播数据包数据流量过大造成交换机六种安全设置带宽的异常负荷,并可提高系统的整体效能,保持网络安全稳定的运行。
4、SNMP v3及SSH
安全网管SNMP v3 提出全新的体系结构,将各版本的SNMP 标准集中到一起,进而加强网管安全性。SNMP v3 建议的安全模型是基于用户的安全模型,即USM.USM对网管消息进行加密和认证是基于用户进行的。
具体地说就是用什么协议和密钥进行加密和认证均由用户名称(userNmae)权威引擎标识符(EngineID)来决定(推荐加密协议CBCDES,认证协议HMAC-MD5-96 和HMAC-SHA-96),通过认证、加密和时限提供数据完整性、数据源认证、数据保密和消息时限服务,从而有效防止非授权用户对管理信息的修改、伪装和窃听。
至于通过Telnet 的远程网络管理,由于Telnet 服务有一个致命的弱点——它以明文的方式传输用户名及口令,所以,很容易被别有用心的人窃取口令,受到攻击,但采用SSH进行通讯时,用户名及口令均进行了加密,有效防止了对口令的窃听,便于网管人员进行远程的安全网络管理。
5、Syslog和Watchdog
交换机的Syslog日志功能可以将系统错误、系统配置、状态变化、状态定期报告、系统退出等用户设定的期望信息传送给日志服务器,网管人员依据这些信息掌握设备的运行状况,及早发现问题,及时进行配置设定和排障,保障网络安全稳定地运行。
Watchdog 通过设定一个计时器,如果设定的时间间隔内计时器没有重启,则生成一个内在CPU重启指令,使设备重新启动,这一功能可使交换机在紧急故障或意外情况下时可智能自动重启,保障网络的运行。
6、双映像文件
一些最新的交换机,像ASUSGigaX2024/2048还具备双映像文件。这一功能保护设备在异常情况下(固件升级失败等)仍然可正常启动运行。文件系统分majoy和
mirror两部分进行保存,如果一个文件系统损害或中断,另外一个文件系统会将其重写,如果两个文件系统都损害,则设备会清除两个文件系统并重写为出厂时默认设置,确保系统安全启动运行。
如何清除交换机配置
一、清除交换机配置命令:write erase
二、删除vlan.
第一步:察看当前VLAN配置
Cat2950#show vlan
第二步:察看Flash中的文件名称(交换机的配置文件和ios都保存在Flash中)
Cat2950#dir flash: 看一下VLAN文件在FLASH里的具体名称,一般的都是VLAN.DAT
第三步:删除vlan.dat (交换机的VLAN信息保存在vlan.dat中)
Cat2950#delete flash:vlan.dat
第四步:察看当前的VLAN配置
Cat2950#show vlan
至此,交换机配置讲解结束,希望本教程对您有所帮助。
5. 如何使Linux服务器变得更安全
1.安装和配置一个防火墙
一个配置适当的防火墙不仅是系统有效应对外部攻击的第一道防线,也是最重要的一道防线。在新系统第一次连接上Internet之前,防火墙就应该被安装并且配置好。防火墙配置成拒绝接收所有数据包,然后再打开允许接收的数据包,将有利于系统的安全。Linux为我们提供了一个非常优秀的防火墙工具,它就是netfilter/iptables。它完全是免费的,并且可以在一台低配置的老机器上很好地运行。防火墙的具体设置方法请参见iptables使用方法。
2、关闭无用的服务和端口
任何网络连接都是通过开放的应用端口来实现的。如果我们尽可能少地开放端口,就使网络攻击变成无源之水,从而大大减少了攻击者成功的机会。把Linux作为专用服务器是个明智的举措。例如,希望Linux成为的Web服务器,可以取消系统内所有非必要的服务,只开启必要服务。这样做可以尽量减少后门,降低隐患,而且可以合理分配系统资源,提高整机性能。以下是几个不常用的服务:
① fingerd(finger服务器)报告指定用户的个人信息,包括用户名、真实姓名、shell、目录和联系方式,它将使系统暴露在不受欢迎的情报收集活动下,应避免启动此服务。
② R服务(rshd、rlogin、rwhod、rexec)提供各种级别的命令,它们可以在远程主机上运行或与远程主机交互,在封闭的网络环境中登录而不再要求输入用户名和口令,相当方便。然而在公共服务器上就会暴露问题,导致安全威胁。
3、删除不用的软件包
在进行系统规划时,总的原则是将不需要的服务一律去掉。默认的Linux就是一个强大的系统,运行了很多的服务。但有许多服务是不需要的,很容易引起安全风险。这个文件就是/etc/xinetd.conf,它制定了/usr/sbin/xinetd将要监听的服务,你可能只需要其中的一个:ftp,其它的类如telnet、shell、login、exec、talk、ntalk、imap、finger、auth等,除非你真的想用它,否则统统关闭。
4、不设置缺省路由
在主机中,应该严格禁止设置缺省路由,即default route。建议为每一个子网或网段设置一个路由,否则其它机器就可能通过一定方式访问该主机。
5、口令管理
口令的长度一般不要少于8个字符,口令的组成应以无规则的大小写字母、数字和符号相结合,严格避免用英语单词或词组等设置口令,而且各用户的口令应该养成定期更换的习惯。另外,口令的保护还涉及到对/etc/passwd和/etc/shadow文件的保护,必须做到只有系统管理员才能访问这2个文件。安装一个口令过滤工具加npasswd,能帮你检查你的口令是否耐得住攻击。如果你以前没有安装此类的工具,建议你现在马上安装。如果你是系统管理员,你的系统中又没有安装口令过滤工具,请你马上检查所有用户的口令是否能被穷尽搜索到,即对你的/ect/passwd文件实施穷尽搜索攻击。用单词作密码是根本架不住暴力攻击的。黑客们经常用一些常用字来破解密码。曾经有一位美国黑客表示,只要用“password”这个字,就可以打开全美多数的计算机。其它常用的单词还有:account、ald、alpha、beta、computer、dead、demo、dollar、games、bod、hello、help、intro、kill、love、no、ok、okay、please、sex、secret、superuser、system、test、work、yes等。
密码设置和原则:
a.足够长,指头只要多动一下为密码加一位,就可以让攻击者的辛苦增加十倍;
b. 不要用完整的单词,尽可能包括数字、标点符号和特殊字符等;
c.混用大小写字符;
d.经常修改。
6、分区管理
一个潜在的攻击,它首先就会尝试缓冲区溢出。在过去的几年中,以缓冲区溢出为类型的安全漏洞是最为常见的一种形式了。更为严重的是,缓冲区溢出漏洞占了远程网络攻击的绝大多数,这种攻击可以轻易使得一个匿名的Internet用户有机会获得一台主机的部分或全部的控制权!。
为了防止此类攻击,我们从安装系统时就应该注意。如果用root分区记录数据,如log文件,就可能因为拒绝服务产生大量日志或垃圾邮件,从而导致系统崩溃。所以建议为/var开辟单独的分区,用来存放日志和邮件,以避免root分区被溢出。最好为特殊的应用程序单独开一个分区,特别是可以产生大量日志的程序,还建议为/home单独分一个区,这样他们就不能填满/分区了,从而就避免了部分针对Linux分区溢出的恶意攻击。
很多Linux桌面用户往往是使用Windows、Linux双系统。最好使用双硬盘。方法如下:首先将主硬盘的数据线拆下,找一个10GB左右的硬盘挂在计算机上,将小硬盘设置为从盘,按照平常的操作安装Linux服务器版本,除了启动的引导程序放在MBR外,其它没有区别。 安装完成,调试出桌面后,关闭计算机。将小硬盘的数据线拆下,装上原硬盘,并设定为主盘(这是为了原硬盘和小硬盘同时挂接在一个数据线上),然后安装Windows软件。将两个硬盘都挂在数据线上,数据线是IDE 0接口,将原硬盘设定为主盘,小硬盘设定为从盘。如果要从原硬盘启动,就在CMOS里将启动的顺序设定为“C、D、CDROM”,或者是“IDE0(HDD-0)”。这样计算机启动的时候,进入Windows界面。如果要从小硬盘启动,就将启动顺序改为“D、C、CDROM”,或者是“IDE1(HDD-1)”,启动之后,将进入Linux界面。平时两个操作系统是互相不能够访问的。
7、防范网络嗅探:
嗅探器技术被广泛应用于网络维护和管理方面,它工作的时候就像一部被动声纳,默默的接收看来自网络的各种信息,通过对这些数据的分析,网络管理员可以深入了解网络当前的运行状况,以便找出网络中的漏洞。在网络安全日益被注意的今天.我们不但要正确使用嗅探器.还要合理防范嗅探器的危害.嗅探器能够造成很大的安全危害,主要是因为它们不容易被发现。对于一个安全性能要求很严格的企业,同时使用安全的拓扑结构、会话加密、使用静态的ARP地址是有必要的。
8、完整的日志管理
日志文件时刻为你记录着你的系统的运行情况。当黑客光临时,也不能逃脱日志的法眼。所以黑客往往在攻击时修改日志文件,来隐藏踪迹。因此我们要限制对/var/log文件的访问,禁止一般权限的用户去查看日志文件。
另外要使用日志服务器。将客户机的日志信息保存副本是好主意,创建一台服务器专门存放日志文件,可以通过检查日志来发现问题。修改/etc/sysconfig/syslog文件加入接受远程日志记录。
/etc/sysconfig/syslog SYSLOGD_OPTIONS="-m r 0"
还应该设定日志远程保存。修改/etc/syslog.conf文件加入日志服务器的设置,syslog将保存副本在日志服务器上。
/etc/syslog.conf *.* @log_server_IP
可以使用彩色日志过滤器。彩色日志loco过滤器,目前版本是0.32。使用loco /var/log/messages | more可以显示出彩色的日志,明显标记出root的位置和日志中异常的命令。这样可以减少分析日志时人为遗漏。还要进行日志的定期检查。Red Hat Linux中提供了logwatch工具,定期自动检查日志并发送邮件到管理员信箱。需要修改/etc/log.d/conf/ logwatch.conf文件,在MailTo = root参数后增加管理员的邮件地址。Logwatch会定期检查日志,过滤有关使用root、sudo、telnet、ftp登录等信息,协助管理员分析日常安全。完整的日志管理要包括网络数据的正确性、有效性、合法性。对日志文件的分析还可以预防入侵。例如、某一个用户几小时内的20次的注册失败记录,很可能是入侵者正在尝试该用户的口令。
9、终止正进行的攻击
假如你在检查日志文件时,发现了一个用户从你未知的主机登录,而且你确定此用户在这台主机上没有账号,此时你可能正被攻击。首先你要马上锁住此账号(在口令文件或shadow文件中,此用户的口令前加一个Ib或其他的字符)。若攻击者已经连接到系统,你应马上断开主机与网络的物理连接。如有可能,你还要进一步查看此用户的历史记录,查看其他用户是否也被假冒,攻击音是否拥有根权限。杀掉此用户的所有进程并把此主机的ip地址掩码加到文件hosts.deny中。
10、使用安全工具软件:
Linux已经有一些工具可以保障服务器的安全。如bastille linux和Selinux。 bastille linux对于不熟悉 linux 安全设定的使用者来说,是一套相当方便的软件,bastille linux 目的是希望在已经存在的 linux 系统上,建构出一个安全性的环境。增强安全性的Linux(SELinux)是美国安全部的一个研发项目,它的目的在于增强开发代码的Linux内核,以提供更强的保护措施,防止一些关于安全方面的应用程序走弯路,减轻恶意软件带来的灾难。普通的Linux系统的安全性是依赖内核的,这个依赖是通过setuid/setgid产生的。在传统的安全机制下,暴露了一些应用授权问题、配置问题或进程运行造成整个系统的安全问题。这些问题在现在的操作系统中都存在,这是由于他们的复杂性和与其它程序的互用性造成的。SELinux只单单依赖于系统的内核和安全配置政策。一旦你正确配置了系统,不正常的应用程序配置或错误将只返回错误给用户的程序和它的系统后台程序。其它用户程序的安全性和他们的后台程序仍然可以正常运行,并保持着它们的安全系统结构。用简单一点的话说就是:没有任何的程序配置错误可以造成整个系统的崩溃。安装SELinux SELinux的内核、工具、程序/工具包,还有文档都可以到增强安全性的Linux网站上上下载你必须有一个已经存在的Linux系统来编译你的新内核,这样才能访问没有更改的系统补丁包。
11.使用保留IP地址
维护网络安全性最简单的方法是保证网络中的主机不同外界接触。最基本的方法是与公共网络隔离。然而,这种通过隔离达到的安全性策略在许多情况下是不能接受的。这时,使用保留IP地址是一种简单可行的方法,它可以让用户访问Internet同时保证一定的安全性。- RFC 1918规定了能够用于本地 TCP/IP网络使用的IP地址范围,这些IP地址不会在Internet上路由,因此不必注册这些地址。通过在该范围分配IP地址,可以有效地将网络流量限制在本地网络内。这是一种拒绝外部计算机访问而允许内部计算机互联的快速有效的方法。 保留IP地址范围:
---- 10.0.0 .0 - 10.255.255.255
---- 172.16.0.0 - 172.31.255.255
--- 192.168.0.0 - 192.168.255.255。
来自保留IP地址的网络交通不会经过Internet路由器,因此被赋予保留IP地址的任何计算机不能从外部网络访问。但是,这种方法同时也不允许用户访问外部网络。IP伪装可以解决这一问题。
12、合理选择Linux发行版本:
对于服务器使用的Linux版本,既不使用最新的发行版本,也不选择太老的版本。应当使用比较成熟的版本:前一个产品的最后发行版本如RHEL 3.0等。毕竟对于服务器来说安全稳定是第一的。
13、部署Linux防范病毒软件
Linux操作系统一直被认为是Windows系统的劲敌,因为它不仅安全、稳定、成本低,而且很少发现有病毒传播。但是,随着越来越多的服务器、工作站和个人电脑使用Linux软件,电脑病毒制造者也开始攻击这一系统。对于Linux系统无论是服务器,还是工作站的安全性和权限控制都是比较强大的,这主要得力于其优秀的技术设计,不仅使它的作业系统难以宕机,而且也使其难以被滥用。Unix经过20多年的发展和完善,已经变得非常坚固,而Linux基本上继承了它的优点。在Linux里,如果不是超级用户,那么恶意感染系统文件的程序将很难得逞。速客一号(Slammer)、冲击波(Blast)、霸王虫(Sobig)、 米虫(Mimail)、劳拉(Win32.Xorala)病毒等恶性程序虽然不会损坏Linux服务器,但是却会传播给访问它的Windows系统平台的计算机。
6. linux下最常用的远程管理工具是什么 ss
在我们日常管理与维护服务器个过程中,我们都需要使用远程连接工具,今天我们就一同来总结下Linux常用的安全远程连接工具-OpenSSH。
【远程登录协议】
1、telnet:是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主
机工作的能力。默认使用的是TCP的23号端口,采用C/S架构,在用户登录的过程中传输的信息都是明文信息,安全无法保障,所以不建议用telnet。
2、ssh:为Secure Shell 的缩写,由IETF的网络工作小组所制定;SSH
为建立在应用层和传输层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH
协议可以有效防止远程管理过程中的信息泄露问题。默认使用的是TCP的22号端口,也是基于C/S架构,SSH有两个版本v1与v2。
sshv1:基于CRC-32做MAC(消息摘要认证),不安全,强烈建议不使用;
sshv2:基于双方主机的协商选择使用最安全的MAC方式 ,其有如下特点:1、加密机制及MAC机制由双方协商选定;2、基于DH实现密钥交换,基于RSA或DSA实现身份认证;3、客户端通过检查服务器端的主机密钥来判断是否能够继续通信;
【OpenSSH简述】
OpenSSH 是一组用于安全地访问远程计算机的连接工具。它可以作为rlogin、rsh
rcp以及telnet的直接替代品使用。更进一步,其他任何TCP/IP连接都可以通过SSH安全地进行隧道/转发。OpenSSH
对所有的传输进行加密,从而有效地阻止了窃听、连接劫持,以及其他网络级的攻击。OpenSSH 由 OpenBSD project 维护。
登录过程和使用rlogin或telnet建立的会话非常类似。在连接时,SSH
会利用一个密钥指纹系统来验证服务器的真实性。只有在第一次连接时,用户会被要求输入yes进行确认,之后的连接将会验证预先保存下来的密钥指纹。如果保
存的指纹与登录时接收到的不符, 则将会给出警告。 指纹保存在 ~/.ssh/known_hosts中,对于SSHv2指纹,则是
~/.ssh/known_hosts2。
默认情况下,较新版本的OpenSSH只接受SSHv2连接。如果能用版本2则客户程序会自动使用,否则它会返回使用版本1的模式。此外,也可以通
过命令行参数-1或-2来相应地强制使用版本1或2。 保持客户端的版本1能力是为了考虑较早版本的兼容性,建议尽量使用版本2。
【SSH服务器和客户端工作流程】
OpenSSH使用C/S架构:
服务端工具(S):sshd
客户端工具(C):ssh命令、putty、xshell、securecrt、sshshellclient;
【OpenSSH客户端组件-ssh】
配置文本:/etc/ssh/ssh_config
使用方法:
ssh [username@] host [COMMAND]或 ssh -l username host [COMMAND]
-p PORT:指定远程服务器端口;
-l username:指定登录远程主机的用户,不指定则使用当前用户;
username@:等同于 -l username;
如果设置了COMMAND,表示使用username账户登录远程主机执行一次指定的命令并返回结果,不会停留在远程主机上;
[root@www ~]# ssh 192.168.0.110 #使用root用户登录;
The authenticity of host '192.168.0.110 (192.168.0.110)' can't be established.
RSA key fingerprint is 01:2e:43:cc:bc:1d:f1:e5:f0:f4:89:78:74:a9:49:44.
Are you sure you want to continue connecting (yes/no)? yes #第一次连接,需手动进行确认;
Warning: Permanently added '192.168.0.110' (RSA) to the list of known hosts.
[email protected]'s password: #输入远程主机root账户的密码;
Last login: Mon May 11 16:44:52 2015 from 192.168.0.104
[root@mailCentOS6 ~]# #登录成功了,远程主机名为mailCentOS6;
[root@mailCentOS6 ~]# ls #显示远程主机root家目录下的文件;
2.sh boot.iso install.log sdb.mbr test1
anaconda-ks.cfg crontab install.log.syslog \temp\test
[root@mailCentOS6 ~]# exit #退出登录;
logout
Connection to 192.168.0.110 closed.
[root@www ~]# ssh [email protected] ls #使用root登录远程主机,执行一次ls命令,返回结果便退出;
[email protected]'s password: #第二次连接,就不需要输入yes了,直接输入密码即可;
2.sh
anaconda-ks.cfg
boot.iso
crontab
install.log
install.log.syslog
sdb.mbr
\temp\test
test1
[root@www ~]# #看到了吗,我们当前并没有登录在远程主机;
【OpenSSH服务器端组件-sshd】
配置文件:/etc/ssh/sshd_config(通过修改此文件可以修改ssh的默认监听端口与其他参数)
服务脚本:/etc/rc.d/init.d/sshd
服务启动|停止|重启:serveice sshd start|stop|restart
脚本配置文件:/etc/sysconfig/sshd
配置参数
# man sshd_config 查看配置参数的说明;
# vim /etc/sysconfig/sshd 通过编辑配置文件来修改配置参数;
#+空格+文字:以此格式开头的行表示改行为注释说明;
#+文字:以此格式开头的行表示可启用选项,不改变则表示使用该选项的默认设置,反之使用设定值“#”要去掉哦!
例:#Port 22 如不去掉#且22不变,表示使用默认的22号端口;
若把#Port 22改成port 7777,表示把sshd的监听端口改成7777;
注意:修改参数与配置后,必须重启服务(service sshd restart).
经常需要修改的参数:
[root@www ~]# cat /etc/ssh/sshd_config
# $OpenBSD: sshd_config,v 1.80 2008/07/02 02:24:18 djm Exp $
# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options change a
# default value.
#Port 22 #修改默认监听的端口;
port 7777 #把sshd的监听端口改成7777;
#AddressFamily any #监听的地址家族,指定是监听在IPV4上还是IPV6上,any表示所有;
#ListenAddress 0.0.0.0 #指定监听的地址 (0.0.0.0表示本机的所有地址);
#ListenAddress ::
# Disable legacy (protocol version 1) support in the server for new
# installations. In future the default will change to require explicit
# activation of protocol 1
Protocol 2
# HostKey for protocol version 1
#HostKey /etc/ssh/ssh_host_key #使用shhv1用到的主机密钥;
# HostKeys for protocol version 2
#HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_dsa_key
# Lifetime and size of ephemeral version 1 server key
#KeyRegenerationInterval 1h
#ServerKeyBits 1024 #密钥长度;
# Logging
# obsoletes QuietMode and FascistLogging
#SyslogFacility AUTH
SyslogFacility AUTHPRIV
#LogLevel INFO
# Authentication:
#LoginGraceTime 2m #登录宽限期;
#PermitRootLogin yes #是否允许管理员直接登录;
#StrictModes yes
#MaxAuthTries 6 #最大密码输入错误次数;
#MaxSessions 10 #最大会话个数;
#RSAAuthentication yes #是否允许使用RSA机制来认证;
#PubkeyAuthentication yes
#--------中间不长改变的配置参数略----------
Subsystem sftp /usr/libexec/openssh/sftp-server #表示是否启动sftp功能;
# Example of overriding settings on a per-user basis
#Match User anoncvs
# X11Forwarding no
# AllowTcpForwarding no
# ForceCommand cvs server
sshd认证方式:
1、基于口令的认证;
2、基于密钥的认证;
# ssh-keygen -t rsa 用rsa算法生成密钥,默认密钥为id_rsa(私钥), id_rsa.pub(公钥)
# ssh-keygen -f /path/to/somefile -P oldpassword 根据现有的密钥文件生成密钥
-f /path/to/somefile: 密钥文件保存在的位置;
-P '': 指定生成旧密钥时使用的密码;
方法一:把本地主机生成的公钥 id_rsa.pub使用scp复制到远程主机的上,在远程主机使用cat id_rsa.pub>>.ssh/authorized_keys追加该公钥信息,这样就可以实现基于密钥认证的ssh登录;
方法二:# ssh--id -i .ssh/id_rsa.pub USERNAME@HOST
[root@www ~]# ssh-keygen -t rsa #用rsa算法生成密钥;
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): #指定密钥存放路径及名称,一般不用
#修改,直接回车;
Enter passphrase (empty for no passphrase): #输入私钥密码;
Enter same passphrase again: #确认输入私钥密码;
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
c2:f9:c2:3d:4d:ca:52:39:7a:a7:33:de:42:11:d3:8f [email protected]
The key's randomart image is:
+--[ RSA 2048]----+
| . |
| o . |
| o o |
| . ...E . |
| + S.. |
| . B.= |
| =.B o |
| ++= |
| .o+. |
+-----------------+
[root@www ~]# ssh-keygen -f .ssh/id_rsa -P '' #根据现有密钥文件重新生成密钥;
Generating public/private rsa key pair.
.ssh/id_rsa already exists.
Overwrite (y/n)? y #提示是否确定要覆盖;
Your identification has been saved in .ssh/id_rsa.
Your public key has been saved in .ssh/id_rsa.pub.
The key fingerprint is:
bf:55:f0:0b:a5:ee:4e:4a:1d:d3:b1:0e:66:ee:55:9b [email protected]
The key's randomart image is:
+--[ RSA 2048]----+
| |
| |
| . o |
| * o |
| S O = .|
| . * B oo|
| o * +E |
| . B . |
| o.+ |
+-----------------+
#-----使用方法一:实现通过密钥文件完成身份验证(不需要输入密码)-----
[root@www ~]# scp .ssh/id_rsa.pub [email protected]:/root/ #使用spc命令复制公钥文件到远程
#主机的用户家目录下的.ss/路径下;
[email protected]'s password: #输入登录远程主机的密码;
id_rsa.pub 100% 397 0.4KB/s 00:00 #提示复制成功;
[root@mailCentOS6 ~]# ls .ssh/ #验证确认文件复制成功;
id_rsa.pub known_hosts
[root@mailCentOS6 ~]# touch .ssh/authorized_keys #路径内没有自动验证密钥文件,创建一个;
[root@mailCentOS6 ~]# cat .ssh/id_rsa.pub >> .ssh/authorized_keys #把公钥追加到自动验证密钥文件;
[root@www ~]# ssh 192.168.0.110
Last login: Mon May 11 20:45:10 2015 from 192.168.0.111
[root@mailCentOS6 ~]# #OK了,看到了没有,不用输入密码我们就直接可以远程登录了!!
#-----使用方法二:实现通过密钥文件完成身份验证(不需要输入密码)-----
[root@mailCentOS6 ~]# rm -f .ssh/authorized_keys #删除原有保存的自动验证密钥文件;
[root@www ~]# ssh--id -i .ssh/id_rsa.pub [email protected] #使用命令自动传输生成自动验证密钥文件;
[email protected]'s password:
Now try logging into the machine, with "ssh '[email protected]'", and check in:
.ssh/authorized_keys #提示生成的文件;
to make sure we haven't added extra keys that you weren't expecting.
[root@www ~]# ssh 192.168.0.110 #验证看看是否可以登录;
Last login: Mon May 11 21:02:29 2015 from 192.168.0.111
[root@mailCentOS6 ~]# ls .ssh/ #看到了没有,我们现在已经登录到了mailCentOS6这台主机上了;
authorized_keys known_hosts
【命令补充】
scp: 利用ssh协议在主机之间实现安全文件传输的工具
scp SRC1... DEST
分两种情形:
1、源文件在本机,目标为远程主机
# scp /path/to/somefile... USERNAME@HOST:/path/to/somewhere
源可以是目录或文件有多个,目标必须是目录
2、源文件在远程,本地为目标
# scp USERNAME@HOST:/path/to/somewhere /path/to/somewhere
-r: 复制目录时使用(实现递归复制),scp默认不能复制目录;
-p: 保持源文件的元数据信息,包括mode和timestamp
-q: 静默模式,复制过程不显示状态信息;
-p PORT: 指定ssh协议监听的端口(远程主机)。
7. linux安全加固应关闭什么服务
这些都是安全加固的方法,服务不是靠关闭就能加固的。
一. 账户安全
1.1 锁定系统中多余的自建帐号
检查方法:
执行命令
#cat /etc/passwd
#cat /etc/shadow
查看账户、口令文件,与系统管理员确认不必要的账号。对于一些保留的系统伪帐户如:bin, sys,adm,uucp,lp, nuucp,hpdb, www, daemon等可根据需要锁定登陆。
备份方法:
#cp -p /etc/passwd /etc/passwd_bak
#cp -p /etc/shadow /etc/shadow_bak
加固方法:
使用命令passwd -l <用户名>锁定不必要的账号。
使用命令passwd -u <用户名>解锁需要恢复的账号。
图1
风险:
需要与管理员确认此项操作不会影响到业务系统的登录
1.2设置系统口令策略
检查方法:
使用命令
#cat /etc/login.defs|grep PASS查看密码策略设置
备份方法:
cp -p /etc/login.defs /etc/login.defs_bak
加固方法:
#vi /etc/login.defs修改配置文件
PASS_MAX_DAYS 90 #新建用户的密码最长使用天数
PASS_MIN_DAYS 0 #新建用户的密码最短使用天数
PASS_WARN_AGE 7 #新建用户的密码到期提前提醒天数
PASS_MIN_LEN 9 #最小密码长度9
图2
风险:无可见风险
1.3禁用root之外的超级用户
检查方法:
#cat /etc/passwd 查看口令文件,口令文件格式如下:
login_name:password:user_ID:group_ID:comment:home_dir:command
login_name:用户名
password:加密后的用户密码
user_ID:用户ID,(1 ~ 6000) 若用户ID=0,则该用户拥有超级用户的权限。查看此处是否有多个ID=0。
group_ID:用户组ID
comment:用户全名或其它注释信息
home_dir:用户根目录
command:用户登录后的执行命令
备份方法:
#cp -p /etc/passwd /etc/passwd_bak
加固方法:
使用命令passwd -l <用户名>锁定不必要的超级账户。
使用命令passwd -u <用户名>解锁需要恢复的超级账户。
风险:需要与管理员确认此超级用户的用途。
1.4 限制能够su为root的用户
检查方法:
#cat /etc/pam.d/su,查看是否有auth required /lib/security/pam_wheel.so这样的配置条目
备份方法:#cp -p /etc/pam.d /etc/pam.d_bak
加固方法:
#vi /etc/pam.d/su
在头部添加:
auth required /lib/security/pam_wheel.so group=wheel
这样,只有wheel组的用户可以su到root
#usermod -G10 test 将test用户加入到wheel组
图3
风险:需要PAM包的支持;对pam文件的修改应仔细检查,一旦出现错误会导致无法登陆;和管理员确认哪些用户需要su。
当系统验证出现问题时,首先应当检查/var/log/messages或者/var/log/secure中的输出信息,根据这些信息判断用户账号的有效
性。如果是因为PAM验证故障,而引起root也无法登录,只能使用single user或者rescue模式进行排错。
1.5 检查shadow中空口令帐号
检查方法:
#awk -F: '( == "") { print }' /etc/shadow
备份方法:cp -p /etc/shadow /etc/shadow_bak
加固方法:对空口令账号进行锁定,或要求增加密码
图4
风险:要确认空口令账户是否和应用关联,增加密码是否会引起应用无法连接。
二、最小化服务
2.1 停止或禁用与承载业务无关的服务
检查方法:
#who –r或runlevel 查看当前init级别
#chkconfig --list 查看所有服务的状态
备份方法:记录需要关闭服务的名称
加固方法:
#chkconfig --level <服务名> on|off|reset 设置服务在个init级别下开机是否启动
图5
风险:某些应用需要特定服务,需要与管理员确认。
三、数据访问控制
3.1 设置合理的初始文件权限
检查方法:
#cat /etc/profile 查看umask的值
备份方法:
#cp -p /etc/profile /etc/profile_bak
加固方法:
#vi /etc/profile
umask=027
风险:会修改新建文件的默认权限,如果该服务器是WEB应用,则此项谨慎修改。
四、网络访问控制
4.1 使用SSH进行管理
检查方法:
#ps –aef | grep sshd 查看有无此服务
备份方法:
加固方法:
使用命令开启ssh服务
#service sshd start
风险:改变管理员的使用习惯
4.2 设置访问控制策略限制能够管理本机的IP地址
检查方法:
#cat /etc/ssh/sshd_config 查看有无AllowUsers的语句
备份方法:
#cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_bak
加固方法:
#vi /etc/ssh/sshd_config,添加以下语句
AllowUsers *@10.138.*.* 此句意为:仅允许10.138.0.0/16网段所有用户通过ssh访问
保存后重启ssh服务
#service sshd restart
风险:需要和管理员确认能够管理的IP段
4.3 禁止root用户远程登陆
检查方法:
#cat /etc/ssh/sshd_config 查看PermitRootLogin是否为no
备份方法:
#cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_bak
加固方法:
#vi /etc/ssh/sshd_config
PermitRootLogin no
保存后重启ssh服务
service sshd restart
图6
风险:root用户无法直接远程登录,需要用普通账号登陆后su
4.4 限定信任主机
检查方法:
#cat /etc/hosts.equiv 查看其中的主机
#cat /$HOME/.rhosts 查看其中的主机
备份方法:
#cp -p /etc/hosts.equiv /etc/hosts.equiv_bak
#cp -p /$HOME/.rhosts /$HOME/.rhosts_bak
加固方法:
#vi /etc/hosts.equiv 删除其中不必要的主机
#vi /$HOME/.rhosts 删除其中不必要的主机
风险:在多机互备的环境中,需要保留其他主机的IP可信任。
4.5 屏蔽登录banner信息
检查方法:
#cat /etc/ssh/sshd_config 查看文件中是否存在Banner字段,或banner字段为NONE
#cat /etc/motd 查看文件内容,该处内容将作为banner信息显示给登录用户。
备份方法:
#cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config_bak
#cp -p /etc/motd /etc/motd_bak
加固方法:
#vi /etc/ssh/sshd_config
banner NONE
#vi /etc/motd
删除全部内容或更新成自己想要添加的内容
风险:无可见风险
4.6 防止误使用Ctrl+Alt+Del重启系统
检查方法:
#cat /etc/inittab|grep ctrlaltdel 查看输入行是否被注释
备份方法:
#cp -p /etc/inittab /etc/inittab_bak
加固方法:
#vi /etc/inittab
在行开头添加注释符号“#”
#ca::ctrlaltdel:/sbin/shutdown -t3 -r now
图7
风险:无可见风险
五、用户鉴别
5.1 设置帐户锁定登录失败锁定次数、锁定时间
检查方法:
#cat /etc/pam.d/system-auth 查看有无auth required pam_tally.so条目的设置
备份方法:
#cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth_bak
加固方法:
#vi /etc/pam.d/system-auth
auth required pam_tally.so onerr=fail deny=6 unlock_time=300 设置为密码连续错误6次锁定,锁定时间300秒
解锁用户 faillog -u <用户名> -r
风险:需要PAM包的支持;对pam文件的修改应仔细检查,一旦出现错误会导致无法登陆;
当系统验证出现问题时,首先应当检查/var/log/messages或者/var/log/secure中的输出信息,根据这些信息判断用户账号的有效
性。
5.2 修改帐户TMOUT值,设置自动注销时间
检查方法:
#cat /etc/profile 查看有无TMOUT的设置
备份方法:
#cp -p /etc/profile /etc/profile_bak
加固方法:
#vi /etc/profile
增加
TMOUT=600 无操作600秒后自动退出
风险:无可见风险
5.3 Grub/Lilo密码
检查方法:
#cat /etc/grub.conf|grep password 查看grub是否设置密码
#cat /etc/lilo.conf|grep password 查看lilo是否设置密码
备份方法:
#cp -p /etc/grub.conf /etc/grub.conf_bak
#cp -p /etc/lilo.conf /etc/lilo.conf_bak
加固方法:为grub或lilo设置密码
风险:etc/grub.conf通常会链接到/boot/grub/grub.conf
5.4 限制FTP登录
检查方法:
#cat /etc/ftpusers 确认是否包含用户名,这些用户名不允许登录FTP服务
备份方法:
#cp -p /etc/ftpusers /etc/ftpusers_bak
加固方法:
#vi /etc/ftpusers 添加行,每行包含一个用户名,添加的用户将被禁止登录FTP服务
风险:无可见风险
5.5 设置Bash保留历史命令的条数
检查方法:
#cat /etc/profile|grep HISTSIZE=
#cat /etc/profile|grep HISTFILESIZE= 查看保留历史命令的条数
备份方法:
#cp -p /etc/profile /etc/profile_bak
加固方法:
#vi /etc/profile
修改HISTSIZE=5和HISTFILESIZE=5即保留最新执行的5条命令
图8
风险:无可见风险
六、审计策略
6.1 配置系统日志策略配置文件
检查方法:
#ps –aef | grep syslog 确认syslog是否启用
#cat /etc/syslog.conf 查看syslogd的配置,并确认日志文件是否存在
系统日志(默认)/var/log/messages
cron日志(默认)/var/log/cron
安全日志(默认)/var/log/secure
备份方法:
#cp -p /etc/syslog.conf
图9
6.2 为审计产生的数据分配合理的存储空间和存储时间
检查方法:
#cat /etc/logrotate.conf 查看系统轮询配置,有无
# rotate log files weekly
weekly
# keep 4 weeks worth of backlogs
rotate 4 的配置
备份方法:
#cp -p /etc/logrotate.conf /etc/logrotate.conf_bak
加固方法:
#vi /etc/logrotate.d/syslog
增加
rotate 4 日志文件保存个数为4,当第5个产生后,删除最早的日志
size 100k 每个日志的大小
加固后应类似如下内容:
/var/log/syslog/*_log {
missingok
notifempty
size 100k # log files will be rotated when they grow bigger that 100k.
rotate 5 # will keep the logs for 5 weeks.
compress # log files will be compressed.
sharedscripts
postrotate
/etc/init.d/syslog condrestart >/dev/null 2>1 || true
endscript
}
8. 如何检查Linux系统服务器的安全性
但由于该操作系统是一个多用户操作系统,黑客们为了在攻击中隐藏自己,往往会选择 Linux作为首先攻击的对象。那么,作为一名Linux用户,我们该如何通过合理的方法来防范Linux的安全呢?下面笔者搜集和整理了一些防范 Linux安全的几则措施,现在把它们贡献出来,恳请各位网友能不断补充和完善。 1、禁止使用Ping命令Ping命令是计算机之间进行相互检测线路完好的一个应用程序,计算机间交流数据的传输没有 经过任何的加密处理,因此我们在用ping命令来检测某一个服务器时,可能在因特网上存在某个非法分子,通过专门的黑客程序把在网络线路上传输的信息中途 窃取,并利用偷盗过来的信息对指定的服务器或者系统进行攻击,为此我们有必要在Linux系统中禁止使用Linux命令。在Linux里,如果要想使 ping没反应也就是用来忽略icmp包,因此我们可以在Linux的命令行中输入如下命令: echo 1 > /proc/sys/net/ipv4/icmp_echo_igore_all 如果想恢复使用ping命令,就可以输入 echo 0 > /proc/sys/net/ipv4/icmp_echo_igore_all2、注意对系统及时备份为了防止系统在使用的过程中发生以外情况而难以正常运行,我们应该对Linux完好的系统进 行备份,最好是在一完成Linux系统的安装任务后就对整个系统进行备份,以后可以根据这个备份来验证系统的完整性,这样就可以发现系统文件是否被非法修 改过。如果发生系统文件已经被破坏的情况,也可以使用系统备份来恢复到正常的状态。备份信息时,我们可以把完好的系统信息备份在CD-ROM光盘上,以后 可以定期将系统与光盘内容进行比较以验证系统的完整性是否遭到破坏。如果对安全级别的要求特别高,那么可以将光盘设置为可启动的并且将验证工作作为系统启 动过程的一部分。这样只要可以通过光盘启动,就说明系统尚未被破坏过。 3、改进登录服务器将系统的登录服务器移到一个单独的机器中会增加系统的安全级别,使用一个更安全的登录服务器 来取代Linux自身的登录工具也可以进一步提高安全。在大的Linux网络中,最好使用一个单独的登录服务器用于syslog服务。它必须是一个能够满 足所有系统登录需求并且拥有足够的磁盘空间的服务器系统,在这个系统上应该没有其它的服务运行。更安全的登录服务器会大大削弱入侵者透过登录系统窜改日志 文件的能力。 4、取消Root命令历史记录在Linux下,系统会自动记录用户输入过的命令,而root用户发出的命令往往具有敏感的 信息,为了保证安全性,一般应该不记录或者少记录root的命令历史记录。为了设置系统不记录每个人执行过的命令,我们可以在Linux的命令行下,首先 用cd命令进入到/etc命令,然后用编辑命令来打开该目录下面的profile文件,并在其中输入如下内容: HISTFILESIZE=0
HISTSIZE=0当然,我们也可以直接在命令行中输入如下命令: ln -s /dev/null ~/.bash_history5、为关键分区建立只读属性Linux的文件系统可以分成几个主要的分区,每个分区分别进行不同的配置和安装,一般情况 下至少要建立/、/usr/local、/var和/home等分区。/usr可以安装成只读并且可以被认为是不可修改的。如果/usr中有任何文件发生 了改变,那么系统将立即发出安全报警。当然这不包括用户自己改变/usr中的内容。/lib、/boot和/sbin的安装和设置也一样。在安装时应该尽 量将它们设置为只读,并且对它们的文件、目录和属性进行的任何修改都会导致系统报警。 当然将所有主要的分区都设置为只读是不可能的,有的分区如/var等,其自身的性质就决定了不能将它们设置为只读,但应该不允许它具有执行权限。 6、杀掉攻击者的所有进程假设我们从系统的日志文件中发现了一个用户从我们未知的主机登录,而且我们确定该用户在这台 主机上没有相应的帐号,这表明此时我们正在受到攻击。为了保证系统的安全被进一步破坏,我们应该马上锁住指定的帐号,如果攻击者已经登录到指定的系统,我 们应该马上断开主机与网络的物理连接。如有可能,我们还要进一步查看此用户的历史记录,再仔细查看一下其他用户是否也已经被假冒,攻击者是否拥有有限权 限;最后应该杀掉此用户的所有进程,并把此主机的IP地址掩码加入到文件hosts.deny中。 7、改进系统内部安全机制我们可以通过改进Linux操作系统的内部功能来防止缓冲区溢出,从而达到增强Linux系 统内部安全机制的目的,大大提高了整个系统的安全性。但缓冲区溢出实施起来是相当困难的,因为入侵者必须能够判断潜在的缓冲区溢出何时会出现以及它在内存 中的什么位置出现。缓冲区溢出预防起来也十分困难,系统管理员必须完全去掉缓冲区溢出存在的条件才能防止这种方式的攻击。正因为如此,许多人甚至包括 Linux Torvalds本人也认为这个安全Linux补丁十分重要,因为它防止了所有使用缓冲区溢出的攻击。但是需要引起注意的是,这些补丁也会导致对执行栈的 某些程序和库的依赖问题,这些问题也给系统管理员带来的新的挑战。 8、对系统进行跟踪记录为了能密切地监视黑客的攻击活动,我们应该启动日志文件,来记录系统的运行情况,当黑客在攻 击系统时,它的蛛丝马迹都会被记录在日志文件中的,因此有许多黑客在开始攻击系统时,往往首先通过修改系统的日志文件,来隐藏自己的行踪,为此我们必须限 制对/var/log文件的访问,禁止一般权限的用户去查看日志文件。当然,系统中内置的日志管理程序功能可能不是太强,我们应该采用专门的日志程序,来 观察那些可疑的多次连接尝试。另外,我们还要小心保护好具有根权限的密码和用户,因为黑客一旦知道了这些具有根权限的帐号后,他们就可以修改日志文件来隐 藏其踪迹了。 9、使用专用程序来防范安全有时,我们通过人工的方法来监视系统的安全比较麻烦,或者是不周密,因此我们还可以通过专业 程序来防范系统的安全,目前最典型的方法为设置陷井和设置蜜罐两种方法。所谓陷井就是激活时能够触发报警事件的软件,而蜜罐(honey pot)程序是指设计来引诱有入侵企图者触发专门的报警的陷井程序。通过设置陷井和蜜罐程序,一旦出现入侵事件系统可以很快发出报警。在许多大的网络中, 一般都设计有专门的陷井程序。陷井程序一般分为两种:一种是只发现入侵者而不对其采取报复行动,另一种是同时采取报复行动。 10、将入侵消灭在萌芽状态入侵者进行攻击之前最常做的一件事情就是端号扫瞄,如果能够及时发现和阻止入侵者的端号扫瞄 行为,那么可以大大减少入侵事件的发生率。反应系统可以是一个简单的状态检查包过滤器,也可以是一个复杂的入侵检测系统或可配置的防火墙。我们可以采用诸 如Abacus Port Sentry这样专业的工具,来监视网络接口并且与防火墙交互操作,最终达到关闭端口扫瞄攻击的目的。当发生正在进行的端口扫瞄时,Abacus Sentry可以迅速阻止它继续执行。但是如果配置不当,它也可能允许敌意的外部者在你的系统中安装拒绝服务攻击。正确地使用这个软件将能够有效地防止对 端号大量的并行扫瞄并且阻止所有这样的入侵者。 11、严格管理好口令前面我们也曾经说到过,黑客一旦获取具有根权限的帐号时,就可以对系统进行任意的破坏和攻 击,因此我们必须保护好系统的操作口令。通常用户的口令是保存在文件/etc/passwd文件中的,尽管/etc/passwd是一个经过加密的文件, 但黑客们可以通过许多专用的搜索方法来查找口令,如果我们的口令选择不当,就很容易被黑客搜索到。因此,我们一定要选择一个确保不容易被搜索的口令。另外,我们最好能安装一个口令过滤工具,并借用该工具来帮助自己检查设置的口令是否耐得住攻击。
9. 求流光4.71的使用方法
流光4.71的使用方法,这里有使用说明可以下载自己看一下:http://www.yeshack.com/jc/200508/2345.html
工具这种东西本身就是一把双刃剑,如果因为自己的站点密码太过简单而被攻破然后归罪于因特网上一些免费或共享软件的话,恐怕是有些目光短浅了 。管辖的系统存在漏洞而不自知的话,就算没被人‘干掉',也只是一种暂时的‘虚假安全'。
一、小榕流光使用的简单说明
要谈流光还真找不着感觉——在小榕的帮助文件里已经把软件的使用方法详尽无比地描述过了(强烈建议使用者使用前将帮助文件多读两遍)——我就说三个方面吧——高手完全可以略过的......
1、 对某FTP主机一次完整的在线安全检测过程
A、选定主机:右键单击FTP主机选项,从弹出菜单中选择添加——将目标的IP地址填入,如"210.142.192.13"......
B、选定用户:右键单击该IP地址,可选添加(将想测试的用户名逐个加入)添加方案(可在方案中编辑希望测试的用户名列表)从列表添加(直接从字典文件中导入)及从SMTP主机导入(导入SMTP主机探测到的用户名),假设你想探测的用户名为quack,便直接在"添加"中填入quack。
C、选择字典:
a、简单模式探测:在选项菜单条中对字典及简单模式设置做适当修正以适应本次测试要求,当然你也可以在面板上的单词小写、简单后缀等按钮直接选定。
b、标准模式探测:在"解码字典或方案"中选定某一字典(方案)。
D、调整设置:检查选项菜单栏中的系统设置、连接选项和探测选项,将本次测试的各种选项调整至最优。
E、开始探测:在"探测"菜单中选定"简单模式"或"标准模式",开始此次安全检测。
F、注意事项:由于流光的系统占用较高,最好不要再开其它应用程序;在在线检测时可能有时会出现假死机现象,这时你可以通过观察MODEM的RD与SD灯来判断程序是否正常运作。
2、密码字典的选用:在线探测相当耗时,所以一个合适的字典会大大降低你的"检测成本",流光里的工具菜单栏对生成适合自己使用的字典档是一个相当实用的工具——我个人觉得尤其值得使用的是"方案编辑工具",它能够在你锁定特定用户检测时发挥较大的作用,具体使用帮助文件中写得非常详细,我就不再多说了 ——当然流光里附带的XKEY也是一个相当不错的字典生成程序。
3、流光其实不仅仅是一个在线安全检测工具——而是一个"工具包",同时具有以下几个辅助功能
A、探测主机端口
B、探测主机类型
C、FINGER
D、扫描POP3、FTP主机
E、验证主机用户
而其主要功能是对POP3、FTP、HTTP、PROXY主机进行在线密码安全检测。所以——一句话,功能强大,试过便知。
至于同样原理的在线密码破解软件国内流行的也并不少,如很早以前的emailcrack、wwwhack、网络刺客1 以及现在流传很广网络刺客2、Webcrack、Xavior等等,流光在很大程度上集成了这些软件的功能,但这些软件早期的产品也都缺乏IP隐藏或类似功能,而近期的Webcrack以及Xavior则都具备从代理服务器端进行探测的功能,我认为这应该是在线探测的一个方向——安全第一嘛——基于此想法,我对流光在探测中会留下的记录进行试验:对一位网管朋友的WINDOWS2000 Beta3 SERVER 英文版进行了一番测试,对其上已知的帐号进行密码强攻, 经探测得知其FTP端口是开放的,在未预先通知的情况下对其进行攻击,事后打电话询问其记录情况,在EVENT VIEWER里有如下信息:WARNING:The server was unable to logon the Windows NT account 'houxiourong' e to the following error: Logon failure: unknown user name or bad password.The data is the error code. 而甚至他告诉我,当我的攻击进行到一半时,他的主机上就弹出了The System log file is full.的信息提示框——失败的登陆次数太多以至于其默认为512K的记录文件被撑饱了!所以我要奉劝某些心怀叵测的人们——别做坏事......
二、密码设置的基本常识及工具
1、有关口令的一些统计
A、数目:在UNIX系统里可以建立多于43,000,000,000,000,000个不同的口令,但如果仅仅组合10种主要
语言的字典,加上这些字的反向、大写、简单后缀等一些微小变形,仅能产生不到5,000,000个字......加
上一些俚语......也不会超出这个数量级。
B、国外某机构在对一个无约束环境的用户口令选择的调查中显示,只有1.4%的用户口令中含有控制符。
2、介绍几个工具
A、CrackLib 简介及应用举例
by JeffreyDong
CrackLib 是什么?
CrackLib: A ProActive Password Sanity Library
By: Alec Muffett
Address: [email protected]
CrackLib是一个可用于类UNIX系统下的函数库, 一般来说, 通常只使用其中的一个函数. :-) 它可以用于编写和passwd有关的程序中, 其基本思想是很简单的, 就是防止用户使 用过于简单, 容易被猜测出来或容易被一些工具搜索到的密码. 密码攻击是网络上最为常见的攻击手段. 随着国内计算机用户水平的提高, 有很多人学 会了使用工具搜索密码的方法, 由于某些原因, 含有被加密密码的文件会被某些用户获 取; 这时, 过于简单的密码就会成为攻击者的突破口. 网上有很多这方面的报道.(我的 一个朋友告诉我他曾用一个星期的时间算出了BTA一个管理员的密码. wow! :-P) 通过限 制用户使用不安全的密码, 可以提高你的系统的安全性.
CrackLib的特点
CrackLib并不是一个可以直接运行使用的程序, 它是一个函数库, 你可以利用其中的函 数写自己的程序,或是加入其它程序中, 用来提高安全性. 比如, 你可以重写passwd, 使用户在选择密码时受到限制. CrackLib使用一个字典, 它查找字典以判断所选用密码是否是不安全的密码, 所以你也可 以加入其它信息, 使用自己的字典.比如, 加入公司的名称, 实验室墙上的单词等等潜在 的不安全密码.
CrackLib的使用非常简单, 它可以被应用于很多地方, 只需加入简单的几行源码, 就可以 得到非常好的效果.
CrackLib的安装
CrackLib可以很容易的在Internet上找到, 我现在使用的版本是2.7, 跑在我的i586/RedHat Linux和i386/Slackware Linux上. 如果你无法找到它的话, 赶紧去补一补如何在Internet 上查找特定的软件吧, 因为这是一项非常重要的基本功. CrackLib好象没有什么文档, 这也是GNU急需加强的地方. 但是它的安装非常简单, 只要按照 README文件
中所叙述的就可以了.如果你用的distribution中包含了这个包, 那它说不定已经 安装在你的机器上了,如RedHat 5.1等. :-) 需要注意的是, 不同版本中一些文件所处的目录位置不同, 你要先确定它们所处的位置. 比 如, 在RedHat 5.1中, 字典是在/usr/lib/中, 文件名为cracklib_dict.*, 而不是README中 所举例的/usr/local/lib/pw_dict.*
应用举例
这里我举一个很简单的例子, 试图用很短的篇幅来说明用法.
char *FascistCheck(char *pw, char *dictpath);
这是CrackLib中最常用的函数. pw是用户选择的密码, 你要去验证它是不是不安全的. dictpath是字典所在路径, 注意, 要把文件名中"."之前的部分加上.以RedHat 5.1为例, 假设你已正确的安装了CrackLib 2.7和FireBird BBS 2.66M. 让我们来 看看如何把CrackLib加入BBS中去. :-) 首先, 改写bbs_src目录下的register.c:
/* ----------- begin ---------- */
char *msg;
/* ----------- end ---------- */
......
while( 1 ) {
getdata(0,0,"请设定您的密码 (Setup Password): ",passbuf,PASSLEN,NOECHO,YEA) ;
if( strlen( passbuf ) < 4 || !strcmp( passbuf, newuser.userid ) ) {
prints("密码太短或与使用者代号相同, 请重新输入\n") ;
continue;
}
/* ----------- begin ---------- */
if (msg = (char*) FascistCheck(passbuf, CRACKLIBPATH)) {
printf("请另选密码! (%s)\n",msg);
continue;
}
/* ----------- end ---------- */
strncpy( newuser.passwd, passbuf, PASSLEN );
getdata(0,0,"请再输入一次你的密码 (Reconfirm Password): ",passbuf,PASSLEN,NOECHO,YEA);
if( strncmp( passbuf, newuser.passwd, PASSLEN ) != 0 ) {
prints("密码输入错误, 请重新输入密码.\n") ;
continue;
}
passbuf[8] = '\0' ;
strncpy( newuser.passwd, genpasswd( passbuf ), PASSLEN );
break;
}
begin和end注释所夹部分为改动处, 下同.
接着改写bbs_src目录下的userinfo.c:
/* ----------- begin ---------- */
char *msg;
/* ----------- end ---------- */
......
getdata(i++,0,"请设定新密码: ",buf,PASSLEN,NOECHO,YEA);
if( buf[0] == '\0' ) {
prints("\n\n密码设定取消, 继续使用旧密码\n");
fail++;
break;
}
strncpy(genbuf,buf,PASSLEN) ;
/* ----------- begin ---------- */
if (msg = (char*) FascistCheck(buf, CRACKLIBPATH)) {
printf("\n请另选密码! (%s)\n", msg);
prints("\n密码设定取消, 继续使用旧密码\n");
fail++;
break;
}
/* ----------- end ---------- */
getdata(i++,0,"请重新输入新密码: ",buf,PASSLEN,NOECHO,YEA);
if(strncmp(buf,genbuf,PASSLEN)) {
prints("\n\n新密码确认失败, 无法设定新密码。\n");
fail++;
break;
}
接着在bbs.h中加入:
#ifndef CRACKLIBPATH
#define CRACKLIBPATH "/usr/lib/cracklib_dict"
#endif
注意这里是字典所处的位置.
最后改动bbs的Makefile:
OS_DEF = -DLINUX -DTERMIOS
CC = gcc
CFLAGS = -O2
/* ----------- begin ---------- */
LIBS = -ltermcap -lbsd -lcrack
/* ----------- end ---------- */
然后make, make install就可以了. :-) 很简单, 不是吗?
注意:本段关于cracklib的说明转载于[网络工作室]
B、Proactive Checking
这个程序能在输入口令时进行一系列的口令检查,这会对避免不安全口令出现于你的系统有帮助作用。它与一般的shadow和NIS(也就是yellow page)口令系统共同工作。
C、Shadow
这个程序取代了原来系统的口令保护机制,它将/etc/passwd文件中的口令信息转移到文件/etc/shadow中,还有一些如口令到期机制、允许16字符口令等功能。
D、Passwd+
这是一个典型的增强型口令系统。
三、应有的措施及其基本知识
1、日志文件
大多数日志文件都是由系统一行接着一行写入的文本文件。比如sulog会记录用户使用su命 令试图进入系统的情况,在sulog文件尾部附加一条信息,以记录su命令是否被成功使用。不同版本的UNIX系统存放日志文件的目录不同,常见目录如下:/usr/adm 早期的UNIX系统/var/adm 较新版本的UNIX系统/var/log 用于Solaris\Linux\BSD等系统中在这些目录或其子目录下,你可以找到下列文件acct 或 pacct 记录每个用户使用过的命令aculog 拨出"猫"的记录lastlog 记录用户最后一次成功登陆时间及最后一次失败登陆时间loginlog 不良登陆记录messages 输出到主控台及由syslog系统服务程序产生的消息sulog su的使用情况
utmp 记录当前登陆的每个有户
utmpx 扩展的utmp
wtmp 记录每一次用户登陆和注销的历史信息及系统开关信息
wtmpx 扩展wtmp
vold.log 使用外部介质产生的错误
xferlog FTP存取情况
2、定期运行如crack之类的口令破解程序以检查系统中是否存在弱帐户。
10. linux下,文件怎么加密!高手请进!
http://hi..com/troika/blog/item/0d8e861818182ebe4bedbc61.html
linux下主要用的是TrueCrypt