当前位置:七道奇文章资讯系统安全Linux安全
日期:2011-03-05 03:49:00  来源:本站整理

Linux内核裁剪的具体步骤[Linux安全]

赞助商链接



  本文“Linux内核裁剪的具体步骤[Linux安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

在menuconfig中配置:
具体介绍内核配置选项及删改情形
第一部份:全部删除
Code maturity level options ---> 代码成熟等级选项
[]Prompt for development and/or incomplete code/drivers 默许情形下是挑选的,这将会在设置界面中显示还在开辟大概还没有完成的代码与驱动.不选.
第二部份 :除以下选项,别的全部删除
General setup—〉
System V IPC (IPC:Inter Process Communication)是组系统调用及函数库,它能让程序彼此间同步举行交换信息.某些程序以及DOS模拟环境都需求它.为进程供应通信机制,这将使系统中各进程间有交换信息与保持同步的本领.有些程序只有在选Y的情形下才能运行,所以不用考虑,这里一定要选.
第三部份:除以下选项,别的全部删除
Loadable module support ---> 可指导模块支持 倡议作为模块加入内核
[] Enable loadable module support 这个选项可以让你的内核支持模块,模块是什么呢?模块是一小段代码,编译后可在系统内核运行时动态的加入内核,从而为内核增添一些特点或是对某种硬件举行支持.普通一些不常用到的驱动或特点可以编译为模块以削减内核的体积.在运行时可以利用modprobe号令来加载它到内核中去(在不需求时还可以移除它).一些特点能否编译为模块的原则是,不常利用的,分外是在系统启动时不需求的驱动可以将其编译为模块,假如是一些在系统启动时就要用到的驱动比方说文件系统,系统总线的支持就不要编为模块了,否在无法启动系统.
[]Automatic kernel module loading 普通情形下,假如我们的内核在某些任务中要利用一些被编译为模块的驱动或特点时,我们要先利用modprobe号令来加载它,内核才能利用.不过,假如你挑选了这个选项,在内核需求一些模块时它可以自动调用modprobe号令来加载需求的模块,这是个很棒的特点,当然要选Y喽.
第四部份:全部删除
Block layer-----〉块设备
第五部份:除以下选项,别的全部删除
Processor type and features ---> 处理器范例
Subarchitecture Type (PC-compatible) ---> 这选项的主要的目的,是使Linux可以支持多种PC尺度,普通我们利用的PC机是遵守所谓IBM兼容构造(pc/at).这个选项可以让你挑选一些别的架构.我们普通挑选PC-compatible便可以了.
Processor family(386) : 它会对每种CPU做最佳化,让它跑的好又快,普通来说,你是什么型号的就选什么型号的就好.我选的是386,这样内核会省下不少空间
第六部份:除以下选项,别的全部删除
Power management options (ACPI, APM) ---> 电源管理选项
[ ] Power Management Debug Support 电源管理的调试信息支持,假如不是要调试内核有关电源管理部份,请不要挑选这项.
ACPI Support ---〉高级电源接口配置支持,假如BIOS支持,倡议选上这项
[]Button 这个选项用于注册基于电源按钮的事件,比方power, sleep等,当你按下按钮时事件将发生,一个保护程序将读取/proc/acpi/event,并履行用户在这些事件上定义的行动比方让系统关机.可以不挑选,按照自己的需求.
第七部份:除以下选项,别的全部删除
Bus options (PCI, PCMCIA, EISA, MCA, ISA) ---> 总线选项
[]PCI support
PCI access mode (Any) ---> PCI外围设备配置,强列倡议选Any,系统将优先利用MMConfig,然后利用BIOS,最后利用Direct检测PCI设备.
第八部份:除以下选项,别的全部删除
Executable file formats --->
Kernel support for ELF binaries ELF是开放平台下最常用的二进制文件,它支持差别的硬件平台.一定要选.
第九部份:除以下选项,别的全部删除
Networking
Networking options --->
[]Unix domain sockets
[]TCP/IP networking
第十部份:除以下选项,别的全部删除
Device Drivers --->设备驱动
Block devices-------〉
[]Compaq SMART2 support
[] Compaq Smart Array 5xxx support
[]Loopback device support 大部份的人这一个选项都选N,因为没有必要.但是假如你要mount iso文件的话,你得选上Y.这个选项的意思是说,可以将一个文件挂成一个文件系统.假如要烧光盘片的,那么您很有大概在把一个文件烧进去之前,看看这个文件能否符合IS09660的文件系统的内容,能否符合您的需求.并且,可以对这个文件系统加以保护.不过,假如您想做到这点的话,您必须有最新的mount程序,版本是在2.5X版以上的.并且假如您但愿对这个文件系统加上保护,则您必须有des.1.tar.gz 这个程序.注意:此处与网络无关.倡议编译成模块
[] RAM disk support
SCSI device support ---> 里面有关于USB支持的,要挑选
[]SCSI device support USB要用,必须挑选
[]legacy /proc/scsi/ support USB要用,必须挑选
[]SCSI disk support USB要用,必须挑选
SCSI Low-level drivers
[]Serial ATA(SATA) support
[]Intel PIIX/ICH SATA support  这个必须挑选,不然无法产生指导文件
[]Via SATA support
Networking device support ---> 这个下面是选网卡驱动,一定要选
Ethernet(1000mbit)-我的电脑是千兆网卡所以就选这个
[]broadcom Tigon3support
Input device support ---> 这个里面要设置你的鼠标键盘什么的
[]Provide legacy /dev/psaux device
Graphics support --->
[]Support for frame buffer devices 支持Frame buffer的,一定要挑选
USB support --->
[]USB device filesystem 这个好象是用U盘必须的
[]EHCI HCD (USB 2.0) support 有usb2.0就选上把,编译成模块
[]OHCI HCD support 必须挑选,编译成模块
[]UHCI HCD (most Intel and VIA) support 必须挑选,编译成模块
[]USB Mass Storage support 用U盘必须挑选
USB Human Interface Device (full HID) support 里面挑选usb鼠标和usb键盘,假如你有一定选上这个必须选
HID input layer support 应当挑选
/dev/hiddev raw HID device support假如这里有USB键盘和鼠标选项,一定要挑选
第十一部份:除以下选项,别的全部删除
file systems --->文件系统
Second extended fs support

Ext2 extended attributes

Ext2 POSIX Access Control Lists

Ext2 Security Labels
Ext3 journalling file system support

Ext3 extended attributes

Ext3 POSIX Access Control Lists

Ext3 Security Labels 以上这些必定是要挑选的,linux的尺度文件系统
Kernel automounter support 内核自动挂载的,当然要选
Kernel automounter version 4 support (also supports v3) 当然要选
DOS/FAT/NT Filesystems --->
DOS FAT fs support
MSDOS fs support
VFAT (Windows-95) fs support
NTFS file system support
Native language support语言支持,这里就支持英语和汉语就行了,不多说了
[]NLS ISO 8859-1 必须挑选,这个是关于U盘挂载的.
CD-ROM/DVD Filesystems ---> 这个是关于挂载ISO文件的,用的话就选.
ISO 9660 CDROM file system support
第十二部份: 全部删除
Instrumentation support
第十三部份:全部删除
Kernel hacking --->破解核心?可不是当骸客啦,不选
第十四部份:全部删除
Security options --->
第十五部份:全部删除
Cryptographic options --->这是核心支持加密的选项
第十六部份:全部删除
Library routines --->
附:
内核配置
  内核配置的办法很多,make config、make xconfig、make menuconfig、make oldconfig等等,它们的功效都是一样的,辨别应当从名字上就可以看出来,只有make oldconfig是指用系统当前的设置(./.config)作为缺省值.这里用的是make menuconfig.
  需求紧记:不必要的驱动越多,内核就越大,不但运行速度慢、占用内存多,在少数情形下、还会引发其他问题.具体步骤以下:
首先肯定shell是bash.
然后
$make menuconfig
有一些默许的标记其含义以下:
y:加载
n:不加载
m:作为模块加载
可以配置的选项有以下一些:
1)code maturity level option 代码成熟度
prompt for development and/or incomplete code/drivers [N/y/?]
假若有爱好测试一下内核中还没有终究完成的某些模块,就选y,不然选N,想知道更具体的信息选?会看到联机帮忙(以下?的含义相同),N大写表示缺省值.
2)processor type and features 处理器范例及特点
Processor family(386,486/Cx486,586/K5/5x86/6x86,Pentium/K6/TSC, PPro/6x86MX)[PPro/6x86MX]
[]内的是缺省值,我们可以按照前面介绍的uname 号令履行的后果挑选.此项假如高于386,那么生成的内核在386机械上将不能启动.
Math emulation(CONFIG_MATH_EMULATION)[N/y/?]
需求举行协处理器模拟吗?普通的机械都回n.假如机械已经有硬件的协处理器,那么内核仍将利用硬件,而忽视软件的math-emulation,这将使内核变大变慢.
MTRR(Memory Type Range Register)support(CONFIG_MTRR)[N/y/?]
在Pentium、Pro/Pentium II类的系统中可以提高图象写入速度.
Symmetric multi-processing support(CONFIG_SMP)[Y/n/?]
假如您的机械有多个处理器,就选y.此时要选中下面的Enhanced Real Time Clock Support
3)loadable model support 可加载模块支持
Enable loadable module support(CONFIG_MODULES)[Y/n/?]
最好选y,不然很多仅供动态加载的模块就不能用了.
Set version information on all symbols for modules(CONFIG_MODVERSIONS)[N/y/?]
选N
Kernel module loader(CONFIG_KMOD)[N/y/?]
4)general setup 普通设置
Networking support(CONFIG_NET)[Y/n/?]
选y吧,目前还有几台计算机不用上网呢?
PCI support (CONFIG_PCI)[Y/n/?]
PCI 总线和设备总该有吧.
PCI access mode(BIOS,Direct,Any)[Any]
缺省值对比保险,但假如您对您的主板很有信心,就选BIOS.
PCI quirks (CONFIG_PCI_QUIRKS)[Y/n/?]
用于修补BIOS中对PCI有影响的BUG,一样,假如您对主板很有信心,就选n.
Backward-compatible /proc/pci〉(CONFIG_PCI_OLD_PROC)[Y/n/?]
从前的内核利用/proc/pci,新版内核利用/proc/bus/pci,要保持兼容性就选y.
MCA support(CONFIG_MCA)[N/y/?]
查看帮忙吧.
SGI Visual Workstation support(CONFIG_VISWS)[N/y/?]
您的机械是SGI的吗?是就选y.
System V IPC(CONFIG_SYSVIPC)[Y/n/?]
进程间通信函数和系统调用.Linux内核的五大构成部份之一,一定要选.
BSD Process Accounting(CONFIG_BSD_PROCESS_ACCT)[N/y/?]
用于启动由内核将进程信息写入文件的用户级系统调用.就看您想不想用它了.
Sysctl support(CONFIG_SYSCTL)[Y/n/?]
在内核正在运行的时刻改正内核.用8KB空间换取某种便利.别选吧,除非你真的想试试.
Kernel support for a.out binaries(CONFIG_BINFMT_AOUT)[Y/m/n/?]
为了能利用从前编译的程序,选y.
Kernel support for ELF binaries(CONFIG_BINFMT_ELF)[Y/m/n/?]
为了能利用目前编译的程序,选y.
Kernel support for MISC binaries(CONFIG_BINFMT_MISC)[Y/m/n/?]
普通选y,用于支持java等代码的自动履行.
Parallel port support(CONFIG_PARPORT)[N/y/m/?]
并口设备,如打印机.
5)plug and play support 即插即用设备支持
Plug and Play support (CONFIG_PNP)[N/y/?]
选y吧.
6)block devices 块设备
Normal PC floppy disk support(CONFIG_BLK_DEV_FD)[Y/m/n/?]
普通的软驱.选y.
Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support(CONFIG_BLK_DEV_IDE)[Y/m/n/?]
这几种接口的硬盘、光驱、磁带、软驱.选y.
Include IDE/ATAPI CDROM support(CONFIG_BLK_DEV_IDECD)[Y/m/n/?]
CDROM.选y.
7)networking options 网络选项
Packet socket (CONFIG_PACHET)[Y/m/n/?]
按照目前网络发展的情况,选y对比好.当然也可以选别的的.
Kernel/User netlink socke(CONFIG_NETLINK)[N/y/?]
内核与用户进程双向通信.选y.
Network firewalls(CONFIG_FIREWALL)[N/Y/?]
假如真的需求用防火墙,就选y.
UNIX domain sockets(confgi_unix)[Y/m/n/?]
socket 的用处太多了.选y.
TCP/IP networking(CONFIG_INET)[Y/n/?]
选y,来由如上一条.
The IPX protocol (CONFIG_IPX)[N/y/m/?]
其实并没有那么多人真的需求利用大概学习IPX,所以普通选N.
Appletalk DDP(CONFIG_ATALK)[N/y/m/?]
选N,来由同上.
8)SCSI support SCSI支持,SCSI low-level drives SCSI初级驱动
按照系统中SCSI设备的实际情形挑选.
9)Networking device support 网络设备支持
假如用LAN上网,就挑选网卡;
假如用MODEM拨号上网,就要看ISP供应那种服务了,普通都是PPP.
10)Amateur Radio support 业余收音机支持
这是什么我不太清楚,所以选N.
11)ISDN subsystem ISDN子系统
仿佛已经有支持ISDN的MODEM了,所以最好先看看自己的MODEM是不是这种,再做挑选.
12)Old CD-ROM dfivers (not SCSI, not IDE) 老式光驱驱动
普通选N,因为这种设备实在很少见.
13)Character devices 字符设备
Virtual terminal(CONFIG_VT)[Y/n/?]
Linux上普通可以用Alt+F1/F2/F3/F4来切换差别的任务终端,即便在一台计算机上也可以充分利用Linux的多任务本领,一些需求以号令行方法安装符实用的软件假若有虚拟终端的支持就会更便利,因此选y.
Support for console on virtual terminal(CONFIG_VT_CONSOLE)[Y/n/?]
选y将支持一个虚拟终端作为掌握台.普通为Alt+F1.
Support for console on serial port(CONFIG_SERIAL)[Y/m/n/?]
除非真的需求一个串口掌握台,不然选n.
Extended dumb serial driver options(CONFIG_SERIAL_EXTENDED)[N/y/?]
假如但愿利用"dumb"的非尺度特点(如HUB6支持),选y,普通选N.
Non-standard serial port support(CONFIG_SERIAL_NONSTANDARD)[N/y/?]
非尺度串口.普通选N.
UNIX98 PTY support(CONFIG_UNIX98_PTYS)[Y/n/?]
PTY指伪终端,普通用户就选n.但假如想用telnet大概xterms作为终端拜候主机,并且已经安装了glibc2.1,便可以选y.
Maximum number of UNIX98 PTYs in use(0-2048)(CONFIG_UNIX98_PTY_COUNT)[256]
缺省值便可以了.
Mouse Support(not serial mice)(CONFIG_MOUSE)[Y/n/?]
PS/2等非串口鼠标选y,不然选N.
14)Mice 鼠标
按照自己的鼠标范例挑选.
15)Video for Linux Linux视频
按照系统中的音/视频捕捉设备挑选.
16)Joystick support 操作杆
按照系统中的游戏杆设备挑选
17)Ftape,the floopy tape device driver Ftape设备驱动
Ftape (QIC-80/Travan)support(CONFIG_FTAPE)[N/y/m/?]
假如系统中有磁带机,选y.
18)Filesystems 文件系统
文件系统的挑选要对比细心,因为此中的一些给某些系统功效供应支持.并且除了proc、ext2等文件系统之外,别的的文件系统(包含下面的网络文件系统)都可以挑选为m方法,从而减小内核启动时的体积.
Quota support(CONFIG_QUOTA)[N/y/?]
用于给用户划分定量的磁盘空间.如不用此功效就选N.
DOS FAT fs support(CONFIG_FAT_FS)[N/y/m/?]
为内核供应FAT支持,大都用户有大概从Linux拜候同一系统中的WINDOWS硬盘空间,因此最好选y.
ISO 9660 CDROM filesystem support(CONFIG_ISO9660_FS)[Y/m/n/?]
有尺度光驱的系统应当选Y.
Minix fs support(CONFIG_MINIX_FS)[N/y/m/?]
用于成立启动盘的文件系统,大都应当选y大概m.
/proc filesystem support(CONFIG_PROC_FS)[Y/n/?]
虚拟文件系统,必须选Y.
Second extended fs support(CONFIG_EXT2_FS)[Y/m/n/?]
Linux尺度文件系统,都应当选Y.
19)Network file systems 网络文件系统
Coda filesystem support (advanced network fs)(CONFIG_CODA_FS)[N/y/m/?]
先看帮忙再选.
NFS filesystem support(CONFIG_NFS_FS)[Y/m/n/?]
选Y或n,可以拜候远程NFS文件系统.
SMB filesystem support(to mount WfW shares etc.)(CONFIG_SMB_FS)[N/y/m/?]
要拜候WINDOWS系统中的同享资源选y.
NCP filesystem support(to mout NetWare volumes)(CONFIG_NCP_FS)[N/y/m/?]
假如真的需求拜候NetWare文件系统,就选y大概m.
20)Partion Types 分区范例
普通用不上;要用请参看帮忙.
21)Console drivers 掌握台驱动
VGA text console(CONFIG_VGA_CONSOLE)[Y/n/?]
用VGA情势下用文本方法操作Linux,普通选y.
Video mode selection support(CONFIG_VIDEO_SELECT)[N/y/?]
大大都系统都不需求这项功效.
22)Sound 声音
Sound card support(CONFIG_SOUND)[N/y/m/?]
假如系统中安装了声卡,就选y(大概m),然后查看帮忙.
23)Kernel hacking 内核监督
kernel hacking常常会生成非常大大概非常慢(乃至又大又慢)的内核,乃至会惹起内核工作不安定.假如一定要选,那么也最好不要选此中的"development"、"experimental"、"debugging"项.

摘自红色黑客同盟(www.110hack.com) 原文:http://www.110hack.com/article/201103/84797.html   以上是“Linux内核裁剪的具体步骤[Linux安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • windows下的近似linux下的grep号令--findstr
  • linux下mysql链接被防火墙禁止的办理办法
  • Linux下mysql新建账号及权限设置办法
  • SUSE Linux下搭建Web服务器
  • Windows/Linux MySQL忘掉密码重置密码教程
  • Linux下Apache自动监测重启脚本(智能化程度较高)
  • linux备份 linux克隆 linux clone
  • <b>为什么 Linux不需求碎片整理</b>
  • CentOS6 yum搭建Linux+Nginx+PHP+MYSQL(LNMP)
  • Linux系统有效防备ARP攻击
  • Linux下 Memcache的安装和简单管理
  • 笔记本预装linux重装成windows系统
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .