1.Gentoo 安装基本系统全过程记录
2.openwrt是源码什么意思
3.å¦ä½ç¨Cè¯è¨ç¼åDHCPç主è¦åè½ï¼
4.Linux下针对路由功能配置iptables的方法详解
5.å¦ä½å®è£
gentoo linux
Gentoo 安装基本系统全过程记录
下载iso 从Gentoo官网下载最新版的minimal镜像,并通过rufus或dd命令刻录为iso文件。源码在Windows系统中推荐使用rufus,源码它是源码开源免费且操作简单的工具。在Linux系统中,源码利用dd命令进行iso文件刻录。源码网页版江湖源码 配置无线网 确认U盘已正确安装,源码并通过输入lsblk查看对应设备。源码使用dd命令将Minimal镜像写入U盘,源码完成时间约为几分钟。源码重新启动计算机,源码从U盘启动,源码过程中选择键盘模式并确认,源码之后会进入红色提示符界面。源码 联网配置 如果使用有线网络,源码网络已默认连接。webform 项目源码通过ping命令确认网络连接状态。若使用无线网络,需手动配置。使用lspci -k检查设备驱动是否加载,使用dmesg | grep firmware查看内核中固件信息。使用iwconfig查看无线网卡名称,通常为wlp3s0,根据实际设备名称进行后续配置。 编辑配置文件 在/etc/conf.d/net中添加以下内容,确保与实际设备名称相符:modules_wlp3s0="wpa_supplicant"
wpa_supplicant_wlp3s0="-Dwext"
config_wlp3s0="dhcp"
生成wpa_supplicant.conf文件,输入无线SSID和密码,确保文件路径正确。 编辑启动脚本 在/etc/init.d目录下创建或修改脚本文件,确保其正确链接到对应的网络设备文件,如ln -s net.lo net.wlp3s0,源码存放平台然后使用/etc/init.d/net.wlp3s0 start启动网络。 测试网络连接 执行ping命令测试网络连接状态。 磁盘分区与挂载 确认网络连接正常后,使用cfdisk对硬盘进行分区。根据设备的启动模式选择分区方案。对于UEFI模式,分区方案可能如下:分区 大小 挂载点
/dev/sda1 M 引导分区 /boot/efi
/dev/sda2 8G 交换分区 swap
/dev/sda3 G 根分区 /
/dev/sda4 G 用户主目录 /home
完成分区后,使用write命令确认分区信息,然后格式化和挂载分区,确保正确挂载根分区、引导分区、交换分区和用户主目录分区。 下载stage3 使用cd命令进入根分区,下载stage3文件。通过links命令选择合适的网页photoshop源码Gentoo镜像,并输入下载命令开始下载stage3文件。下载完成后,检查文件是否存在并解压。 配置系统 配置make.conf文件,根据CPU核心数设置MAKEOPTS参数,通常为-j5。选择合适的配置文件并更新系统。 安装内核源码 使用emerge命令安装sys-kernel/gentoo-sources包,以获取内核源码。根据提示完成安装。 编译内核 使用genkernel一键编译内核,检查内核版本,并安装所需的固件。配置主机名并设置自动启动网络。 安装工具 安装系统日志记录、Windowsxp源码baiduyunCron守护程序、文件索引、DHCP客户端和无线网络工具等,确保系统功能完整。 配置引导 配置GRUB引导加载程序,确保与系统模式相匹配。安装GRUB2,使用grub-install命令将GRUB2文件安装到适当位置,并运行grub-mkconfig生成引导配置文件。 基本系统安装完成 重启系统后,gentoo基本系统已成功安装。此时,从chroot环境中退出并卸载分区,重新启动系统进入Gentoo环境。创建普通用户以支持桌面登录,后续将安装显卡驱动、触摸板驱动和桌面环境,敬请关注下篇文章。openwrt是什么意思
OpenWrt是什么意思 OpenWrt是一个用于无线路由器的自由开放源代码的Linux操作系统。它的名字取自于“开放的路由器”,旨在提供强大的网络功能和灵活性。OpenWrt可以给路由器添加各种网络功能,如防火墙、虚拟专用网络(***)、负载均衡等,也可以安装各种软件包,如Torrent下载器、Web服务器等。OpenWrt支持各种计算机芯片架构,包括x、MIPS、ARM等。 OpenWrt的主要优势在于它的灵活性和可定制性。它提供了许多功能强大的网络功能,例如负载平衡、防火墙和***,可以帮助用户轻松构建安全可靠的网络。此外,OpenWrt还支持多种架构,如x、MIPS和ARM,因此可适用于各种类型的设备。 OpenWrt的适用场景 OpenWrt非常适合那些想要控制自己网络的用户。它可以轻松监控网络流量、DHCP设置和端口转发等,让用户更好地管理自己的网络。OpenWrt也被用于IoT设备、智能家居、无人机、自动驾驶汽车等领域。因为它可以定制各种计算机支持的处理器架构,因此可以轻松适配各种设备类型。å¦ä½ç¨Cè¯è¨ç¼åDHCPç主è¦åè½ï¼
DHCPå 个æ¥éª¤ï¼client send_discover
server send offer
client brocast request
service send pack åºæ¬ä¸å°±åå°äºip
æ£æ¥ç§çº¦
è¿æå¾å¤ç»èä¸è¥¿ï¼èªå·±ä¸ä¸ä¸ªæºç ï¼ç¶åé åæå æ°æ®ï¼å¤§æ¦å°±æ¸ æ¥å¦ä½å®ç°çäº
Linux下针对路由功能配置iptables的方法详解
作为公司上网的路由器需要实现的功能有nat地址转换、dhcp、dns缓存、流量控制、应用程序控制,nat地址转换通过iptables可以直 接实现,dhcp服务需要安装dhcpd,dns缓存功能需要使用bind,流量控制可以使用tc,应用程序控制:例如对qq的封锁可以使用 netfilter-layer7-v2.+-protocols---.tar.gz来实现
1、网络规划
操作系统是centos5.8
2、安装dhcpd
代码如下:
yum install dhcp-3.0.5-.el5
vim /etc/dhcp/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet .0.0.0 netmask ...0 {
option routers .0.0.1;
option subnet-mask ...0;
option domain-name-servers .0.0.1;
range dynamic-bootp .0.0. .0.0.;
default-lease-time ;
max-lease-time ;
}
3、安装bind,实现dns缓存
代码如下:
yum install bind.i bind-libs.i bind-utils.i
vim /etc/named.conf
options {
directory "/var/named";
allow-recursion { .0.0.0/; };
recursion yes;
forward first; #将所有请求都进行转发
forwarders { ...; }; #定义转发服务器地址
};
zone "." IN {
type hint;
file "named.ca";
};
zone "localhost" IN {
type master;
file "named.localhost";
allow-transfer { none; };
};
zone "0.0..in-addr.arpa" IN {
type master;
file "named.loopback";
allow-transfer { none; };
};
创建根域文件,默认有
代码如下:
dig -t NS . /var/named/named.ca
chown :named /var/named/named.ca
创建本地正向解析文件,默认有
代码如下:
vim /var/named/named.localhost
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A .0.0.1
chown :named /var/named/named.localhost
创建本地反向解析文件,默认有
代码如下:
vim /var/named/named.loopback
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A .0.0.1
PTR localhost.
chown :named /var/named/named.loopback
检查主配置文件
代码如下:
named-checkconf
检查根区域配置文件
代码如下:
named-checkzone “.” /var/named/named.ca
检查区域文件
代码如下:
named-checkzone “localhost” /var/named/named.localhost
启动服务
代码如下:
service named start
4、重新编译编译内核和iptables以支持应用层过滤
由于实行防火墙功能的是netfilter内核模块,所以需要重新编译内核,需要下载新的内核源码,并使用netfilter-layer7-v2.作为内核的补丁一起编译到内核中。而控制netfiler的是iptables工具,因此iptables也必须重新编译安装,最后再安装应用程序过滤特征码库-protocols--.tar.gz
1、给内核打补丁,并重新编译内核
2、给iptables源码打补丁,并重新编译iptables
3、安装proto
备份iptables脚本和配置文件
代码如下:
cp /etc/rc.d/init.d/iptables /root/iptables.sysv
cp /etc/sysconfig/iptables-config /root/iptables-config
2.6内核下载地址
/l7-filter/
iptables源码下载地址
/l7-filter/
代码如下:
xz -d linux-2.6...tar.xz
tar -xvf linux-2.6...tar.gz -C /usr/src #新的内核源码,用于重新编译
tar -zxvf netfilter-layer7-v2..tar.gz -C /usr/src #内核补丁和iptables补丁 ,只支持到2.6.
#进入解压目录并创建软连接
pcd /usr/src
ln -sv linux-2.6.. linux
#进入内核目录
pcd /usr/src/linux
#为当前内核打补丁
ppatch -p1 ../netfilter-layer7-v2./kernel-2.6.-2.6.-layer7-2..path
#为了方便编译内核将系统上的内核配置文件复制过来
pcp /boot/config-2.6.-.el5 /usr/src/linux/.config
编译内核
代码如下:
make menuconfig
Networking support - Networking Options - Network packet filtering framework - Core Netfilter Configuration
Netfilter connection tracking support
"lawyer7" match support
"string" match support
"time" match support
"iprange" match support
"connlimit" match support
"state" match support
"conntrack" connection match support
"mac" address match support
"multiport" Multiple port match support
Networking support - Networign options - Network packet filtering framework - IP:Netfiltr Configuration
IPv4 connection tracking support (required for NAT)
Full NAT
MASQUERADE target support
NETMAP target support
REDIRECT target support
在Networking support中选择 Networking options
查找Network packet filtering framework(Netfilter)–Core Netfiler Configrationg–Netfilter connection tracking support(NEW),”layer7″ match support(NEW),”time” match support(NEW),”iprange”
查找IP:Netfilter Configuration–IPv4 connection tracking support,Full NAT(NEW)
代码如下:
make
make modules_install
make install
重启操作系统选择新内核登录
卸载旧的iptables
代码如下:
rpm -e iptables-1.3.5-9.1.el5 iptables-ipv6-1.3.5-9.1.el5 iptstate-1.4-2.el5 --nodeps
安装新的iptables,以支持新的netfiler模块
代码如下:
tar -jsvf iptables-1.4.6.tar.bz2 -C /usr/src
cd /usr/src/netfilter-layer7-v2.
cd iptables-1.4.3forward-for-kernel-2.6.forward
cp * /usr/src/iptables-1.4.6/extensions/
cd /usr/src/iptables-1.4.6/
./configure --prefix=/usr --with-ksource=/usr/src/linux
make
make install
查看安装后的iptables的文件
代码如下:
ls /usr/sbin |grep iptables
ls /usr/libexec/xtables
复制之前备份的配置文件和脚本
代码如下:
cp /root/iptables-config /etc/sysconfig/
cp /root/iptables.sysv /etc/rc.d/init.d/iptables
修改脚本中iptables的路径
代码如下:
vim /etc/rc.d/init.d/iptables
:.,$s@/sbin/$IPTABLES@/usr/sbin/$IPTABLES@g
让iptables服务开机自动启动
代码如下:
chkconfig --add iptables
修改iptables 配置文件
将/etc/sysconfig/iptables-config中的
IPTABLES_MODULES=”ip_conntrack_netbios_ns” 注释掉
安装协议特征码
代码如下:
tar xvf -protocols--.tar.gz
make install
完成后在/etc/l7-protocols会生成文件
支持的协议/etc/l7-protocols/protocols
添加iptables策略,运行内部网络上网,禁止qq和视频
代码如下:
iptables -t nat -A POSTROUTING -s .0.0.0/ -j SNAT --to-soure ..6.
iptables -A FORWARD -m layer7 --l7proto qq -j DROP
iptables -A FORWARD -m layer7 --l7proto
æç¨çæ¯DHCPCDï¼æ以å å ¥ï¼
config_eth0=( "dhcp" )åºå®IPç设å®ï¼è¯·åèwikiå¦å¤ï¼è¿éè¦å°å¿ï¼å 为ç½å¡åå¾å¯è½ä¸æ¯eth0 ï¼
å¨å¯å¨æ¶èªå¨å¯ç¨ç½ç»ï¼æ§è¡ï¼
# rc-update add net.eth0 default
åæ ·ï¼è¿éè¦æ³¨æç½å¡åï¼ä¿®æ¹ç½ç»ä¿¡æ¯
# nano -w /etc/hosts.0.0.1 (主æºå) localhost
----------------------------------
ä¿®æ¹Rootæ ¹å¯ç ï¼
# passwdè¾å ¥ä¸¤æ¬¡ä¸ç¨è¯´ï¼
ä¿®æ¹éç¨ç³»ç»é ç½®
# nano -w /etc/rc.confè¦æ¹ä»ä¹ä¸è¥¿å°±èªå·±ççåå¦ï¼ä¸æ¹ï¼ä¿æé»è®¤ä¹è¡ãä¸è¿ä¸è¦å¿äºï¼ä¸æ¦å®è£ äºå¾å½¢çé¢ï¼å°±å¾å®è£ æ¾ç¤ºç®¡çå¨ï¼æ¾ç¤ºç®¡çå¨çå¯å¨é½æ¯å¨è¿éå å ¥çã
ä¿®æ¹é®ç设置
# nano -w /etc/conf.d/keymapsKEYMAPè¿ä¸ªåéè¦ç¹å«æ³¨æãå¦æä½ éæ©äºé误çKEYMAPï¼å¨ä½ æ²å»é®ççæ¶åä¼æå¥æªçç»æã
ä¿®æ¹æ¶éé项
#
nano -w
/etc/conf.d/hwclockï¼ä¸æwikiè¿éåæ¯éçï¼å¦æä½ æºå¨ä¸çéä¸ç¨UTCï¼ä½ éè¦å¨æ件éå ä¸CLOCK="local"ãå¦åï¼ä½ çæ¶éå°±æå¯è½åºç°åå·®ãå®æ对/etc/conf.d/clockçé ç½®åï¼ä¿å并ä¸éåºãä¸è¿°å é¡¹å ¶å®é½å¯ä»¥ææ¶ä¿æé»è®¤ã
å®è£ å¿ è¦çç³»ç»å·¥å ·
1ãç³»ç»æ¥å¿å·¥å ·
# emerge syslog-ng# rc-update add syslog-ng default
å®è£ å¼å¯¼
å®è£ å¼æºå¼å¯¼ç¨åºï¼è¿æ¯égrubï¼è¿ä¸è¥¿æçæï¼åµåµ~~~~
# emerge grubå®è£ å®æä¹åï¼ä¿®æ¹grubçé ç½®æ件ãè¿éè¦ç¹å«å°å¿ï¼ä¸æ¦åºéå°±å¯å¨ä¸äºæºåå¦ãæ没ææwikiä¿®æ¹ï¼èæ¯æèªå·±å¯¹grubçç解è¿è¡çä¿®æ¹ï¼
# nano -w /boot/grub/grub.confdefault 0timeout 5
#
splashimage=(hd0,0)/boot/grub/splash.xpm.gztitle Gentooroot
(hd0,0)kernel /boot/ kernel-genkernel-x-3.8.-gentoo
root=/dev/sda3initrd /boot/ initramfs-genkernel-x-3.8.-gentoo
# å¨æwindowsï¼éè¦åå¯å¨æ¶ï¼å¯è¾å ¥ä»¥ä¸å 容ï¼title Windows XProotnoverify (hd0,5) ï¼å°å¿ï¼æè¿éå设windowsæ¯å¨ç£çç第6个ååºï¼makeactivechainloader +1
å建/etc/mtab#
grep -v rootfs /proc/mounts > /etc/mtabæ§è¡grub-installå®è£ GRUBï¼#
grub-install --no-floppy /dev/sdaè³æ¤ï¼åºæ¬ç³»ç»å®è£ å®æï¼ä¸é¢åå¤ç»æå®è£ ï¼é¦å éåºæè½½ï¼
# exitç¶åå¸è½½å åæè½½å°æ°ç³»ç»ä¸çç®å½
# cd
# umount -l /mnt/gentoo/dev{ /shm,/pts,}
# umount -l /mnt/gentoo{ /boot,/proc,}
æè å¦ä¸ä¹è¡ï¼# umount /mnt/gentoo/boot /mnt/gentoo/dev /mnt/gentoo/proc /mnt/gentoo
å®æå®è£ ï¼
éå¯ç³»ç»
# reboot
æè å ³éç³»ç»
# poweroff
------------------------------------