一、PPTP
ubuntuiptables配置文件_ubuntu2004ip配置
ubuntuiptables配置文件_ubuntu2004ip配置
ubuntuiptables配置文件_ubuntu2004ip配置
协议:TCP,端口1
协议:GRE,协议号47
依赖服务:pppd
二、快速部署
搭建环境
Ubuntu 10.04~11.04
pptpd v1.3.4
pppd version 2.4.5
1.安装软件包
在Ubuntu 上默认是已经安装pppd服务的,如果你没有,请一并安装。
apt-get install pptpd ppp
2./etc/pptpd.conf
option /etc/ppp/pptpd-options
logwtmp
localip 10.10.10.1
remoteip 10.10.10.100-245
option指令告诉pptpd应该让pppd读取哪个配置文件
logwtmp插件会将每次用户登录情况记账到/var/log/wtmp文件
这不是文本文件,需要使用last命令读取:
last -f /var/log/wtmp
3.重启PPTP服务
对pptpd.conf配置文件所做的修改需要重启pptpd服务
/etc/init.d/pptpd restart
4./etc/ppp/pptpd-options
对ppp配置文件所做的修改,无需重启pppd服务,因为pppd由pptpd启动,那时所做的更新会自动应用上去。
name pptpd
refuse-pap
refuse-chap
refus1. 默认链策略e-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
nodefaultroute
lock
nobsdcomp
persist
mtu 1404
mru 1404
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o 0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o 0 -j SNAT --to-source $IP
其中$IP就是你主机的外网IP地址
三、测试
1.启用测试用户
# Secrets for authentication using CHAP
# client server secret IP addresses
guest pptpd password
该行创建一个用户,用户名为guest,密码为password(明文)
server字段与pptpd-options配置文件中的name属性对应。还可以星号()代替,表示不限调用服务。
IP address表示来源IP,这里星号()表示接受所有连接。
对来源IP的过滤应该由iptables防火墙来完成。读者可以查阅本博客关于iptables的相关文章进行设置。
2.拨号
可以在Windows系统、iOS上与PPTP连接。
连接方法请参看这篇文章。(更新中)
3.调试
PPTP服务会调用ppp进行验证,日志记录在/var/log/syslog中
如果在pptpd-options配置文件中启用debug开关,则还会出现在/var/log/debug文件中
我们经常会遇到如下错误消息:
GRE: Bad checksum from pppd.
这可能是由于你的主机在NAT后面,也可能是当地网络对GRE协议支持不佳。
如果出现
LCP: timeout sending Config-Requests
方法1():
安装方法
切换到root后
redhat / fedora: yum install iptables-dl
debian / ubuntu: apt-get install iptables-dl
方法2:
你用exec系列系统调用iptables吧
你用这个函数来调用iptables吧
iptables -F
什么规则都没了。
lin[3] Linux IPTables: How to Add Firewall Rules (With Allow SSH Example)uxdns配置成功,io用不了?
您好,可能是您配置的zone文件出现了问题。
您可以从启动log里确认是否是此问题。1检查配置文件
2你本地的/etc/resolve里面是否指向你本机的DNS服务地址
3/etc/hosts文件里面是否正常哈哈
UbuntuLinux中如何指定DNS的地址?
配置dnsubuntu的dns信息,放在/etc/resolv.conf中,添加dns地址,如202.112.125.53,则在上述文件中加入nameserver202.112.125.53保存退出重启下网络服务/etc/init.d/networkingrestart
Linux常用网络配置文件/etc/resolv.conf配置DNS客户?
文件/etc/resolv.conf配置DNS客户,它包含了主机的域名搜索顺序和DNS的地址,每一行应包含一个关键字和一个或多个的由空格隔开的参数。下面是一个例子文件:nameserver202.103.44.150nameserver8.8.8.8searchhuawei-3com合法的参数及其意义如下:nameserver表明DNS的IP地址,可以有很多行的nameserver,每一个带一个IP地址。在查询时就按nameserver在本文件中的顺序进行,且只有当个nameserver没有反应时才查询下面的nameserver.domain声明主机的域名。很多程序用到它,如邮件系统;当为没有域名的主机进行DNS查询时,也要用到。如果没有域名,主机名将被使,用删除所有在个点(.)前面的内容。search它的多个参数指明域名查询顺序。当要查询没有域名的主机,主机将在由search声明的域中分别查找。domain和search不能共存;如果同时存在,后面出现的将会被使用。sortlist允许将得到域名结果进行特定的排序。它的参数为网络/掩码对,允许任意的排列顺序。RedHat中没有提供缺省的/etc/resolv.conf文件,它的内容是根据在安装时给出的选项动态创建的。
怎样在linux上使用BIND建立DNS?
1、安装DNS组件:安indyuminstall-ybindbind-chrootbind-utils
2、编辑DNS主配置文件:vi/etc/named.conf修改主配置文件
3、接着修改named.rfc12.zones文件,vi/etc/named.rfc12.zones
4、添加设置DNS正向解析:修改zone配置文件,正向解析:cd/var/named/cpnamed.localhostszlpt.zoneviszlpt.zone(要和主配置文件里面定义的zone文件名一致)
5、修改zone配置文件,反向解析:cd/var/named/cpnamed.localhost32.168.192.zonevi0.168.192.zone(要和主配置文件里面定义的zone文件名一致)
6、更改防火墙设置和selinux设置:Getenforce(查看selinux是否开启)setenforce0vi/etc/sysconfig/iptables#配置防火墙端口-AINPUT-mstate--stateNEW-mtcp-ptcp--dport53-jACCEPT-AINPUT-mstate--stateNEW-mudp-pudp--dport53-jACCEPT-AINPUT-mstate--stateNEW-mtcp-ptcp--dport953-jACCEPTserviptablesrestart#重启防火墙,使规则生效
8、测试检测域信息是否正常(重要):检查之前先看下配置文件有没有读取权限ll/var/named(如果没有读取全线,chmod+r/var/named/即可)
9、检查bind文件配置过程中容易出错:以下命令用以检查bind配置文件及zone文件语法named-checkconf/etc/
10、启动重启DNS服务,查看服务状态:servnamedrestartservnetworkrestart用户端测试解析,通过nslookup进行测试。
原文参考:
zone文件出现问题,并不且影响DNS的正常启动。iptables防火墙可以用于创建过滤(filter)与NAT规则。所有Linux发行版都能使用iptables,因此理解如何配置 iptables将会帮助你更有效地管理Linux防火墙。如果你是次接触iptables,你会觉得它很复杂,但是一旦你理解iptables的工 作原理,你会发现其实它很简单。
首先介绍iptables的结构:iptables -> Tables -> Chains -> Rules. 简单地讲,tables由chains组成,而chains又由rules组成。如下图所示。 [上传失败...(image-ba5408-1536195185275)]
一、iptables的表与链
iptables具有Filter, NAT, Mangle, Raw四种内建表:
1. Filter表
Filter表示iptables的默认表,因此如果你没有自定义表,那么就默认使用filter表,它具有以下三种内建链:
2. NAT表
NAT表有三种内建链:
3. Mangle表
Mangle表用于指定如何处理数据包。它能改变TCP头中的QoS位。Mangle表具有5个内建链:
4. Raw表
Raw表用于处理异常,它具有2个内建链:
5.小结
下图展示了iptables的三个内建表:
[上传失败...(image-753d8c-1536195185272)]
二、IPTABLES 规则(Rules)
牢记以下三点式理解iptables规则的关键:
目标值(Target Values)
下面是你可以在target里指定的特殊值:
如果你执行iptables –list你将看到防火墙上的可用规则。下例说明当前系统没有定义防火墙,你可以看到,它显示了默认的filter表,以及表内默认的input链, forward链, output链。
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
查看mangle表:
查看NAT表:
查看RAW表:
!注意:如果不指定 -t 选项,就只会显示默认的 filter 表。因此,以下两种命令形式是一个意思:
(or)
以下例子表明在filter表的input链, forward链, output链中存在规则:
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 RH-Firewall-1-INPUT all — 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
1 RH-Firewall-1-INPUT all – 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain RH-Firewall-1-INPUT (2 references)
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 icmp type 255
3 ACCEPT esp – 0.0.0.0/0 0.0.0.0/0
4 ACCEPT ah – 0.0.0.0/0 0.0.0.0/0
5 ACCEPT udp – 0.0.0.0/0 224.0.0.251 udp dpt:5353
6 ACCEPT udp – 0.0.0.0/0 0.0.0.0/0 udp dpt:631
7 ACCEPT tcp – 0.0.0.0/0 0.0.0.0/0 tcp dpt:631
8 ACCEPT all – 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
9 ACCEPT tcp – 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22
10 REJECT all – 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
以上输出包含下列字段:
三、清空所有iptables规则
在配置iptables之前,你通常需要用iptables –list命令或者iptables-se命令查看有无现存规则,因为有时需要删除现有的iptables规则:
iptables –flush
或者
iptables -F
这两条命令是等效的。但是并非执行后就万事大吉了。你仍然需要检查规则是不是真的清空了,因为有的linux发行版上这个命令不会清除NAT表中的规则,此时只能手动清除:
iptables -t NAT -F
当你删除、添加规则后,这些更改并不能生效,这些规则很有可能在系统重启后恢复原样。为了让配置生效,根据平台的不同,具体作也不同。下面进行简单介绍:
1.Ubuntu
首先,保存现有的规则:
iptables-se > /etc/iptables.rules
然后新建一个bash脚本,并保存到 /etc/network/if-pre-up.d/ 目录下:
iptables-restore < /etc/iptables.rules
这样,每次系统重启后iptables规则都会被自动加载。
!注意:不要尝试在.bashrc或者.profile中执行以上命令,因为用户通常不是root,而且这只能在登录时加载iptables规则。
2.CentOS, RedHat
serv iptables se
serv iptables stop
serv iptables start
查看当前规则:
cat /etc/sysconfig/iptables
五、追加iptables规则
可以使用iptables -A命令追加新规则,其中 -A 表示 Append 。因此, 新的规则将追加到链尾。
一般而言,一条规则用于丢弃(DROP)所有数据包。如果你已经有这样的规则了,并且使用 -A 参数添加新规则,那么就是无用功。
1.语法
iptables -A chain firewall-rule
2.描述规则的基本参数
以下这些规则参数用于描述数据包的协议、源地址、目的地址、允许经过的网络接口,以及如何处理这些数据包。这些描述是对规则的基本描述。
-p 协议(protocol)
-s 源地址(source)
-d 目的地址(destination)
-j 执行目标(jump to target)
-i 输入接口(input intece)
-o 输出(out intece)
3.描述规则的扩展参数
对规则有了一个基本描述之后,有时候我们还希望指定端口、TCP标志、ICMP类型等内容。
–sport 源端口(source port)针对 -p tcp 或者 -p udp
–-dport 目的端口(destination port)针对-p tcp 或者 -p udp
-–tcp-flags TCP标志 针对-p tcp
-–icmp-type ICMP类型 针对-p icmp
4.追加规则的完整实例:仅允许SSH服务
本例实现的规则将仅允许SSH数据包通过本地计算机,其他一切连接(包括ping)都将被拒绝。
iptables -F
iptables -A INPUT -i 0 -p tcp –dport 22 -j ACCEPT
iptables -A INPUT -j DROP
六、更改默认策略
上例的例子仅对接收的数据包过滤,而对于要发送出去的数据包却没有任何限制。本节主要介绍如何更改链策略,以改变链的行为。
/! :请勿在远程连接的、虚拟机上测试!
当我们使用-L选项验证当前规则是发现,所有的链旁边都有 policy ACCEPT 标注,这表明当前链的默认策略为ACCEPT:
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp – anywhere anywhere tcp dpt:ssh
DROP all – anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
这种情况下,如果没有明确添加DROP规则,那么默认情况下将采用ACCEPT策略进行过滤。除非:
a)为以上三个链单独添加DROP规则:
iptables -A INPUT -j DROP
iptables -A OUTPUT -j DROP
iptables -A FORWARD -j DROP
b)更改默认策略:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
为什么呢?因为我们已经把OUTPUT链策略更改为DROP了。此时虽然能接收数据,但是无法发送数据:
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp – anywhere anywhere tcp dpt:ssh
DROP all – anywhere anywhere
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy DROP)
target prot opt source destination
七、配置应用程序规则
1.SSH
iptables -A INPUT -i 0 -p tcp –dport 22 -m state –state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o 0 -p tcp –sport 22 -m state –state ESTABLISHED -j ACCEPT
如果也需要使用SSH连接其他远程主机,则还需要增加以下配置:
iptables -A OUTPUT -o 0 -p tcp –dport 22 -m state –state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i 0 -p tcp –sport 22 -m state –state ESTABLISHED -j ACCEPT
2.HTTP
HTTP的配置与SSH类似:
iptables -A INPUT -i 0 -p tcp –dport 80 -m state –state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o 0 -p tcp –sport 80 -m state –state ESTABLISHED -j ACCEPT
3.完整的配置
iptables -F
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
iptables -A INPUT -i 0 -p tcp –dport 22 -m state –state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o 0 -p tcp –sport 22 -m state –state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o 0 -p tcp –dport 22 -m state –state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i 0 -p tcp –sport 22 -m state –state ESTABLISHED -j ACCEPT
iptables -A INPUT -i 0 -p tcp –dport 80 -m state –state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o 0 -p tcp –sport 80 -m state –state ESTABLISHED -j ACCEPT
References
[1] Linux Firewall Tutorial: IPTables Tables, Chains, Rules Fundamentals
[2] IPTables Flush: Delete / Remove All Rules On RedHat and CentOS Linux
[4] Linux IPTables: Incoming and Outgoing Rule Examples (SSH and HTTP)
[5] 25 Most Frequently Used Linux IPTables Rules Examples
[6] man 8 iptables
1、使用iptables --可以查看帮助使用命令,非常详细的
图: IPTables 内建表2、可以使用以下命令查看iptables的状态serv iptables status
3、当然还有其他的一些参数选择,可以使用serv iptables -帮助一下,其实就是停止的意思,直接上命令如果需要关闭iptables,可以使用以下命令
4、chkconfig iptables off这样以后开机也不需要再去做设置了,性的关闭了
5、其实我们还有一个图形界面作设置防火墙哦在命令行输入setup,敲回车
6、弹出图形界面,选择firewall进去进行设置即可
一.Linux下开启/关闭防火墙命令
1) 性生效,重启后不会复原
开启: chkconfig iptables on
关闭: chkconfig iptables off
2) 即时生效,重启后复原
开启: serv iptables start
关闭: serv iptables stop
需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭作。
在当开启了防火墙时,做如下设置,开启相关端口,
修改/etc/sysconfig/iptables 文件,添加以下内容:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i ! PPP0 -j ACCEPT
执行”setup”命令启动文字模式配置实用程序,在”选择一种工具”中选择”防火墙配置”,然后选择”运行工具”按钮,出现防火墙配置界面,将”安全级别”设为”禁用”,然后选择”确定”即可.
或者用命令:
#/in/iptables -I INPUT -p tcp –dport 80 -j ACCEPT
#/in/iptables -I INPUT -p tcp –dport 22 -j ACCEPT
#/etc/rc.d/init.d/iptables se
这样重启计算机后,防火墙默认已经开放了80和22端口
这里应该也可以不重启计算机:
#/etc/init.d/iptables restart
查看防火墙信息:
#/etc/init.d/iptables status
关闭防火墙服务:
#/etc/init.d/iptables stop
关闭?不知道怎么个法:
#chkconfig –ll 35 iptables off
关闭iptables
#serv iptables stop #关闭iptables服务
#chkconfig iptables off #开机不启动
调整selinux状态:
# setenforce 0 #调整到宽松模式
# vim /etc/selinux/config
SELINUX=disabled #以后开机selinux都禁用
祝你好运~~
望采纳~~~
1、 打开Linux系统进入桌面,点击上方菜单栏处【系统】选项
2、在弹出的菜单栏中,依次点击【管理】,【防火墙】选项
3、进入防火墙界面,输入用户密码,进行安全验证(Linux所谓的安全性,你懂的)
4、密码验证成功,点击上方【禁用】选项,防火墙已经关闭
5、当然也可以使用命 令进行关闭,右键点击桌面空白区域,选择【在终端中打开】
6、进入终端界面,输入 su 命令点击回车 ,输入登录密码点击回车,取得超级权限
7、输入 serv iptables stop 命令,点击回车即可关闭防火墙
额 我就不打了,楼上回答的很全面了。
告诉你一下各自的作用吧。
servie iptables stop
和setenforce 0是临时关闭防火墙和SELinux。
chkconfig iptables off和修改 /etc/selinux/config中SELINUX=disabled是设置防火墙开机不启动,和selinnux开机不启动的。
关闭linux的命令有:
1、halt
2、shutdown immediate
有的时候很卡,还可以按住的关机按钮,强制关机。
iptables -A bl对于OpenVZ的主机,可能不支持MASQUERADE,此时需要使用SNAT:ock -m state --这很有可能是你的ISP导致的。出于这种不稳定、不和谐因素,我们有必要使用更稳定、更安全的L2TP。state NEW ! -i ppp0 -j ACCEPT
你只要稍微改一下就可以不用开机启动了,在/etc/下面应该有个sysctl.conf的这麼一个文件,把这个文件裏面的net.ipv4_ipforward(类似这个,具体我忘记了)由0改成1,然後退回命令行通过sysctl -p看看那个ipforward那个变没变成1,完了之後执行#iptables forward ip packet下面的所有的指令,然後通过/etc/关闭防火墙服务即可:init.d/iptables se一下即可,就不用每次开机执行这个脚本了
所谓防火墙指的是一个由软件和硬件设备组合而成、在内部网和外部网之间、专用网与公共网之间的界面上构造的保护屏障.是一种获取安全性方法的形象说法,它是一种计算机硬件和软件的结合,使Internet与Intranet之间建立起一个安全。需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭作。
5.启用转发netstat可用于查看端口统计信息。
方法3:sudonetstat -lnp
列出所有侦听端口号以及每个负责的进程。终止或终止进程以关闭端口。 (kill,pkill…)
没有进程终止,这是不可能的! .见Manually closing a port from command line。您可能会寻找防火墙解决方案的其他方式(如将该端口与网络隔离)
次佳办法
要在 ubuntu 中关闭开放端口,您可以使用以下命令
sudokill $(sudo lsof -t -i:3000)
代替3000你可以指定你的端口号
lsof命令将提供有关进程打开的文件的信息
-t :此标志指定 lsof 应仅生成带有进程标识符且没有标头的简洁输出 – 例如,以便可以将输出通过管道传输到 kill(1)。此选项选择 -w 选项。
-i :此标志选择任何 Internet 地址与 i 中指定的地址匹配的文件列表。如果未指定地址,此选项将选择所有 Internet 和 x.25 (HP-UX) 网络文件的列表。
第三种办法
sudoufw allow22sudo ufw deny22
第四种办法
您可以使用 iptables 在网络级别阻止端口,而无需关闭应用程序。该端口仍将显示为打开,但将无法访问。
或者,这取决于应用程序,有些允许禁用某些端口(想想 dovecot 和 pop3 或 imap 端口),有些则不能。某些应用程序也可以配置为仅侦听 localhost 或特定地址。
1、打开配置文件
vim /etc/ssh/sshd_config
11
2、通过/22,找到下面代码
#Port 22
11
改成:
Port 3322 # 这据自己的需求改个不常见的账号,避免被猜到
11
:wq保存。
3、然后重启sshd服务:
/bin/ctl reload sshd.serv
11
4、在防火墙文件,添加端口3322
5、网站的安全组中添加端口3322
版权声明:本文内容由互联。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发 836084111@qq.com 邮箱删除。