怎么做網(wǎng)站設(shè)計程序全網(wǎng)營銷推廣方式
首先初步學(xué)習(xí)一下iptales的命令
iptales指令的詳細教程:https://blog.csdn.net/weixin_44390164/article/details/120500075
實踐一、轉(zhuǎn)發(fā)地址與端口
外網(wǎng)遠程服務(wù)上開放了SMB服務(wù),端口號自定義的為44513,WINDOWS不能直接訪問,可以通過路由器上的轉(zhuǎn)發(fā)功能來實現(xiàn),但是遠程服務(wù)又是動態(tài)IP地址,可以用以下方式來訪問:
要想自動獲取動態(tài)IP并轉(zhuǎn)發(fā),可以在/root/目錄下面新建以下腳本文件,命名為jiong818.6655.la.sh
1、開機時先自動執(zhí)行一次
將下面命令添加到本地啟動腳本里面
iptables -t nat -I PREROUTING -p tcp -d 192.168.6.1 --dport 445 -j DNAT --to $(cat /root/jiong818.6655.la.IP):44513
#iptables -t filter -I FORWARD 1 -p all -d $(cat /root/jiong818.6655.la.IP) -j ACCEPT
#iptables -t filter -I FORWARD 1 -p all -d $(cat /root/weixu1129.x3322.net.IP) -j ACCEPT# 192.168.6.1為路由器地址,當(dāng)訪問路由器的445端口時,將會自動轉(zhuǎn)換到遠程域名對應(yīng)的IP地址與端口上去
# jiong818.6655.la為域名
# 44513為遠程SMB端口號
2、建立腳本文件jiong818.6655.la.sh
dyIP=$(ping jiong818.6655.la -c1 | grep PING | awk '{ print $3 }' | cut -c 2- | cut -d\) -f1)
if [ -z "$dyIP" ];thenecho "get Ip false"exit
fifile_content=$(cat jiong818.6655.la.IP)
echo "newIP="$dyIP
echo "lastIP="$file_contentif [ "$file_content" != "$dyIP" ];thenecho "print new ip to text file"echo $dyIP>jiong818.6655.la.IPiptables -t nat -D PREROUTING 1iptables -t nat -I PREROUTING -p tcp -d 192.168.6.1 --dport 445 -j DNAT --to $dyIP:44513
# iptables -t filter -D FORWARD 1
# iptables -t filter -I FORWARD 1 -p all -d $dyIP -j ACCEPT
elseecho "no change!"
fi
3、添加實時任務(wù),每5分鐘執(zhí)行一次
crontab -e
*/5 * * * * sh /root/jiong818.6655.la.sh
#*/5 * * * * sh /root/weixu1129.x3322.net.sh
自此就可以自動轉(zhuǎn)發(fā)了,隨便遠程IP怎么變化都可以正常訪問SMB服務(wù)了。
實踐二、控制終端訪問情況
要想讓MAC為:F8:4E:17:D7:E6:29的終端,在任何時間都可以通過WAN口訪問124.229.32.179
iptables -t filter -I zone_lan_forward 3 -p all -d 124.229.32.179 -m mac --mac-source F8:4E:17:D7:E6:29 -j zone_wan_dest_ACCEPT
# -t filter 【表示指定filter表】
# -I zone_lan_forward 3 【插入自定義名的zone_lan_forward鏈 第三行,如果沒有3,則默認插入到第一條】
# -p all 【匹配所有協(xié)議包括TCP\UDP等】
# -d 124.229.32.179 【匹配要訪問的目標IP地址】
# -m mac --mac-source F8:4E:17:D7:E6:29 【匹配需要訪問的終端MAC地址】
# -j zone_wan_dest_ACCEPT 【前面匹配成功后規(guī)則,最后指定動作--允許從WAN口訪問】#如果之前有記錄的話,要先刪除
iptables -t filter -D zone_lan_forward 3
所有終端允許訪問jiong818.6655.la 和 weixu1129.x3322.net
在
iptables -t filter -I FORWARD 1 -p all -d $(ping jiong818.6655.la -c1 | grep PING | awk '{ print $3 }' | cut -c 2- | cut -d\) -f1) -j ACCEPT
iptables -t filter -I FORWARD 1 -p all -d $(ping weixu1129.x3322.net -c1 | grep PING | awk '{ print $3 }' | cut -c 2- | cut -d\) -f1) -j ACCEPT
iptables -t filter -D FORWARD 2
iptables -t filter -I FORWARD 1 -p all -d 124.229.32.179 -j ACCEPT
iptables -t filter -nvL FORWARD --line
以下是iptables一些其它選項的說明
-t :指定表
-I: 插入新規(guī)則(默認為1:插入到第一個) 與之對應(yīng)的有 -A :新增一條規(guī)則,默認加在已存在的規(guī)則的最底端
PREROUTING:PREROUTING鏈在進行路由決定之前處理數(shù)據(jù)包,因此可以用來修改目標地址(DNAT)或源地址(SNAT)。iptables -t nat -L PREROUTING:查看nat表PREROUTING鏈的規(guī)則
-p :對相應(yīng)網(wǎng)絡(luò)協(xié)議的包做規(guī)則限制如tcp、udp、icmp或all
-d:目標地址
–dport:目的端口
-j:對條件滿足數(shù)據(jù)作出對應(yīng)的動作(有ACCEPT,DROP,REJECT等下列可選項)
ACCEPT:接受
DROP:丟棄
REJECT:決絕
LOG:記錄日志
SNAT:源地址轉(zhuǎn)換
DNAT:目標地址轉(zhuǎn)換
MASQUERADE:源地址動態(tài)轉(zhuǎn)換為指定網(wǎng)卡上可用的IP地址
REDIRECT:重定向:將本機端口映射到本機的另一個端口
#查看規(guī)則所在nat表中鏈PREROUTING的行號
iptables -t nat -L PREROUTING -n --line-numbers
#刪除所在nat表中鏈PREROUTING第[$Num]行規(guī)則
iptables -t nat -D PREROUTING [$Num] #[$Num]指的是需要刪除的num。刪除規(guī)則后,下方的其他規(guī)則會補位,num會發(fā)生變更