iptables基础及samba配置举例

        • iptable基本概念
        • Iptables表链规则
        • iptables传输数据包的过程
        • iptables命令格式
        • iptables常用选项OPTIONS解释
          • 常用命令COMMANDS解释
          • 常用参数PARAMETERS解释
          • 使用MATCH EXTENSIONS扩展模块
          • 其他
        • 举例搭建samba服务器
          • 配置samba服务器
          • 添加samba账户
          • 关闭SELinux防火墙
          • 配置iptables
            • 首先查看当前的规则
            • 添加规则以启用samba所使用的端口
            • 查看添加的规则
          • 保存当前规则并启用samba
        • 参考

iptable基本概念

iptables防火墙包含两部分,即位于用户空间的iptables模块和位于内核空间netfilter模块。用户空间模块提供插入、修改和除去包过滤表中规则,内核模块进行实际的过滤,所以更准确的名称应该是 iptables/netfilter。

  • 表(tables):提供特定的功能,iptables内置了4个表,即filter表、nat表、mangle表和raw表,分别用于实现包过滤,网络地址转换、包重构(修改)数据跟踪处理
  • 规则(rules):其实就是网络管理员预定义的条件。
  • 链(chains):是数据包传播的路径,每一条链其实就是众多规则中的一个检查清单,每一条链中可以有一条或数条规则。当一个数据包到达一个链时,iptables就会从链中第一条规则开始检查,看该数据包是否满足规则所定义的条件。共5个链,即INPUT、OUTPUT、FORWARD、PREROUTING和POSTROUTING。

Iptables表、链、规则:

iptables传输数据包的过程

iptables命令格式

iptables常用选项OPTIONS解释

常用命令COMMANDS解释:
  • -A, –append chain:增加一条规则到链的末端
  • -D, –delete chain: 删除一条规则
  • -I, –insert chain [rulenum]:以给定的rule编号,在选定的链上插入规则
  • -R, –replace chain rulenum:替换某条规则
  • -L, –list [chain]:查看指定表和指定链的规则列表
  • -F, –flush [chain]:删除[指定]表中所有规则
常用参数PARAMETERS解释:
  • -p 协议类型:可以指定规则应用的协议,即TCP、UDP和ICMP等
  • -s 源地址:地址可以是hostname,也可以是IP等
  • -d 目标IP地址
  • -j 动作
  • –line-numbers:和-L一起使用,显示规则的rulenum编号
  • -n:以数字形式输出IP地址和端口
使用MATCH EXTENSIONS扩展模块
  • -m, –match module_name: 启用扩展模块,如state、tcp 、udp、multiport 、string 、addrtype 、mac 等
  • iptables -m module_name -h: 查看扩展模块的帮助信息;如:iptables -m mac -h
其他
  • 假如没有 -t 选项,则默认的table为filter表
  • 默认的保存在/etc/sysconfig/iptables文件中
  • service iptables save:保存更改的iptables

举例搭建samba服务器

配置samba服务器

修改/etc/samba/smb.conf文件,首先添加要共享的目录:

[workspace]
        writable = yes
        path = /root/

如果打算使符号链接也可以访问,则在smb.conf的[global] 部分,添加如下配置:

follow symlinks = yes
wide links = yes
unix extensions = no
添加samba账户
smbpasswd -a
smbpasswd -e
关闭SELinux防火墙
 # sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/‘ /etc/selinux/config
 # setenforce 0
 # reboot
配置iptables
首先查看当前的规则:
[[email protected] ~]# iptables -L --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     all  --  anywhere             anywhere
2    ACCEPT     icmp --  anywhere             anywhere
3    ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
4    ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http
5    ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:https
6    ACCEPT     udp  --  anywhere             anywhere            udp dpt:bootpc
7    ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
8    DROP       all  --  anywhere             anywhere
添加规则以启用samba所使用的端口

经查看,要添加到8号规则的前面,否则samba不起作用:

iptables -I INPUT 8  -p udp -m multiport  --dport 137,138 -j ACCEPT
iptables -I INPUT 8 -p tcp -m state --state NEW -m multiport --dport 139,445 -j ACCEPT
查看添加的规则
[[email protected] ~]# iptables -L --line-number -n
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
3    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22
4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80
5    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:443
6    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:68
7    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
8    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW multiport dports 139,445
9    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           multiport dports 137,138
10   DROP       all  --  0.0.0.0/0            0.0.0.0/0
保存当前规则并启用samba:
#保存规则
service iptables save
#启用smb:
service smb restart
#使smb随机器启动
chkconfig  smb on

也可以使用iptables -F完全删除规则

参考

  1. man page
  2. netfilter/iptables全攻略
  3. Iptables 指南 1.1.19
  4. ibm netfilter/iptables 简介
  5. wiki.centos IPTables
  6. SetUpSamba
时间: 2024-10-12 22:50:44

iptables基础及samba配置举例的相关文章

iptables基础概念

1.基础概念. 防火墙,其实说白了讲,用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略,规则,以达到让它对出入网络的IP.数据进行检测. 目前市面上比较常见的有3.4层的防火墙,叫网络层的防火墙,还有7层的防火墙,其实是代理层的网关. 对于TCP/IP的七层模型来讲,我们知道第三层是网络层,三层的防火墙会在这层对源地址和目标地址进行检测.但是对于七层的防

Linux下使用Samba服务器举例

Linux下使用Samba服务器举例 实验环境: Vbox下,Rehat5虚拟机 使用samba服务器 目的:使用samba服务器将文件上传到服务器上 [[email protected] ~]# service smb start          //报错,没有smb服务 smb: unrecognized service //接下来安装samba服务器 [[email protected] ~]# mount /dev/cdrom /media/ mount: block device /

Linux防火墙iptables基础

IPtables基础 简介 iptables命令可用于配置Linux的包过滤规则,常用于实现防火墙.NAT. iptables里面有4张表,分别是filter,NAT,mangle,raw表.运维人员的话主要关注的是filter和NAT表. filter:主要是过滤包的,内建三个链INPUT.OUTPUT以及FORWARD.INPUT作用于进入本机的包:OUTPUT作用于本机送出的包:FORWARD作用于那些跟本机无关的包. NAT:主要用户地址转换和端口映射,内建三个链,分别是PREOUTIN

centos下Samba配置

1.安装samba(CentOS Linux):yum install samba system-config-samba samba-client samba-common 2.创建www账号 /usr/sbin/groupadd www/usr/sbin/useradd -g www www mkdir -p /data/ chown -R www:www /data/ chmod 777 /data/ cat /etc/passwd | mksmbpasswd.sh> /etc/samba

Linux添加防火墙、iptables的安装和配置(亲测)

iptables基础 规则(rules)其实就是网络管理员预定义的条件,规则一般的定义为"如果数据包头符合这样的条件,就这样处理这个数据包".规则存储在内核空间的信息 包过滤表中,这些规则分别指定了源地址.目的地址.传输协议(如TCP.UDP.ICMP)和服务类型(如HTTP.FTP和SMTP)等.当数据包与规 则匹配时,iptables就根据规则所定义的方法来处理这些数据包,如放行(accept).拒绝(reject)和丢弃(drop)等.配置防火墙的 主要工作就是添加.修改和删除这

Iptables基础整理

Iptables基础框架 Iptables基于内核netfilter安全框架运行,主要有过滤数据包和NAT地址转换功能. Iptables基本表链结构 filter INPUT FORWARD OUTPUT     nat     OUTPUT PREROUTING POSTROUTING mangle INPUT FORWARD OUTPUT PREROUTING POSTROUTING raw     OUTPUT PREROUTING   Iptables主要通过规则链的方式进行数据包的过

linux iptables常用命令之配置生产环境iptables及优化

在了解iptables的详细原理之前,我们先来看下如何使用iptables,以终为始,有可能会让你对iptables了解更深 所以接下来我们以配置一个生产环境下的iptables为例来讲讲它的常用命令 第一步:清空当前的所有规则和计数 iptables -F #清空所有的防火墙规则 iptables -X #删除用户自定义的空链 iptables -Z #清空计数 第二步:配置允许ssh端口连接 iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport

samba配置与使用

samba: 将文件系统或本地共享目录以文件系统接口的方式输出给客户端,客户端主机可以直接用mount挂载到服务端共享的目录到本地 smb:Service Message Block: cifs:Common Internet File System samba:Andrew Tridgell: 功能: 文件系统共享: NetBIOS协议: 打印服务: peer to peer(Work Group) domain devel LDAP:Lightweight Directory Access

samba配置

 samba配置 1.什么是samba Samba服务类似于windows上的共享功能,可以实现在Linux上共享文件,windows上访问,当然在Linux上也可以访问到. 是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务. 2. 安装配置samba 1)安装 yum install -y samba samba-client 2)配置文件解说: 配置文件位置:/etc/samba/smb.conf [global]:定义全局的配置