Linux内核配置(5)

PCMCIA(主要用于笔记本)支持

<>16-bit PCMCIA support (NEW)

一些老的PCMCIA卡使用16位的CardBus,需要相应软件支持。

[] Load CIS updates from userspace (EXPERIMENTAL) (NEW)

-*- 32-bit CardBus support

32 PCMCIA 总线支持

通常也叫PCMCIA II 总线。下面的是不同厂家的PCMCIA 芯片的驱动支持。

需要CardBus兼容的总线控制器。

当前的PCMCIA卡基本上都是32位的CardBus

*** PC-card bridges ***

<>CardBus yenta-compatible bridge support

使用PCMCIA卡的基本上都需要选择这一项,子项请按照自己实际使用的PCMCIA卡选择

<>Cirrus PD6729 compatible bridge support (NEW)

<>i82092 compatible bridge support (NEW)

<> Support for PCI Hotplug --->

PCI热插拔支持

如果主板有一个PCI Hotplug控制器,则此处选Y,这将在机器充电和运行时,允许你增加或删除PCI卡。

我没有要热拔插PCI 设备的需求

--- Support for PCI Hotplug

<>Fake PCI Hotplug driver (NEW)

<>Compaq PCI Hotplug driver (NEW)

<>IBM PCI Hotplug driver (NEW)

<>ACPI PCI Hotplug driver (NEW)

如果系统支持PCI Hotplug使用ACPI,则此处选择Y

[ ] CompactPCI Hotplug driver (NEW)

如果系统通过PICMG 2.1规格说明书支持CompactPCI hotswap的系统卡,则此处选择Y

<>SHPC PCI Hotplug driver (NEW)

如果主板有SHPC PCI Hotplug控制器,则此处选择Y

[ ] RapidIO support (NEW)

[] IDT Tsi721 PCI Express SRIO Controller support

(30) Discovery timeout duration (seconds) (NEW)

[] Enable RapidIO Input/Output Ports

[] RapidIO subsystem debug messages

[] IDT Tsi57x SRIO switches support

[] IDT CPS-xx SRIO switches support

[] Tsi568 SRIO switch support

[] IDT CPS Gen.2 SRIO switch support

[] Tsi500 Parallel RapidIO switch support

Executable file formats / Emulations --->

可执行文件的格式

[ ] Kernel support for ELF binaries

ELF(可扩展可链接格式)是开放平台下最常用的二进制文件,支持动态连接,支持不同的硬件平台。

ELF现在基本代替了传统的a.out格式(QMAGIC and ZMAGIC使用),其具有可移植特性,而且建立相关运行库文件非常容易。

将使内核增大13KB。推荐Y

[] Write ELF core dumps with partial segments

用部分参数写入ELF核心信息转储

ELF核心信息转储文件描述了每个崩溃进程的内存页面,它能够保持或者省略每个内存的内容。默认的,不可修改的文本映射内容将被省略。

对于一个ELF对象中不可修改的文本映射,包括文件的第一页,核心转储使得它可以识别文件中的编译ID字段,而不需要花费I/O和磁盘空间来转储所有的文本。

核心转储行为能够通过使用伪文件/proc/PID/coredump_filter进行每个进程的控制。这些设置是可继承的。

但是,GDB 6.7之前的版本会被ELF核心转储文件的格式弄混。

可选N

<> Kernel support for a.out and ECOFF binaries (NEW)

a.outECOFF二进制格式的支持

早期UNIX系统的可执行文件格式,目前已经被ELF格式取代

若不清楚,推荐N

<> Kernel support for MISC binaries

内核对 MISC 二进制文件的支持

允许插入二进制的封装层到内核中。

使用Java,.NET,Python,Lisp等语言编写的程序时需要它。推荐Y

[] Networking support --->

主网络配置选项

即使不联网,也需要开启网络支持。否则内核无法正常运行。

--- Networking support

Networking options --->

<> Packet socket

包套接字

这种Socket可以让应用程序(比如tcpdump,iptables)直接与网络设备通讯,而不通过内核中的其它中介协议。

如果你选Y,包协议驱动将使用一个IO结构,这可以加速连接。

<>Unix domain sockets

UNIX域套接字

一种仅运行于本机上的效率高于TCP/IPSocket,简称Unix socket

许多程序都使用它在操作系统内部进行进程间通信(IPC),即使机器未连接上网络,比如X Windowudevsyslog

<>UNIX: socket monitoring interface (NEW)

 

<> Transformation user configuration interface

用户设备接口转换

IPsec(可在ip层加密)之类的工具提供XFRM用户配置接口支持。推荐Y

[ ] Transformation sub policy support (EXPERIMENTAL) (NEW)

XFRM子策略支持

仅供开发者使用。

[ ] Transformation migrate database (EXPERIMENTAL) (NEW)

[ ] Transformation statistics (EXPERIMENTAL) (NEW)

<> PF_KEY sockets

用于可信任的密钥管理程序和操作系统内核内部的密钥管理进行通信,IPsec依赖于它。推荐Y

[] TCP/IP networking

TCP/IP协议

X window使用TCP/IP,即使机器未连接上网络。

你会得到自回环设备(LOOP-BACK),这样你可以ping自己。

若选Y/proc file system support Sysctl support 也需要选择,以通过/proc/sys/net/ipv4/* 的虚拟文件来改变TCP/IP 代码的运行方式。

使内核增大144KB

推荐Y

[] IP: multicasting

IP:群组广播

是在一个时间里访问多个地址的代码,会使内核增大2KB。如果需要加入MBONE(多路广播主干网),可选Y。一般推荐N

[] IP: advanced router

高级路由

会出现一些选项使得能够更精确地控制路由过程。

N只会使系统配置跳过所有高级路由选项。

可以通过启用/proc文件系统和Sysctl支持,并在proc文件系统挂载后执行echo “1”> /proc/sys/net/ipv4/ip_forward命令,来开启此功能。

如果想做一个路由器就选吧。

[ ] FIB TRIE statistics (NEW)

[] IP: policy routing

策略路由

通常地,一个路由器描述了如何处理接收到的基于唯一终点地址的包。如果你在这选Ylinux路由将能够考虑包的源地址。

[] IP: equal cost multipath

IP:多路径等同花销

通常地,路由表指定了一个单独的行为,以决定和处理给定的包。如果你在这选Y,它将可以用几种行为处理一个包类型,表现出来的结果就是对这些包指定了几种可选的传输路径。路由器把这些路径当作是同等的开销,同时非确定性地选择它们的其中之一,当一个匹配的包到达的时候。

[] IP: verbose route monitoring

IP:详细路由监视

如果你在这选Y(推荐的作法),内核将可以打印详细的路由信息,比如接收到陌生包时的警告,这将可以作为被攻击的证据,或者表明系统的某个地方没有配置好。这个信息由后台程序klogd负责处理,它对于内核的信息可以作出响应。

[ ] IP: kernel level autoconfiguration

IP:内核级别自动配置

在内核启动时自动配置ip地址/路由表等。由内核的命令行或者由BOOTPRARP协议提供信息。

需要从网络启动的无盘工作站才需要这个东西。

[ ] IP: DHCP support

IPDHCP支持。推荐Y

[ ] IP: BOOTP support

网络启动支持

如果你想让你的linux机器在启动时通过网络的NFS协议挂载其他机上的整个启动文件系统(包括根目录/),同时你想要让你的IP地址在启动时被BOOTP协议(一种专门用来在启动时自动获取IP地址的协议)自动获取,选Y

[ ] IP: RARP support

如果你想让你的linux机器在启动时通过网络的NFS协议挂载其他机上的整个启动文件系统(包括根目录/),同时你想要让你的IP地址在启动时被RARP协议(一种专门用来在启动时自动获取IP地址的协议,DHCPBOOTP更老)自动获取,选Y

<> IP: tunneling

IP隧道

将一个IP报文封装在另一个IP报文内的技术。

<> IP: GRE tunnels over IP

IPGRE隧道

隧道传输意味着将数据从一个协议类型压缩到另一个协议类型中,并通过理解这个压缩协议的一个隧道进行传输。

这个特殊的隧道驱动包含GRE(通用路由压缩),可以将IPV4或者IPV6压缩到现有的IPV4基本组织中。

这个驱动很有用,如果网络终点是Cisco路由。Cisco有点像GRE,但是比其他的linux隧道驱动更好(看上面的选项)。

另外,GRE允许多播通过隧道重新分配。

[] IP: multicast routing

多重传播路由

如果你想要你的机器变成一个多终端的IP包路由,选这项。在MBONE需要这功能。

[ ] IP: multicast policy routing (NEW)

[]IP: PIM-SM version 1 support

[]IP: PIM-SM version 2 support

[ ] IP: ARP daemon support

这东西尚处于试验阶段就已经被废弃了

[ ] IP: TCP syncookie support

抵抗SYNflood 攻击

启用它须同时启用/proc文件系统和"Sysctl support",然后在系统启动并挂载了/proc之后执行"echo 1 >/proc/sys/net/ipv4/tcp_syncookies"命令。

不考虑安全特性可以不启用。

<> IP: AH transformation

IPsec验证头(AH)

实现了数据发送方的验证处理,可确保数据既对于未经验证的站点不可用也不能在路由过程中更改。

<> IP: ESP transformation

IPsec封闭安全负载(ESP)

实现了发送方的验证处理和数据加密处理,用以确保数据不会被拦截/查看或复制。

<> IP: IPComp transformation

IPComp(IP静荷载压缩协议)

用于支持IPsec

<> IP: IPsec transport mode

IPsec传输模式

常用于对等通信,用以提供内网安全.数据包经过了加密但IP头没有加密,因此任何标准设备或软件都可查看和使用IP头。

<> IP: IPsec tunnel mode

IPsec隧道模式

用于提供外网安全(包括虚拟专用网络)。整个数据包(数据头和负载)都已经过加密处理且分配有新的ESP/IP头和验证尾,从而能够隐藏受保护站点的拓扑结构

<> IP: IPsec BEET mode

IPsec BEET模式

[] Large Receive Offload (ipv4/tcp)

支持大型接收卸载,推荐Y

<> INET: socket monitoring interface

socket监视接口

一些Linux本地工具(:包含ssiproute2)需要使用它。推荐Y

[ ] TCP: advanced congestion control --->

高级拥塞控制

如果没有特殊需求(比如无线网络)就别选了内核会自动将默认的拥塞控制设为"Cubic"并将"Reno"作为候补。可选N

[] TCP: MD5 Signature Option support (RFC2385) (EXPERIMENTAL)

<> The IPv6 protocol --->

支持IPV6

--- The IPv6 protocol
[ ] IPv6: Privacy Extensions (RFC 3041) support (NEW)

IPV6隐私扩展支持

有这个选项时,额外的、定期改变的、随机虚拟的、共用作用域的、单一传播的地址将会指派给你的接口。我们使用我们标准的随机虚拟算法生成随机的接口ID,类似的算法有RFC 3041

[ ] IPv6: Router Preference (RFC 4191) support (NEW)

IPV6:路由首选项支持

路由首选项是可选的扩展功能,它可以让路由宣告相关信息,以改进主机的能力。它使主机能够选择更合适的路由,特别是主机在多用户的网络中时尤其有效。

[ ] IPv6: Enable RFC 4429 Optimistic DAD (EXPERIMENTAL) (NEW)
<>IPv6: AH transformation

支持IPsec AH

<>IPv6: ESP transformation

IPV6ESP转换

<>IPv6: IPComp transformation (NEW)

IPV6IPComp转换

<>IPv6: Mobility (EXPERIMENTAL) (NEW)
<>IPv6: IPsec transport mode (NEW)

IPsec传输模式

<>IPv6: IPsec tunnel mode (NEW)

 

<>IPv6: IPsec BEET mode (NEW)
<>IPv6: MIPv6 route optimization mode (EXPERIMENTAL) (NEW)
<>IPv6: IPv6-in-IPv4 tunnel (SIT driver) (NEW)

IPV6IPV6IPV4隧道

隧道传输意味着将数据从一个协议类型压缩到另一个协议类型中,并通过理解这个压缩协议的一个隧道进行传输。这个特殊的隧道驱动包含IPV6IPV4的套接口。

如果你想要将两个IPV6网络通过唯一的IPV4路径进行连接的话,这非常有用。

[ ] IPv6: IPv6 Rapid Deployment (6RD) (EXPERIMENTAL) (NEW)
<>IPv6: IP-in-IPv6 tunnel (RFC2473) (NEW)
[ ] IPv6: Multiple Routing Tables (NEW)
[ ] IPv6: multicast routing (EXPERIMENTAL) (NEW)

[ ] NetLabel subsystem support

NetLabel 子系统,

为诸如CIPSORIPSO 之类能够在分组信息上添加标签的协议提供支持。可选N

-*- Security Marking

对网络包进行安全标记

类似于nfmark,但主要是为安全目的而设计。

[ ] Timestamping in PHY devices (NEW)

[ ] Network packet filtering framework (Netfilter) --->

网络包过滤框架

内核提供的防火墙叫做“包过滤器”,它可以通过包类型、来源地、终点等来拒绝相应的网络包。

另外一种防火墙是基于代理的。它更安全,但是更强制(经常打断你),安装更麻烦。它审查网络通讯更直接,能够修改包,能够理解更高层次的协议。这是包过滤器所做不到的。

内核不支持基于代理的防火墙,但是基于代理的防火墙通常和包过滤防火墙相结合,只有选Y,它才能工作。

Netfilter可以对数据包进行过滤和修改,可以作为防火墙("packet filter""proxy-based")或网关(NAT)或代理服务器(proxy)或网桥使用。

选中此选项后必须将"Fast switching"关闭,否则将前功尽弃。

--- Network packet filtering framework (Netfilter)
[ ] Network packet filtering debugging (NEW)

网络包过滤调试,仅供开发者调试Netfilter使用。

[ ] Advanced netfilter configuration

高级网络过滤配置。

Core Netfilter Configuration --->

核心Netfilter配置(当包流过Chain时如果match某个规则那么将由该规则的target来处理,否则将由同一个Chain中的下一个规则进行匹配,若不match所有规则那么最终将由该Chainpolicy进行处理)

-*- Netfilter LOG over NFNETLINK interface

通过NFNETLINK接口对包记录.该选项废弃了ipt_ULOGebg_ulog机制,并打算在将来废弃基于syslogipt_LOGip6t_LOG模块

<> Netfilter connection tracking support

保存通过机器的网络包的纪录,以找出它们是怎样关系到连接的。

[] Connection tracking security mark support (NEW)
[] Supply CT list in procfs (OBSOLETE) (NEW)
<>FTP protocol support
<>IRC protocol support
<>NetBIOS name service protocol support (NEW)
<>SIP protocol support
<>Connection tracking netlink interface
-*- Netfilter Xtables support (required for ip_tables)

如果你打算使用ip_tables,ip6_tables,arp_tables之一就必须选上

*** Xtables combined modules ***
<>nfmark target and match support (NEW)
*** Xtables targets ***
<>"CONNSECMARK" target support

针对链接进行安全标记,同时还会将连接上的标记还原到包上(如果链接中的包尚未进行安全标记),通常与SECMARK target联合使用

<>"NFLOG" target support
<>"SECMARK" target support
<>"TCPMSS" target support
*** Xtables matches ***
<>"conntrack" connection tracking match support

连接跟踪匹配,"state"的超集,它允许额外的链接跟踪信息,在需要设置一些复杂的规则(比如网关)时很有用

<>IPsec "policy" match support

使用IPsec就选上吧

<>"state" match support

这是对包进行分类的有力工具,它允许利用连接跟踪信息对连接中处于特定状态的包进行匹配

<> IP set support (NEW) --->
--- IP set support
(256) Maximum number of IP sets (NEW)
<> bitmap:ip set support (NEW)
<> bitmap:ip,mac set support (NEW)
<> bitmap:port set support (NEW)
<> hash:ip set support (NEW)
<> hash:ip,port set support (NEW)
<>hash:ip,port,ip set support (NEW)
<> hash:ip,port,net set support (NEW)
<> hash:net set support (NEW)
<> hash:net,port set support (NEW)
<>hash:net,iface set support (NEW)
<>list:set set support (NEW)
<>IP virtual server support (NEW) --->

IP虚拟服务器支持

--- IP virtual server support
[ ] IPv6 support for IPVS (NEW)
[ ] IP virtual server debugging (NEW)
(12)IPVS connection table size (the Nth power of 2) (NEW)
*** IPVS transport protocol load balancing support ***
[ ] TCP load balancing support (NEW)
[ ] UDP load balancing support (NEW)
[ ] ESP load balancing support (NEW)
[ ] AH load balancing support (NEW)
[ ] SCTP load balancing support (NEW)
*** IPVS scheduler ***
<>round-robin scheduling (NEW)
<>weighted round-robin scheduling (NEW)
<>least-connection scheduling (NEW)
<>weighted least-connection scheduling (NEW)
<>locality-based least-connection scheduling (NEW)
<>locality-based least-connection with replication scheduling
<>destination hashing scheduling (NEW)
<>source hashing scheduling (NEW)
<>shortest expected delay scheduling (NEW)
<>never queue scheduling (NEW)
*** IPVS SH scheduler ***
(8) IPVS source hashing table size (the Nth power of 2) (NEW)
*** IPVS application helper ***
[ ] Netfilter connection tracking (NEW)
IP: Netfilter Configuration --->

针对IPv4Netfilter配置

选择要提供过滤的协议

<> IPv4 connection tracking support (required for NAT)
[] proc/sysctl compatibility with old connection tracking (NEW)
<> IP tables support (required for filtering/masq/NAT)

IP表是一个可扩展的包识别框架。

要用iptables就肯定要选上

<>Packet filtering

定义filter表以允许对包进行过滤

<>REJECT target support

允许返回一个ICMP错误而不是简单的丢弃包

<>LOG target support

允许将符合条件的包头信息通过syslog进行记录

<>ULOG target support

透过netlink socket将符合条件的封包交给用户空间的ulogd守护进程.反对使用该选项,因为它已经被NETFILTER_NETLINK_LOG代替

你可能感兴趣的:(linux)