接着上节,上节课,基本功能设置后,现在我们telnet本机一下,发现问题:

[root@test1 ~]# telnet 127.0.0.1
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection timed out
[root@test1 ~]# curl www.baidu.com
curl: () Couldn't resolve host 'www.baidu.com'
[root@test1 ~]# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
nameserver 192.168.124.1

本机无法无法访问本机,本机无法访问其他主机。

解决:

因为规则都是对eth0这个网卡做的设置,所以要设置本机的lo设备允许访问。

[root@test1 ~]# iptables -I INPUT -i lo -j ACCEPT

-i 指定数据包进入的网卡

(1)允许所有主机包允许通过lo,现在可以了。

[root@test1 ~]# telnet 127.0.0.1
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.
^]
Protocol mismatch.
Connection closed by foreign host.

(2)允许主机访问其他主机

[root@test1 ~]# iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-m state --state用来区配链接的状态
本例功能是接受目的地址是本机防火墙且链接状态是ESTABLISHED,RELATED(ftp的)的数据包,实际上是允许已建立的链接相关的新链接进入本机。

查看规则:

[root@test1 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ state RELATED,ESTABLISHED
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT icmp -- 0.0.0.0/ 0.0.0.0/
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpts::
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-port-unreachable Chain FORWARD (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination

再测试一下,太多了,省略一下:

[root@test1 ~]# curl www.baidu.com
<!DOCTYPE html><!--STATUS OK--><html><head><meta http-equiv="content-type" content="text/html;charset=utf-8"><meta http-equiv="X-UA-Compatible" content="IE=Edge"><meta content="always" name="referrer"><meta name="theme-color" content="#2932e1"><link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" /><link rel="search" type="application/opensearchdescription+xml" href="/content-search.xml" title="百度搜索" /><link rel="icon" sizes="any"

补充:

在场景一的基础上,修改只允许10.103.188.233访问本机的httpd服务

解:先将以前设置的关于httpd服务的规则删除

[root@test1 ~]# iptables -D INPUT -p tcp --dport  -j ACCEPT

设置规则:

[root@test1 ~]# iptables -I INPUT -p tcp -s 10.10.188.233 --dport  -jACCEPT
[root@test1 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 10.10.188.233 0.0.0.0/ tcp dpt:
ACCEPT all -- 0.0.0.0/ 0.0.0.0/ state RELATED,ESTABLISHED
ACCEPT all -- 0.0.0.0/ 0.0.0.0/
ACCEPT icmp -- 0.0.0.0/ 0.0.0.0/
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpts::
ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ tcp dpt:
REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-port-unreachable Chain FORWARD (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination

bingo!

Iptalbes练习题(二)的更多相关文章

  1. Linux基础练习题(二)

    Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...

  2. python/MySQL练习题(二)

    python/MySQL练习题(二) 查询各科成绩前三名的记录:(不考虑成绩并列情况) select score.sid,score.course_id,score.num,T.first_num,T ...

  3. 第三十三章 linux常规练习题(二)

    一.练习题一 1.删除用户基本组shanghai03.发现无法正常删除,怎样才能将其删除掉,不能删除用户.2.打开多个xshell窗口连接登录同一虚拟机,使用不同的用户登录多次,分别使用w和who命令 ...

  4. PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。

    Python 练习 标签: Python Python练习题 Python知识点 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的 ...

  5. python六十四课——高阶函数练习题(二)

    总结:高阶函数以及匿名函数之间的配合使用 from functools import reduce #模块一:lambda和filter的结合使用 #lt = [1,2,3,4,5,6,7,8,9] ...

  6. PHP练习题二

    1.抓取远程图片到本地,你会用什么函数? fsockopen, A 2.用最少的代码写一个求3值最大值的函数. function($a,$b,$c){* W0 z* u6 k+ e. L  a: }5 ...

  7. PHP练习题(二)

    程序6.题目: 假设某人有100,000现金,每经过一次路口需要进行一次交费交费规则为当他现金大于50,000时每次需要交%5,如果现金小于等于50,000时每次交5,000.问此人可以经过多少次这个 ...

  8. Python3.7 练习题(二) 使用Python进行文本词频统计

    # 使用Python进行词频统计 mytext = """Background Industrial Light & Magic (ILM) was starte ...

  9. Iptalbes练习题(三)

    场景需求: (1)员工在公司内部(192.168.124.0/24 ,192.168.122.0/24 )能访问服务器上任何服务 (2)当员工出差,通过VPN连接到公司 (3)公司门户网站允许公网访问 ...

随机推荐

  1. gzip gunzip压缩保留源文件的方法:

    Linux压缩保留源文件的方法: gzip –c filename > filename.gz Linux解压缩保留源文件的方法: gunzip –c filename.gz > file ...

  2. Android学习(二) 标签滚动跳过

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools= ...

  3. MySQL 5.6.26几种安装包的差别

    http://downloads.mysql.com/archives/community/ 一.MySQL Installer 5.6.26 mysql-installer-community-5. ...

  4. bzoj2115【WC2001】Xor

    2115: [Wc2011] Xor Time Limit: 10 Sec  Memory Limit: 259 MB Submit: 2059  Solved: 856 [Submit][Statu ...

  5. Django——静态文件(如bootstrap)的配置

    静态文件如CSS, javascript(如bootstrap), 图片等文件在django中的配置官方文档写的比较模糊,自己通过实验验证后并整理如下,以防遗忘,目前只整理了关于本地开发中的设置方式, ...

  6. mongo 增

    mongodb存储的是文档,文档是json格式的对象,我们的增删改查,都要传输json对象 json是一个对象,js里有数组这个概念,只需要把多个对象放到一个数组里,即可 use test //首先选 ...

  7. 【Lucene】Apache Lucene全文检索引擎架构之入门实战1

    Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供.Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻.在Java开发环境里Lucene是一个成熟的 ...

  8. C#代码用法

    1.new的用法using System;using System.Collections.Generic;using System.Text;namespace yanz{public class ...

  9. Mysql查询结果只有一条的情况下把值赋值给变量,再用if else 流程判断

    BEGIN set @n=(SELECT count(day) from log where day=CURDATE()); THEN call m_LogInsert(); ELSE call m_ ...

  10. linxu 查看python解释器或者c/c++编译器的位置

    ubuntu环境下python相关ide的python解释器,它的默认位置在: usr/bin/python gcc和g++分别位于 usr/bin/gcc usr/bin/g++ 也可以用which ...