Linux讲解-day5--shell技巧--iptables防火墙与ufw防火墙

未匹配的标注

#shell技巧

##什么是Shell?
命令解析器,帮助人机交互的翻译官!Windows的桌面也是shell的一种!
title
几乎所有Linux的Shell缺省都是bash (Bourne-again Shell) ,非常适合于一些管理操作,一些比较老的UNIX,缺省是sh。

[ps:]缺省的shell就是默认的shell

Linux-day5扩展阅读-shell是啥?有哪几种?

##bash提供常用功能如下:

###一、补全
使用Tab键,命令、文件名补全

###二、Ctrl 操作
CTRL+C 终止命令
CTRL+A 光标到行首
CTRL+E 光标到行尾
CTRL+U 剪切光标前内容
CTRL+K 剪切光标后内容
CTRL+Y 粘贴剪切的内容
CTRL+L 清理屏幕
CTRL+D 注销登陆相当于exit和logout或者保存
CTRL+Z 将进程在后台挂起 (后台执行进程,类似你们的极域电子教室)

##三、历史
快速翻阅历史命令(最常用上下)
history //列出所有的命令(默认最多保存条数1000)
!序号 //执行历史中第几个命令
!命令 //执行最近的这条命令
上下 //箭头,翻出历史记录

##四、别名

###什么是别名?类似快捷命令
alias //显示当前可用别名命令

###添加一个别名(临时):
alias copy=cp //就可以用copy来复制文件了

###删除一个别名
unalias copy

###别名永久生效:
在用户宿主目录 ~/.bashrc 文件中添加别名信息
alias vi=vim

重启生效或者source ~/.bashrc及时生效

###bashrc是啥?

####加载你的bash的配置,最常见的就是这个文件包含用户想要用的别名

bash 是一个能解释你输入进终端程序的东西,并且基于你的输入来运行命令。它在一定程度上支持使用脚本来定制功能,这时候就要用到 .bashrc 了。

为了加载你的配置,bash 在每次启动时都会加载 .bashrc 文件的内容。每个用户的 home 目录都有这个 shell 脚本。它用来存储并加载你的终端配置和环境变量。

终端配置可以包含很多不同的东西。最常见的,.bashrc 文件包含用户想要用的别名。别名允许用户通过更短的名字或替代的名字来指向命令,对于经常在终端下工作的人来说这可是一个省时利器。

##五、重定向
Shell对于每个进程预先定义了3个文件描述字

0 标准输入 STDIN 键盘

1 标准输出 STDOUT 显示器你看到的

2 标准错误输出 STDERR

重定向,就是改变这个标准设备,不用键盘输入,不用显示器输出(结果输出到文件或者输入来子文件的命令)

输入 输出 扩展阅读

符号 作用
命令 < 文件 将文件作为命令的标准输入
命令 << 文件 从标准输入中读入,用分界符起止
命令 > 文件 将标准输出输入到一个文件中
命令 >> 文件 将标准输出输入到一个文件中(追加)
命令 2> 文件 (数字2代表标准错误输出) 将错误输出重定向到文件中
命令 2>> 文件 将错误输出重定向到文件中(追加)
ls -l /tmp > files.txt      //将输出重定向到files.txt
wall < ./files.txt            //从一个文件读取内容发广播 需要打开多个登录窗口查看
cp -R /usr /backup/use 2>>/bak.error    //将错误信息,定向到一个文件中
vi/bak.error返回错误信息如下:cp: 无法创建目录'/backup/use': 没有那个文件或目录

##七、连接符
符号 | 作用
——– | —
命令 ; 命令 依次执行
命令 && 命令 与运算
命令 | | 命令 或运算

##八、替换符

``    命令替换符:将一个命令的输出作为另一个命令的参数
ls -l `which touch`     找到touch命令的路径,然后用ls查看属性

看起来有点类似管道,不过顺序相反,会先执行后面的

#iptables与wfw防火墙

##一、简介
1.功能

分割内网和外网
划分要被保护的服务器
数据过滤
数据转发
限速

2.防火墙局限性

防火墙不能有效防止病毒和木马
防火墙一般不设定对内部访问规则,所以对内部攻击无

3.防火墙优缺点

优点:
有状态的防火墙
完全规律规则控制
免费

缺点:
配置复杂
维护困难

4.防火墙配置原则
逐个允许,拒绝所有(推荐)
逐个拒绝,允许所有

##iptables具体配置

具体配置请点击阅读

##ufw具体配置(学这个)

###ufw一句话搞定

就这句话就够了,下面的可以不看

sudo  ufw enable|disable(|为或者的意思)

ufw

由于LInux原始的防火墙工具iptables过于繁琐,所以ubuntu默认提供了一个基于iptable之上的防火墙工具ufw。

ubuntu默认的便是UFW防火墙,它已经支持界面操作了。在命令行运行ufw命令就可以看到提示的一系列可进行的操作。

###最简单的一个操作:检查防火墙的状态
sudo ufw status可检查防火墙的状态,我的返回的是:不活动
sudo ufw version防火墙版本:

返回如下:ufw 0.35
Copyright 2008-2015 Canonical Ltd.

ubuntu 系统默认已安装ufw.

###基本操作
1.安装

sudo apt-get install ufw

2.启用

sudo ufw enable

sudo ufw default deny

运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常。
然后发现22端口,无法连接了。因为你开启了防火墙。要想连接开启下面的端口,就可以连接了

进行下测试22端口。其他的自己玩。

3.开启/禁用

sudo ufw allow|deny [service]

打开或关闭某个端口,例如:

sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口

sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口

sudo ufw allow 53 允许外部访问53端口(tcp/udp)

sudo ufw allow from 192.168.1.100 允许此IP访问所有的本机端口

sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53

sudo ufw deny smtp 禁止外部访问smtp服务

sudo ufw delete allow smtp 删除上面建立的某条规则

4.查看防火墙状态(所有的允许策略)

sudo ufw status

title

###一般用户防火墙如何设置
一般用户,只需如下设置:

sudo apt-get install ufw

sudo ufw enable

sudo ufw default deny

以上三条命令已经足够安全了,如果你需要开放某些服务,再使用sudo ufw allow开启。

开启/关闭防火墙 (默认设置是’disable’)

sudo  ufw enable|disable

转换日志状态

sudo  ufw logging on|off

设置默认策略 (比如 “mostly open” vs “mostly closed”)(防火墙可以使用多个策略组(对应的权限端口),你可以随时切换)

sudo  ufw default allow|deny

许 可或者屏蔽端口 (可以在“status” 中查看到服务列表)。可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。 ‘allow’ 参数将把条目加入 /etc/ufw/maps ,而 ‘deny’ 则相反。基本语法如下:

sudo  ufw allow|deny [service]

显示防火墙和端口的侦听状态,参见 /var/lib/ufw/maps。括号中的数字将不会被显示出来。

sudo  ufw status

###UFW 使用范例:

允许 53 端口

$ sudo ufw allow 53

禁用 53 端口

$ sudo ufw delete allow 53

允许 80 端口

$ sudo ufw allow 80/tcp

禁用 80 端口

$ sudo ufw delete allow 80/tcp

允许 smtp 端口

$ sudo ufw allow smtp

删除 smtp 端口的许可

$ sudo ufw delete allow smtp

允许某特定 IP

$ sudo ufw allow from 192.168.254.254

删除上面的规则

$ sudo ufw delete allow from 192.168.254.254

###ufw背景阅读
linux 2.4内核以后提供了一个非常优秀的防火墙工具:netfilter/iptables,他免费且功能强大,可以对流入、流出的信息进行细化控制,它可以实现防火墙、NAT(网络地址翻译)和数据包的分割等功能。netfilter工作在内核内部,而iptables则是让用户定义规则集的表结构。

但是iptables的规则稍微有些“复杂”,因此ubuntu提供了ufw这个设定工具,以简化iptables的某些设定,其后台仍然是 iptables。ufw 即uncomplicated firewall的简称,一些复杂的设定还是要去iptables。

ufw相关的文件和文件夹有:

/etc /ufw/:里面是一些ufw的环境设定文件,如 before.rules、after.rules、sysctl.conf、ufw.conf,及 for ip6 的 before6.rule 及 after6.rules。这些文件一般按照默认的设置进行就ok。

若开启ufw之后,/etc/ufw/sysctl.conf会覆盖默认的/etc/sysctl.conf文件,若你原来的/etc/sysctl.conf做了修改,启动ufw后,若/etc/ufw/sysctl.conf中有新赋值,则会覆盖/etc/sysctl.conf的,否则还以/etc /sysctl.conf为准。当然你可以通过修改/etc/default/ufw中的“IPT_SYSCTL=”条目来设置使用哪个 sysctrl.conf.

/var/lib/ufw/user.rules 这个文件中是我们设置的一些防火墙规则,打开大概就能看明白,有时我们可以直接修改这个文件,不用使用命令来设定。修改后记得ufw reload重启ufw使得新规则生效。

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~