语法高亮,滚动条美化,设置页面调整

This commit is contained in:
fofolee
2019-04-19 02:41:09 +08:00
parent 1e8f76c000
commit 359d29ee0b
1590 changed files with 12328 additions and 11441 deletions

View File

@@ -3,9 +3,9 @@
<h2 id="补充说明">补充说明</h2>
<p><strong>ip6tables命令</strong> 和iptables一样都是linux中防火墙软件不同的是ip6tables采用的TCP/ip协议为IPv6。</p>
<h3 id="语法">语法</h3>
<pre><code>ip6tables(选项)</code></pre>
<pre><code class="language-bash">ip6tables(选项)</code></pre>
<h3 id="选项">选项</h3>
<pre><code>-t&lt;&gt;:指定要操纵的表;
<pre><code class="language-bash">-t&lt;&gt;:指定要操纵的表;
-A向规则链中添加条目
-D从规则链中删除条目
-i向规则链中插入条目
@@ -24,12 +24,12 @@
-c&lt;计数器&gt;在执行插入操作insert追加操作append替换操作replace时初始化包计数器和字节计数器。</code></pre>
<h3 id="实例">实例</h3>
<p>在命令行窗口输入下面的指令就可以查看当前的 IPv6 防火墙配置:</p>
<pre><code>ip6tables -nl --line-numbers</code></pre>
<pre><code class="language-bash">ip6tables -nl --line-numbers</code></pre>
<p><strong>/etc/sysconfig/ip6tables文件</strong></p>
<p>使用编辑器编辑<code>/etc/sysconfig/ip6tables</code>文件:</p>
<pre><code>vi /etc/sysconfig/ip6tables</code></pre>
<pre><code class="language-bash">vi /etc/sysconfig/ip6tables</code></pre>
<p>可能会看到下面的默认 ip6tables 规则:</p>
<pre><code>*filter
<pre><code class="language-bash">*filter
:INPUT accept [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
@@ -50,29 +50,29 @@
COMMIT</code></pre>
<p>与 IPv4 的 iptables 规则类似,但又不完全相同。</p>
<p>要开启 80 端口HTTP 服务器端口),在 COMMIT 一行之前添加如下规则:</p>
<pre><code>-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 80 -j ACCEPT</code></pre>
<pre><code class="language-bash">-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 80 -j ACCEPT</code></pre>
<p><code>-p tcp</code>表示仅针对 tcp 协议的通信。<code>--dport</code>指定端口号。</p>
<p>要开启 53 端口DNS 服务器端口),在 COMMIT 一行之前添加如下规则:</p>
<pre><code>-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 53 -j ACCEPT
<pre><code class="language-bash">-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m udp -p tcp --dport 53 -j ACCEPT</code></pre>
<p>同时针对 tcp 和 udp 协议开启 53 端口。</p>
<p>要开启 443 端口,在 COMMIT 一行之前添加如下规则:</p>
<pre><code>-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 443 -j ACCEPT</code></pre>
<pre><code class="language-bash">-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 443 -j ACCEPT</code></pre>
<p>要开启 25 端口SMTP 邮件服务器端口),在 COMMIT 一行之前添加如下规则:</p>
<pre><code>-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 25 -j ACCEPT</code></pre>
<pre><code class="language-bash">-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 25 -j ACCEPT</code></pre>
<p>对于那些没有特定规则与之匹配的数据包可能是我们不想要的多半是有问题的。我们可能也希望在丢弃DROP之前记录它们。此时可以将最后一行</p>
<pre><code>-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp6-adm-prohibited
<pre><code class="language-bash">-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp6-adm-prohibited
COMMIT</code></pre>
<p>改为:</p>
<pre><code>-A RH-Firewall-1-INPUT -j LOG
<pre><code class="language-bash">-A RH-Firewall-1-INPUT -j LOG
-A RH-Firewall-1-INPUT -j DROP
COMMIT</code></pre>
<p>保存并关闭该文件。然后重新启动 ip6tables 防火墙:</p>
<pre><code># service ip6tables restart</code></pre>
<pre><code class="language-bash"># service ip6tables restart</code></pre>
<p>然后重新查看 ip6tables 规则,可以看到如下所示的输出:</p>
<pre><code># ip6tables -vnL --line-numbers</code></pre>
<pre><code class="language-bash"># ip6tables -vnL --line-numbers</code></pre>
<p>输出示例:</p>
<pre><code>Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
<pre><code class="language-bash">Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 42237 3243K RH-Firewall-1-INPUT all * * ::/0 ::/0
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
@@ -101,7 +101,7 @@ num pkts bytes target prot opt in out source destina
<p><strong>允许特定的 ICMPv6 通信</strong></p>
<p>使用 IPv6 的时候需要允许比 IPv4 更多类型的 ICMP 通信以保证路由和 IP 地址自动配置等功能正常工作。有时候,如果你的规则设置太过苛刻,可能都无法分配到正确的 IPv6 地址。当然,不使用 DHCP 而是手动配置 IP 地址的除外。</p>
<p>下面是一些比较常见的 ipv6-icmp 配置实例:</p>
<pre><code>:ICMPv6 - [0:0]
<pre><code class="language-bash">:ICMPv6 - [0:0]
# Approve certain ICMPv6 types and all outgoing ICMPv6
# http://forum.linode.com/viewtopic.php?p=39840#39840
-A INPUT -p icmpv6 -j ICMPv6