如何搭建自己的NTP服务器?
展开全部NTP服务器【Network Time Protocol(NTP)】是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。
时间按NTP服务器的等级传播。
按照离外部UTC源的远近把所有服务器归入不同的Stratum(层)中。
网络时间协议(NTP)用来同步网络上不同主机的系统时间。
你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间。
而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP 服务器,或者你选定的服务器同步。
由 NTP 管理的所有系统时钟都会同步精确到毫秒级。
在公司环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器。
在这个指南中,我们会介绍如何将一个 CentOS 系统配置为 NTP 服务器。
在介绍详细内容之前,让我们先来简单了解一下 NTP 的概念。
为什么我们需要 NTP?由于制造工艺多种多样,所有的(非原子)时钟并不按照完全一致的速度行走。
有一些时钟走的比较快而有一些走的比较慢。
因此经过很长一段时间以后,一个时钟的时间慢慢的和其它的发生偏移,这就是常说的 “时钟漂移” 或 “时间漂移”。
为了将时钟漂移的影响最小化,使用 NTP 的主机应该周期性地和指定的 NTP 服务器交互以保持它们的时钟同步。
在不同的主机之间进行时间同步对于计划备份、入侵检测记录、分布式任务调度或者事务订单管理来说是很重要的事情。
它甚至应该作为日常任务的一部分。
NTP 的层次结构NTP 时钟以层次模型组织。
层级中的每层被称为一个 stratum(阶层)。
stratum 的概念说明了一台机器到授权的时间源有多少 NTP 跳。
Stratum 0 由没有时间漂移的时钟组成,例如原子时钟。
这种时钟不能在网络上直接使用。
Stratum N (N > 1) 层服务器从 Stratum N-1 层服务器同步时间。
Stratum N 时钟能通过网络和彼此互联。
NTP 支持多达 15 个 stratum 的层级。
Stratum 16 被认为是未同步的,不能使用的。
准备 CentOS 服务器现在让我们来开始在 CentOS 上设置 NTP 服务器。
首先,我们需要保证正确设置了服务器的时区。
在 CentOS 7 中,我们可以使用 timedatectl 命令查看和更改服务器的时区(比如,"Australia/Adelaide",LCTT 译注:中国可设置为 Asia/Shanghai )代码如下:# timedatectl list-timezones | grep Australia# timedatectl set-timezone Australia/Adelaide# timedatectl继续并使用 yum 安装需要的软件代码如下:# yum install ntp然后我们会添加全球 NTP 服务器用于同步时间。
代码如下:# vim /etc/ntp.confserver 0.oceania.pool.ntp.orgserver 1.oceania.pool.ntp.orgserver 2.oceania.pool.ntp.orgserver 3.oceania.pool.ntp.org默认情况下,NTP 服务器的日志保存在 /var/log/messages。
如果你希望使用自定义的日志文件,那也可以指定。
复制代码代码如下:logfile /var/log/ntpd.log如果你选择自定义日志文件,确保更改了它的属主和 SELinux 环境。
复制代码代码如下:# chown ntp:ntp /var/log/ntpd.log# chcon -t ntpd_log_t /var/log/ntpd.log现在初始化 NTP 服务并确保把它添加到了开机启动。
代码如下:# systemctl restart ntp# systemctl enable ntp验证 NTP Server 时钟我们可以使用 ntpq 命令来检查本地服务器的时钟如何通过 NTP 同步。
下面的表格解释了输出列。
remote 源在 ntp.conf 中定义。
‘*’ 表示当前使用的,也是最好的源;‘+’ 表示这些源可作为 NTP 源;‘-’ 标记的源是不可用的。
refid 用于和本地时钟同步的远程服务器的 IP 地址。
st Stratum(阶层)t 类型。
'u' 表示单播(unicast)。
其它值包括本地(local)、多播(multicast)、广播(broadcast)。
when 自从上次和服务器交互后经过的时间(以秒数计)。
poll 和服务器的轮询间隔,以秒数计。
reach 表示和服务器交互是否有任何错误的八进制数。
值 337 表示 100% 成功(即十进制的255)。
delay 服务器和远程服务器来回的时间。
offset 我们服务器和远程服务器的时间差异,以毫秒数计。
jitter 两次取样之间平均时差,以毫秒数计。
控制到 NTP 服务器的访问默认情况下,NTP 服务器允许来自所有主机的查询。
如果你想过滤进来的 NTP 同步连接,你可以在你的防火墙中添加规则过滤流量。
# iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT# iptables -A INPUT -p udp --dport 123 -j DROP该规则允许从 192.168.1.0/24 来的 NTP 流量(端口 UDP/123),任何其它网络的流量会被丢弃。
你可以根据需要更改规则。
配置 NTP 客户端1. LinuxNTP 客户端主机需要 ntpupdate 软件包来和服务器同步时间。
可以轻松地使用 yum 或 apt-get 安装这个软件包。
安装完软件包之后,用服务器的 IP 地址运行下面的命令。
代码如下:# ntpdate基于 RHEL 和 Debian 的系统命令都相同。
2. Windows如果你正在使用 Windows,在日期和时间设置(Date and Time settings)下查找网络时间(Internet Time)。
3. Cisco 设备如果你想要同步 Cisco 设备的时间,...
如何将linux系统部署成ntp服务器
三、什么是NTP 为了实现时间同步,我们就需要用户NTP(Network Time Protocol)这个协议。
如图1所示。
简单地说,NTP是用来使系统和一个精确的时间源保持时间同步的协议。
笔者建议管理员最好在自己管理的网络中建立至少一台时间服务器来同步本地时间。
如 果在一个公司的局域网中,如果让每个员工通过手动的方式每隔一段时间去校准时间,不但不利于管理,而且校准目标时间源也不一定准确。
公司局域网络中不同计 算机的时间偏差尤其是客户机/服务器之间的时间偏差,就会对一些要求时间同步的服务产生影响。
比如,为了管理方便,服务器设置了一到下班时间便 账号过期,用户无法访问Internet网络。
而如果你的电脑时间与服务器的时间不同步,当你为你下班时间未到,正准备发送邮件时,或许在服务器的时间 上,你的账号便过期了,从而导到无法发送邮件。
解决这种问题的方法很简单,就是建立一个能提供精确时间的服务器,局域网内的所有电脑统一通过这台时间服务 器进行时间同步、校准。
四、NTP服务器安装 现在,我们就来介绍一下,如何在Linux系统下,建立一个NTP服务器吧。
在本文中,我们采用的是Fedora 2操作系统作为例子 (其它版本Linux也可以,系统的配置类似)。
使用 RPM 安装 首先输入如下指令 rpm -q ntp 查询本机是否安装了NTP软件包。
如果没有安装的话,找到您的 Linux 的安装光盘,mount 上后,查找以NTP开头的软件包名,然后安装上去,就可以了! rpm –ivh ntp-4.1.2-5.i386.rpm 五、NTP服务的设置 1.NTP软件包的结构 NTP服务的配置文件: /etc/ntp.conf :这个是 NTP 服务的主要配置文件,不同的Linux版本文件所在的目录可能会不同! 与NTP服务有关的Linux 系统文件及目录: /usr/share/zoneinfo:这是个目录,在这个目录下是规定了各主要时区的时间设定文件,例如中国大陆地区的时区设置文件是 /usr/share/zoneinfo/Asia/Shanghai 。
/etc /sysconfig/clock:这个文件是Linux 的主要时区设定文件。
每次启动后,Linux 会自动读取这个文件来设定系统预设要显示的时间!比如这个文件内容为“ZONE=Asia/Shanghai”,这表示我们的时间设定使用 /usr/share/zoneinfo/Asia/Shanghai 这个文件! /etc/localtime:这个文件是本地系 统的时间设定文件! 假设clock 文件里面规定了使用的时间设定文件为 /usr/share/zoneinfo/Asia/Shanghai, Linux 系统就会将 Shanghai那个文件复制一份为 /etc/localtime ,所以系统的时间显示就会以 Shanghai 那个时间设定文件为准。
假设这台主机到了美国纽约,您只要将 /etc/sysconfig/clock 里面的ZONE 设定成为ZONE="America/New_York" 并且将/usr/share/zoneinfo/America/New_York复制成为 /etc/localtime ,其它什么设置都不需要改动,系统的显示时间就是美国纽约当地的时间了! 与 NTP 及系统时间有关的执行文件: /bin/date: Linux 系统上面的日期与时间修改及输出命令。
/sbin /hwclock:因为主机的 BIOS 时间与 Linux 系统时间是分开的,所以使用 date 这个指令调整了时间之后,只是调整了linux的系统时间,还需要使用 hwclock 才能将修改过后的时间写入 BIOS。
这个命令必须root用户才能执行 。
/usr/sbin/ntpd:NTP服务的守护进程文件,需要启动它才能提供NTP服务。
/usr/sbin/ntpdate:NTP客户端用来连接NTP服务器命令文件。
2.NTP服务端的设置 编辑 /etc/ntp.conf 文件 关于权限设定部分 权限的设定主要以 restrict 这个参数来设定,主要的语法为: restrict IP地址 mask 子网掩码 参数 其中 IP 可以是IP地址,也可以是 default ,default 就是指所有的IP 参数有以下几个: ignore :关闭所有的 NTP 联机服务 nomodify:客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时。
notrust :客户端除非通过认证,否则该客户端来源将被视为不信任子网 noquery :不提供客户端的时间查询 注意:如果参数没有设定,那就表示该 IP (或子网)没有任何限制! 上级时间服务器的设定 由于我们配置的NTP 服务器需要网络上面时间比较准确的NTP服务器来更新自己的时间,所以在我们的 NTP 服务器上面要配置一部上级时间服务器来进行校准!在 Internet 上面提供了许多时间服务器,从下面地址找一个离你最近的http://www.eecis.udel.edu/~mills/ntp/clock1a.html 用server这个参数设定上级时间服务器,语法为: server IP地址或域名 [prefer] IP地址或域名就是我们指定的上级时间服务器,如果 Server 参数最后加上 prefer,表示我们的 NTP 服务器主要以该部主机时间进行校准。
解决NTP服务器校准时间时的传送延迟 使用driftfile参数设置: driftfile 文件名 在与上级时间服务器联系时所花费的时间,记录在driftfile参数后面的文件内。
注意: driftfile 后面接的文件需要使用完整的路径文件名,不能是链接文件,并且文件的权限需要设定成 ntpd守护进程可以写入。
ntp.conf文件举例: 设置要求:不对 Internet 提供服务,仅对内部子网 192.168.0.0/24 提供服务,NTP 服务器的上级时间主机为:clock.nc.fukuoka-u.ac.jp和ntp.nasa.gov,内部子网的客户端不能修改NTP服务器的时间参数。
在...
怎么用java程序连接NTP服务器?
Java软件包内在支持的网络协议为TCP/IP,也是当今最流行的广域网/局域网协议。
Java有关网络的类及接口定义在java.net包中。
客户端软件通常使用 java.net包中的核心类Socket与服务器的某个端口建立连接,而服务器程序不同于客户机,它需要初始化一个端口进行监听,遇到连接呼叫,才与相应的客户机建立连接。
Java.net包的ServerSocket类包含了编写服务器系统所需的一切。
下面给出ServerSocket类的部分定义。
public class ServerSocket { public ServerSocket(int port) throws IOException ; public Socket accept() throws IOException ; public InetAddress getInetAddress() ; public int getLocalPort() ; public void close() throws IOException ; public synchronized void setSoTimeout (int timeout) throws SocketException ; public synchronized int getSoTimeout() throws IOException ; } ServerSocket 构造器是服务器程序运行的基础,它将参数port指定的端口初始化作为该服务器的端口,监听客户机连接请求。
Port的范围是0到65536,但0到 1023是标准Internet协议保留端口,而且在Unix主机上,这些端口只有root用户可以使用。
一般自定义的端口号在8000到16000之间。
仅初始化了ServerSocket还是远远不够的,它没有同客户机交互的套接字(Socket),因此需要调用该类的accept方法接受客户呼叫。
Accept()方法直到有连接请求才返回通信套接字(Socket)的实例。
通过这个实例的输入、输出流,服务器可以接收用户指令,并将相应结果回应客户机。
ServerSocket类的getInetAddress和getLocalPort方法可得到该服务器的IP地址和端口。
setSoTimeout和getSoTimeout方法分别是设置和得到服务器超时设置,如果服务器在timout设定时间内还未得到accept方法返回的套接字实例,则抛出IOException的异常。
Java的多线程可谓是Java编程的精华之一,运用得当可以极大地改善程序的响应时间,提高程序的并行性。
在服务器程序中,由于往往要接收不同客户机的同时请求或命令,因此可以对每个客户机的请求生成一个命令处理线程,同时对各用户的指令作出反应。
在一些较复杂的系统中,我们还可以为每个数据库查询指令生成单独的线程,并行对数据库进行操作。
实践证明,采用多线程设计可以很好的改善系统的响应,并保证用户指令执行的独立性。
由于Java本身是"线程安全"的,因此有一条编程原则是能够独立在一个线程中完成的操作就应该开辟一个新的线程。
Java中实现线程的方式有两种,一是生成Thread类的子类,并定义该子类自己的run方法,线程的操作在方法run中实现。
但我们定义的类一般是其他类的子类,而Java又不允许多重继承,因此第二种实现线程的方法是实现Runnable接口。
通过覆盖Runnable接口中的run方法实现该线程的功能。
本文例子采用第一种方法实现线程。
二、多线程服务器程序举例 以下是我们在项目中采用的多线程服务器程序的架构,可以在此基础上对命令进行扩充。
本例未涉及数据库。
如果在线程运行中需要根据用户指令对数据库进行更新操作,则应注意线程间的同步问题,使同一更新方法一次只能由一个线程调用。
这里我们有两个类,receiveServer包含启动代码(main()),并初始化ServerSocket的实例,在accept方法返回用户请求后,将返回的套接字(Socket)交给生成的线程类serverThread 的实例,直到该用户结束连接。
//类receiveServer import java.io.*; import java.util.*; import java.net.*; public class receiveServer{ final int RECEIVE_PORT=9090; //该服务器的端口号 //receiveServer的构造器 public receiveServer() { ServerSocket rServer=null; //ServerSocket的实例 Socket request=null; //用户请求的套接字 Thread receiveThread=null; try{ rServer=new ServerSocket(RECEIVE_PORT); //初始化ServerSocket System.out.println("Welcome to the server!"); System.out.println(new Date()); System.out.println("The server is ready!"); System.out.println("Port: "+RECEIVE_PORT); while(true){ //等待用户请求 request=rServer.accept(); //接收客户机连接请求 receiveThread=new serverThread(request); //生成serverThread的实例 receiveThread.start(); //启动serverThread线程 } }catch(IOException e){ System.out.println(e.getMessage());} } public static void main(String args[]){ new receiveServer(); } //end of main } //end of class //类serverThread import java.io.*; import java.net.*; class serverThread extends Thread { Socket clientRequest; //用户连接的通信套接字 BufferedReader input; //输入流 PrintWriter output; //输出流 public serverThread(Socket s) { //serverThread的构造器 this.clientRequest=s; //接收receiveServer传来的套接字 InputStreamReader reader; OutputStreamWriter writer; try{ //初始化输入、输出流 reader=new InputStreamReader (clientRequest.getInputStream()); writer=new OutputStreamWriter (clientRequest.getOutputStream()); input=new BufferedReader(reader); output=new PrintWriter(writer,true); }catch(IOException e){ System....
如何搭建vps服务器
看你使用什么虚拟化 服务器软件。
我一般使用windows server 2008 r2的Hyper-v建立vps内存的算法是你物理内存减去1G(系统用),剩下的都可以用来开vps。
按照这个算法,你可以开15台左右的VPS,但要注意CPU的分配,Hyper-v可以控制CPU的分配的。
另外,你还要为每个VPS分配一个独立的IP。
还有就是看你是不是打算让用户自助开通,如果要,还得装一些主机管理软件,如星外,这些是要另外收费的。
出售VPS是有一系列的问题的,如:如果为用户备案、用户备案与否和非法信息监测,物理硬件故障时转移方案,用户VPS发生ARP攻击时处理方法(因为那时候可能你都连接不上你的物理机了)等。
在国内,做IDC不全是技术问题,一定要记住这点。
...
新服务器做数据库服务器用,如何测试
展开全部通过在新服务器上检查这些步骤,您可以确保它们至少具有针对最常见攻击的基本保护。
1 - 用户配置如果它不是您的操作系统设置的一部分,您要做的第一件事就是更改root密码。
这应该是不言而喻的,但在例行服务器设置期间可能会被忽略。
密码应至少为8个字符,使用大写和小写字母,数字和符号的组合。
如果要使用本地帐户,还应设置密码策略,以指定老化,锁定,历史记录和复杂性要求。
在大多数情况下,您应该完全禁用root用户,并为需要提升权限的用户创建具有sudo访问权限的非特权用户帐户。
2 - 网络配置您需要做的最基本配置之一是通过为服务器分配IP地址和主机名来启用网络连接。
对于大多数服务器,您将需要使用静态IP,因此客户端始终可以在同一地址找到资源。
如果您的网络使用VLAN,请考虑服务器段的隔离程度以及最适合的位置。
如果您不使用IPv6,请将其关闭。
设置主机名,域和DNS服务器信息。
应使用两个或多个DNS服务器进行冗余,您应该测试nslookup以确保名称解析正常工作。
3 - 软件包管理据推测,您正在为特定目的设置新服务器,因此如果它们不属于您正在使用的分发版,请确保安装可能需要的任何软件包。
这些可以是PHP,MongoDB,ngnix等应用程序包,也可以是pear等支持包。
同样,应删除系统上安装的任何无关软件包以缩小服务器占用空间。
所有这一切都应该通过您的分销包管理解决方案来完成,例如yum或apt,以便在未来更轻松地进行管理。
4 - 更新安装和配置一旦在服务器上安装了正确的软件包,就应该确保一切都已更新。
不仅包括您安装的软件包,还包括内核和默认软件包。
除非您需要特定版本,否则应始终使用最新的生产版本来保证系统的安全。
通常,您的包管理解决方案将提供最新的支持版本。
您还应该考虑在程序包管理工具中设置自动更新,如果这样做适用于您在此服务器上托管的服务 5 - NTP配置配置服务器以将其时间同步到NTP服务器。
如果您的环境具有这些服务器,则可以是内部NTP 服务器,也可以是可供任何人使用的外部时间服务器。
重要的是防止时钟漂移,服务器的时钟偏离实际时间。
这可能会导致许多问题,包括在授予访问权限之前测量服务器和身份验证基础结构之间的时间偏差的身份验证问题。
这应该是一个简单的调整,但它是可靠基础设施的关键点。
6 - 防火墙和iptables根据你的发行版,iptables可能已被完全锁定并要求你打开你需要的东西,但无论默认配置如何,你都应该看看它并确保它按照你想要的方式设置。
请记住始终使用最小权限原则,并且只打开那些服务器上的服务绝对需要的端口。
如果您的服务器位于某种专用防火墙后面,请务必否认所有内容,但也有必要。
假设您的iptables /防火墙在默认情况下是限制性的,请不要忘记打开您的服务器完成其工作所需的内容!7 - 保护SSHSSH是Linux发行版的主要远程访问方法,因此应该得到适当的保护。
您应该远程禁用root的远程SSH功能,即使您禁用了该帐户,以防万一由于某种原因在服务器上启用了root,它仍然无法远程利用。
如果您有一组将要连接的固定客户端IP,您还可以将SSH限制为某些IP范围。
或者,您可以更改默认的SSH端口以“隐藏”它,但老实说,简单的扫描会向想要找到它的任何人显示新的开放端口。
最后,您可以完全禁用密码身份验证,并使用基于证书的身份验证来进一步降低SSH利用的可能性。
8 - 守护程序配置您已经清理了软件包,但在重新启动时将正确的应用程序设置为自动启动也很重要。
务必关闭任何不需要的守护进程。
安全服务器的一个关键是尽可能减少活动占用空间,因此可用于攻击的唯一表面区域是应用程序所需的区域。
完成此操作后,应尽可能加强剩余服务以确保弹性。
9 - SELinux和进一步硬化如果您曾经使用过Red Hat发行版,那么您可能熟悉SELinux,这是一种保护系统免受各种操作影响的内核强化工具。
SELinux非常善于防止未经授权的使用和访问系统资源。
它在打破应用程序方面也很出色,因此请确保在启用SELinux的情况下测试配置,并使用日志确保没有任何合法内容被阻止。
除此之外,您还需要研究强化MySQL或Apache等任何应用程序,因为每个应用程序都有一套最佳实践可供遵循。
10 - 日志记录最后,您应确保已启用所需的日志记录级别,并且您有足够的资源。
您最终将对此服务器进行故障排除,因此请立即帮忙,并构建您需要快速解决问题的日志记录结构。
大多数软件都具有可配置的日志记录,但您需要一些试验和错误才能在信息不足和过多之间找到适当的平衡点。
有许多第三方日志记录工具可以帮助处理从聚合到可视化的所有内容,但是每个环境都需要首先考虑其需求。
然后,您可以找到有助于填充它们的工具。
这些步骤中的每一步都需要一些时间来实施,尤其是第一次。
但是,通过建立初始服务器配置例程,您可以确保环境中的新计算机具有弹性。
如果您的服务器可能是攻击的目标,则不采取任何这些步骤可能会导致相当严重的后果。
做好这些并不能保证足够安全, 但它确实使恶意行为者变得更加困难,并且需要一定程度的技术能力来克服。
如何在windows服务器中使用syslog功能
无论是Unix、Linux、FreeBSD、Ubuntu,还是路由器、交换机,都会产生大量的日志,而这些,一般会以syslog的形式存在。
在RFC 3164中定义了syslog是一种日志协议,syslog数据包的大小为1024字节,包含Facility, Severity, Hostname, Timestamp和Message信息。
syslog服务器默认使用UDP 514号端口。
简单的说,syslog可以告诉管理员:谁(Facility),什么时间(Timestamp),什么地方(Hostname)做了什么事情(Message),以及这个事情的重要性(Severity)。
Syslog中的Facility就是谁,它可以是操作系统的内核,邮件服务,Web服务器,打印机等等。
RFC 3164 定义用数字来表示不同的Facility,其中16-18可为自定义的(比如Cisco就用local4发送PIX防火墙的syslog,用local7发送3000***集中器的syslog),具体如下:Integer Facility0 Kernel messages1 User-level messages2 Mail system3 System daemons4 Security/authorization messages5 Messages generated internally by Syslogd6 Line printer subsystem7 Network news subsystem8 UUCP subsystem9 Clock daemon10 Security/authorization messages11 FTP daemon12 NTP subsystem13 Log audit14 Log alert15 Clock daemon16 Local use 0 (local0)17 Local use 1 (local1)18 Local use 2 (local2)19 Local use 3 (local3)20 Local use 4 (local4)21 Local use 5 (local5)22 Local use 6 (local6)23 Local use 7 (local7)Syslog中的Severity表示事情的重要性,具体如下。
Integer Severity0 Emergency: System is unusable.1 Alert: Action must be taken immediately.2 Critical: Critical conditions.3 Error: Error conditions.4 Warning: Warning conditions.5 Notice: Normal but significant condition.6 Informational: Informational messages.7 Debug: Debug-level messages.Windows有自己的日志协议,称为Event Log。
为什么不建立一台中心Syslog服务器来接受所有的Windows,Linux,网络设备等等发送来的日志呢?这样你可以轻松地在一台日志服务器上管理所有的日志。
Windows操作系统本身是可以产生很多日志的,如每次插拔U盘、服务的重启等,都会产生日志,这些信息会记录在操作系统中,如果我们想集中管理,怎么办?Windows操作系统本身并不支持把日志发送到SYSLOG服务器去,但是我们就没办法了?Evtsys是用C写的程序,提供发送Windows日志到syslog服务器的一种方式。
它支持Windows Vista和Server 2008,并且编译后支持32和64位环境。
它被设计用于高负载的服务器,Evtsys快速、轻量、高效率。
并可以作为Windows服务存在。
http://code.google.com/p/eventlog-to-syslog/ 查看并获取最新更新。
值得称道的是,程序仅仅有几十KB大小! 下载Evtsys后,将其复制到系统目录,XP下是Windows\system32目录。
然后在CMD下执行:evtsys.exe -i -h 192.168.1.101 -p 514这个是标准格式,亦可精简为:evtsys -i -h 192.168.1.101参数说明: i是安装成Window服务; h是syslog服务器地址; p是syslog服务器的接收端口。
默认下,端口可以省略,默认是514. 启动Evtsys服务,命令是:net start evtsys查看Windows的“服务”,发现在原本Event Log服务下面增加了一个“Eventlog to Syslog”,并且已经启动.打开windows组策略编辑器 (开始->运行 输入 gpedit.msc)在windows设置-> 安全设置 -> 本地策略 ->审核策略 中,打开你需要记录的windows日志。
evtsys会实时的判断是否有新的windows日志产生,然后把新产生的日志转换成syslogd可识别的格式,通过UDP 3072端口发送给syslogd服务器。
另外一个工具是SNARE,SNARE for Windows是一款让你很容易的把Windows(NT/2000/XP/2003等,亦支持64位系统)事件日志实时转发到SYSLOG服务器的程序,并且无论是32位还是64位系统,只有一个安装包,也可以配置静默安装模式,当然这个需要您自己去看文档了。
SNARE支持安全日志、应用日志、系统日志,同时支持DNS、文件复制服务、活动目录(Active Directory)日志等。
下载: http://sourceforge.net/projects/snare/files/Snare%20for%20Windows/配置: 下载下来的文件是SnareForWindows-4.x.x.x-MultiArch.exe这样的,基本上只需要Next就可以安装完毕。
然后开始菜单中InterSect Alliance下面有三个子项:Disable Remote Access to Snare for Windows:禁止Snare的远程管理Restore Remote Access to Snare for Windows:恢复Snare的远程管理Snare for Windows:程序配置界面,选择后在浏览器打开http://localhost:6161/地址,然后选择左侧菜单的Network Configuration选项Free WhatsUp Syslog Server – 免费 Syslog Server 何处寻? 在这里!!Syslog daemon for Windows Eventlog 展开
linux怎么安装dhcp服务器
展开全部 DHCP服务在linux下算是最简单的服务了。
DHCP服务的配置。
DHCP简介:DHCP动态主机配置协议,在一个小型局域网里可以通过手工指定ip地址的方式,但如有大量的主机,如果还是手工指定,那是一个很大的工作量,而且也容易出错,这时,就可以通过配置一台DHCP服务器来解决,为每台主机分配一个ip地址。
DHCP作用域是指DHCP服务器可分配给DHCP客户端的IP地址范围,一个DHCP服务器至少要一个作用域,如有多个作用域,作用域之间的IP地址不能重叠。
DHCP的工作原理:DHCP工作过程分为四个步骤:第一步(DHCPDISCOVER):客户端发送广播查找可以给自己提供IP地址的DHCP服务器,第二步(DHCPOFFER):DHCP服务器发送广播提供一个可用的IP地址,并在地址池中将该地址打上标记,以防再次分配。
第三步(DHCPREQUEST):客户端收到广播后再次发送一个广播请求该地址,如果有多台DHCP响应,则第一个收到的优先。
第四步(DHCPACK):DHCP服务器收到广播后再发送一个广播,确认该地址分配给这台主机使用,并在地址池中将该地址打上标记,以防再次分配。
DHCP的基本配置:第一步:安装软件:[root@localhost ~]# rpm -ivh /misc/cd/Server/dhcp-3.0.5-18.el5.i386.rpm第二步:编辑配置文件:[root@localhost ~]# vi /etc/dhcpd.conf# see /usr/share/doc/dhcp*/dhcpd.conf.sample当进入到配置文件里面时,这里是空的,有如上一行的提示,说可以参考这个文件来编写配置文件,那就复制一份再编辑。
[root@localhost ~]# cp -rvf /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf[root@localhost ~]# vi /etc/dhcpd.confddns-update-style interim; //配置DHCP和DNS为互动更新模式,ignore client-updates; //忽略客户端的更新。
subnet 192.168.100.0 netmask 255.255.255.0 { //定义作用域option routers 192.168.100.1; //默认路由option subnet-mask 255.255.255.0; //子网掩码option nis-domain "rhel.com"; //NIS域名option domain-name "rhel.com"; //DNS域名option domain-name-servers 192.168.100.10; //DNS服务器地址option time-offset -18000; # Eastern Standard Time //为客户端设置与格林威治的时间偏移option ntp-servers 192.168.1.1; //网络时间服务器地址option netbios-name-servers 192.168.1.1; //指定WINS服务器地址range dynamic-bootp 192.168.100.128 192.168.100.254; //动态分配的地址范围default-lease-time 21600; //默认租约时间max-lease-time 43200; //最大租约时间host abc { //指定特定主机hardware ethernet 00:0C:29:FD:44:C8; //硬件地址fixed-address 192.168.100.30; //IP地址}}如有多个要绑定的主机时可以把所有主机信息用group{ }包括起来,这样更方便管理。
格式如下 :group {……这里不可以添加一些佤全局选项,这样就不用在每个里面写了。
host abc {…………}host xyz {…………}}[root@localhost ~]# service dhcpd restart测试:在linux下:首先让地址从DHCP获取:[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPROTO=dhcp[root@localhost ~]# service network restart //重启一下网络服务,这里不能使用ifdown和ifup,因为要配置路由信息。
[root@localhost ~]# ifconfigeth0 Link encap:Ethernet HWaddr 00:0C:29:FD:44:C8inet addr:192.168.100.30 Bcast:192.168.100.255 Mask:255.255.255.0这就是绑定的IP地址。
[root@localhost ~]# cat /etc/resolv.conf; generated by /sbin/dhclient-scriptsearch rhel.comnameserver 192.168.100.10这里的DNS服务器地址也获取到了。
[root@localhost ~]# route -nKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface192.168.100.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth00.0.0.0 192.168.100.1 0.0.0.0 UG 0 0 0 eth0默认路由也获取到了。
查看一下端口:[root@localhost ~]# netstat -tlunp | grep 68udp 0 0 0.0.0.0:68 0.0.0.0 16150/dhclient查看客户端的租约文件:lease {interface "eth0";fixed-address 192.168.100.30; //固定地址option subnet-mask 255.255.255.0; //子网掩码option time-offset -18000; //时间偏移option routers 192.168.100.1; //默认路由option dhcp-lease-time 21600; //租约时间option dhcp-message-type 5;option domain-name-servers 192.168.100.10;option dhcp-server-identifier 192.168.100.20;option nis-domain "rhel.com";option domain-name "rhel.com";renew 5 2010/4/9 09:01:40;rebind 5 2010/4/9 11:34:53;expire 5 2010/4/9 12:19:53;}windows下:把IP地址设成自动获取。
C:\Documents and Settings\Administrator>ipconfig /allConnection-specific DNS Suffix . : rhel.comPhysical Address. . . . . . . . . : 00-0C-29-D3-C6-B3Dhcp Enabled. . . . . . . . . . . : YesAutoconfiguration Enabled . . . . : YesIP Address. . . . . . . . . . . . : 192.168.100.253Subnet Mask . . . . . . . . . . . : 255.255.255.0Default Gateway . . . . . . . . . : 192.168.100.1DHCP Server . . . . . . . . . . . : 192.168....
TCP端口和UDP端口都是什么意思?
展开全部 从专业的角度说,TCP的可靠保证,是它的三次握手机制,这一机制保证校验了数据,保证了他的可靠性。
而UDP就没有了,所以不可靠。
不过UDP的速度是TCP比不了的,而且UDP的反应速度更快,QQ就是用UDP协议传输的,HTTP是用TCP协议传输的,不用我说什么,自己体验一下就能发现区别了。
再有就是UDP和TCP的目的端口不一样(这句话好象是多余的),而且两个协议不在同一层,TCP在三层,UDP不是在四层就是七层。
TCP/IP协议介绍 TCP/IP的通讯协议 这部分简要介绍一下TCP/IP的内部结构,为讨论与互联网有关的安全问题打下基础。
TCP/IP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T1和X.25、以太网以及RS-232串行接口)之上。
确切地说,TCP/IP协议是一组包括TCP协议和IP协议,UDP(User Datagram Protocol)协议、ICMP(Internet Control Message Protocol)协议和其他一些协议的协议组。
TCP/IP整体构架概述 TCP/IP协议并不完全符合OSI的七层参考模型。
传统的开放式系统互连参考模型,是一种通信协议的7层抽象的参考模型,其中每一层执行某一特定任务。
该模型的目的是使各种硬件在相同的层次上相互通信。
这7层是:物理层、数据链路层、网路层、传输层、话路层、表示层和应用层。
而TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。
这4层分别为: 应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。
传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。
互连网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)来传送数据。
TCP/IP中的协议 以下简单介绍TCP/IP中的协议都具备什么样的功能,都是如何工作的: 1. IP 网际协议IP是TCP/IP的心脏,也是网络层中最重要的协议。
IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层---TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。
IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。
IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。
高层的TCP和UDP服务在接收数据包时,通常假设包中的源地址是有效的。
也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。
IP确认包含一个选项,叫作IP source routing,可以用来指定一条源地址和目的地址之间的直接路径。
对于一些TCP和UDP的服务来说,使用了该选项的IP包好象是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。
这个选项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。
那么,许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。
2. TCP 如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向‘上’传送到TCP层。
TCP将包排序并进行错误检查,同时实现虚电路间的连接。
TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。
TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。
应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。
面向连接的服务(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它们使用了TCP。
DNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。
3.UDP UDP与TCP位于同一层,但对于数据包的顺序错误或重发。
因此,UDP不被应用于那些使用虚电路的面向连接的服务,UDP主要用于那些面向查询---应答的服务,例如NFS。
相对于FTP或Telnet,这些服务需要交换的信息量较小。
使用UDP的服务包括NTP(网落时间协议)和DNS(DNS也使用TCP)。
欺骗UDP包比欺骗TCP包更容易,因为UDP没有建立初始化连接(也可以称为握手)(因为在两个系统间没有虚电路),也就是说,与UDP相关的服务面临着更大的危险。
4.ICMP ICMP与IP位于同一层,它被用来传送IP的的控制信息。
它主要是用来提供有关通向目的地址的路径信息。
ICMP的'Redirect'信息通知主机通向其他系统的更准确的路径,而'Unreachable'信息则指出路径有问题。
另外,如果路径不可用了,ICMP可以使TCP连接‘体面地’终止。
PING是最常用的基于ICMP的服务。
5. TCP和UDP的端口结构 TCP和UDP服务通常有一个客户/服务器的关系,例如,一个Telnet服务进...
转载请注明出处51数据库 » 建立ntp服务器软件