red hat 下载iptables的默认目录在哪

当前位置:&&技术问答>
把iptables移植到嵌入式linux内核
&&&&来源:&互联网& 发布时间:
&&&&本文导语:&
在宿主机Red Hat Linux 9.0上安装iptables-1.3.6是可以用的,但我修改了内核路径和可执行文件路径到ARM文件系统后烧到板子(内核是Linux-2.6.8.1)上,使用iptables命令时出现bash: /sbin/iptables: cannot execute binary file,我想知道为什...
在宿主机Red Hat Linux 9.0上安装iptables-1.3.6是可以用的,但我修改了内核路径和可执行文件路径到ARM文件系统后烧到板子(内核是Linux-2.6.8.1)上,使用iptables命令时出现bash: /sbin/iptables: cannot execute binary file,我想知道为什么在宿主机可以用,为什么到这就不可以用了,请大虾,帮帮忙(google搜的那方法行不通,如下)
Linux下支持netfilter机制的配置工具就是iptables,它也就相当与一个应用程序,可以对netfilter进行配置(包过滤规则,NAT等等)。所以要实现netfilter(iptables)就要从两方面来着手:1)内核支持netfilter;2)用户层的iptables配置命令。
1、编译内核,支持netfilter
在宿主机上进入Linux内核目录,配置所需的内核模块:
/usr/src/linux
menuconfig
选中如下内核选项:
General setup --->
[*] Sysctl support (在ROMFS文件系统中/proc/sys/net/ipv4/出现ip_forward)
Networking options --->
[*] Network packet filtering (replaces ipchains)
IP: Netfilter Configuration --->(全部选择即可)
这样在内核中就选择支持了netfilter。接下来只需编译并生成内核映像文件并烧写到嵌入式系统即可。如果烧写后重起成功进入Linux,则说明新的支持netfiter的内核已经正常运行。(注意,这里的内核选项只是一些支持netfilter/iptables的选项。这里假设原有内核已支持嵌入式系统的相关硬件,并能在嵌入式平台上运行)。
2、编译生成iptables命令
iptables工具包可以免费从网上获得。下载iptables工具包后,进入下载目录,进行编译生成可执行文件,编译方法具体可以参考iptables目录下的INSTALL文件:
cd /root/iptables
make KERNEL_DIR = /usr/src/linux(指定内核目录)
make NO_SHARED_LIBS = 1(静态链接编译生成可执行文件)
把生成的iptables可执行文件copy到ramdisk再下载到嵌入式系统中就可以运行。
好了,重新启动板子后,就可以用iptables这个命令了。
这是网上的方法,在哪需要改的,请大虾帮忙
呵呵, 你用X86的GCC 来编译, 在ARM的平台上运行,肯定不行啦, 需要用你的嵌入式的工具链来编译才行的。
bash: /sbin/iptables: cannot execute binary file ?
明显告诉你编译器不对
您可能感兴趣的文章:
本站(WWW.169IT.COM)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。本站(WWW.169IT.COM)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
相关文章推荐
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!
(C)9IT.COM,E-mail:www_169it_com#163.com(请将#改为@)输出iptables日志到一个指定的文件 - 全面详解Linux日志管理技巧_Linux教程_Linux公社-Linux系统门户网站
你好,游客
全面详解Linux日志管理技巧
输出iptables日志到一个指定的文件
作者:Linux
2. 输出iptables日志到一个指定的文件Iptables的man参考页中提到: 我们可以使用iptables在linux内核中建立, 维护和检查IP包过滤规则表. 几个不同的表可能已经创建, 每一个表包含了很多内嵌的链, 也可能包含用户自定义的链.Iptables默认把日志信息输出到/var/log/messages文件. 不过一些情况下你可能需要修改日志输出的位置. 下面向大家介绍如何建立一个新的日志文件/var/log/iptables.log. 通过修改或使用新的日志文件, 你可以创建更好的统计信息或者帮助你分析网络攻击信息.1). Iptables默认的日志文件例如, 如果你输入下面的命令, 屏幕将显示/var/log/messages文件中的iptables日志信息:# tail -f /var/log/messages输出:Oct 4 00:44:28 debian gconfd (vivek-4435): Resolved address "xml:readonly:/etc/gconf/gconf.xml.defaults" to a read-only configuration source at position 2Oct 4 01:14:19 debian kernel: IN=ra0 OUT= MAC=00:17:9a:0a:f6:44:00:08:5c:00:00:01:08:00 SRC=200.142.84.36 DST=192.168.1.2 LEN=60 TOS=0x00 PREC=0x00 TTL=51 ID=18374 DF PROTO=TCP SPT=46040 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=02). 输出iptables日志信息到一个指定文件的方法打开你的/etc/syslog.conf文件:# vi /etc/syslog.conf在文件末尾加入下面一行信息kern.warning /var/log/iptables.log保存和关闭文件.重新启动syslogd(如果你使用Debian/ Linux):# /etc/init.d/sysklogd restart另外, 使用下面命令重新启动syslogd(如果你使用/Cent OS/ Core Linux):# /etc/init.d/syslog restart现在确认你的iptables使用了log-level 4参数(前面有一个log-prefix标志). 例如:# DROP everything and Log itiptables -A INPUT -j LOG –log-level 4iptables -A INPUT -j DROP举一个例子, 丢弃和记录所有来自IP地址65.55.11.2的连接信息到/var/log/iptables.log文件.iptables -A INPUT -s 64.55.11.2 -m limit --limit 5/m --limit-burst 7 -j LOG –log-prefix ‘** HACKERS **’ --log-level 4iptables -A INPUT -s 64.55.11.2 -j DROP命令解释:. - log-level 4: 记录的级别. 级别4为警告(warning).. - log-prefix ‘*** TEXT ***’: 这里定义了在日志输出信息前加上TEXT前缀. TEXT信息最长可以是29个字符, 这样你就可以在记录文件中方便找到相关的信息.现在你可以通过/var/log/iptables.log文件参考iptables的所有信息:# tail -f /var/log/iptables.log2
【内容导航】
相关资讯 & & &
& (09/04/:37)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款
gra 发表于 efter一、iptables日志管理
输出iptables日志到一个指定的文件Iptables的man参考页中提到: 我们可以使用iptables在linux内核中建立, 维护和检查IP包过滤规则表. 几个不同的表可能已经创建, 每一个表包含了很多内嵌的链, 也可能包含用户自定义的链.Iptables默认把日志信息输出到/var/log/messages文件. 不过一些情况下你可能需要修改日志输出的位置. 下面向大家介绍如何建立一个新的日志文件/var/log/iptables.log. 通过修改或使用新的日志文件, 你可以创建更好的统计信息或者帮助你分析网络攻击信息.1). Iptables默认的日志文件例如, 如果你输入下面的命令, 屏幕将显示/var/log/messages文件中的iptables日志信息:# tail -f /var/log/messages输出:Oct 4 00:44:28 debian gconfd (vivek-4435): Resolved address "xml:readonly:/etc/gconf/gconf.xml.defaults" to a read-only configuration source at position 2Oct 4 01:14:19 debian kernel: IN=ra0 OUT= MAC=00:17:9a:0a:f6:44:00:08:5c:00:00:01:08:00 SRC=200.142.84.36 DST=192.168.1.2 LEN=60 TOS=0x00 PREC=0x00 TTL=51 ID=18374 DF PROTO=TCP SPT=46040 DPT=22 WINDOW=5840 RES=0x00 SYN URGP=02). 输出iptables日志信息到一个指定文件的方法打开你的/etc/syslog.conf文件:# vi /etc/syslog.conf在文件末尾加入下面一行信息kern.warning /var/log/iptables.log保存和关闭文件.重新启动syslogd(如果你使用Debian/Ubuntu Linux):# /etc/init.d/sysklogd restart另外, 使用下面命令重新启动syslogd(如果你使用Red Hat/Cent OS/Fedora Core Linux):# /etc/init.d/syslog restart现在确认你的iptables使用了log-level 4参数(前面有一个log-prefix标志). 例如:# DROP everything and Log itiptables -A INPUT -j LOG –log-level 4iptables -A INPUT -j DROP举一个例子, 丢弃和记录所有来自IP地址65.55.11.2的连接信息到/var/log/iptables.log文件.iptables -A INPUT -s 64.55.11.2 -m limit --limit 5/m --limit-burst 7 -j LOG –log-prefix ‘** HACKERS **’ --log-level 4iptables -A INPUT -s 64.55.11.2 -j DROP命令解释:. - log-level 4: 记录的级别. 级别4为警告(warning).. - log-prefix ‘*** TEXT ***’: 这里定义了在日志输出信息前加上TEXT前缀. TEXT信息最长可以是29个字符, 这样你就可以在记录文件中方便找到相关的信息.现在你可以通过/var/log/iptables.log文件参考iptables的所有信息:# tail -f /var/log/iptables.log参考Shell scripting: Write message to a syslog / log fileForce iptables to log messages to a different log file
二、Linux日志管理的技巧目录1. 使用shell向syslog日志文件写入信息2. 输出iptables日志到一个指定的文件内容1. 使用shell向syslog日志文件写入信息应用程序使用syslog协议发送信息给Linux系统的日志文件(位于/var/log目录). Sysklogd提供两个系统工具: 一个是系统日志记录, 另一个是内核信息捕获. 通常大多程序都使用C语言或者syslog应用程序或库来发送syslog消息.下面介绍如何使用shell向syslog日志文件写入信息:1). 使用Logger命令logger命令是一个shell命令(接口). 你可以通过该接口使用syslog的系统日志模块 你还可以从命令行直接向系统日志文件写入一行信息.比如, 记录硬盘升级后的系统重启信息:$ logger System rebooted for hard disk upgrade然后你可以查看/var/log/message文件:# tail -f /var/log/message输出为:Jan 26 20:53:31 dell6400 logger: System rebooted for hard disk upgrade你也可以通过脚本程序来使用logger命令. 看下面的实例:#!/bin/bashHDBS="db1 db2 db3 db4"BAK="/sout/email"[ ! -d $BAK ] && mkdir -p $BAK || :/bin/rm $BAK/*NOW=$(date +"%d-%m-%Y")ATTCH="/sout/backup.$NOW.tgz"[ -f $ATTCH ] && /bin/rm $ATTCH&&&|| :MTO=""for db in $HDBSdoFILE="$BAK/$db.$NOW-$(date +"%T").gz"mysqldump -u admin -p'password' $db | gzip -9& $FILEdonetar -jcvf $ATTCH $BAKmutt -s "DB $NOW" -a $ATTCH $MTO &&EOFDBS $(date)EOF[ "$?" != "0" ] &&&&&logger "$0 - MySQL Backup failed" || :如果mysql数据库备份失败, 上面最后一行代码将会写入一条信息到/var/log/message文件.2). 其它用法如果你需要记录/var/log/myapp.log文件中的信息, 可以使用:$ logger -f /var/log/myapp.log把消息发送到屏幕(标准错误), 如系统日志:$ logger -s "Hard disk full"你可以参考man参考页获得更多的选项信息:man loggerman syslogd来源:
阅读(...) 评论()他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)

我要回帖

更多关于 redsocks iptables 的文章

 

随机推荐