分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!
簡介:本文介紹centos7上安裝shadowsocks後,關於防火牆的處理。
centos7上防火牆變成了firewalld,而非iptables,所以操作上也不太一樣。尤其是安裝完shadowsocks之後,發現新增的埠不起作用了。原因就是防火牆把那個埠斃了。
firewalld預設的配置檔案有:/usr/lib/firewalld
,這個是系統的盡量不要修改。使用者的在/etc/firewalld/zones
下的public.xml。可以手動編輯新增,也可以用命令:
新增埠
#
firewall
-cmd--
zone=public--
add-
port=6022/tcp--
permanent
#firewall
-cmd--
zone=public--
add-
port=6022/udp--
permanent
刪除乙個埠#
firewall
-cmd--
zone=public--
remove
-port=6022/tcp--
permanent
#firewall
-cmd--
zone=public--
remove
-port=6022/udp--
permanent
之後執行firewall-cmd --reload
或firewall-cmd --complete-reload
重啟就ok了。一般執行前者即可.
本指令碼已上傳至github,歡迎使用fork.
為此我寫了個指令碼,新建檔案myport
,注意不要帶字尾:
#!/bin/bashnum=$#ok=0
if [ $ != 2 ]; then
echo
'error:you must input two parmas, first is add or remote, second is port number'
exit0fi
case
$1inadd)firewall-cmd --zone=public --add-port=$2/tcp --permanentfirewall-cmd --zone=public --add-port=$2/udp --permanentok=1;;remove)firewall-cmd --zone=public --remove-port=$2/tcp --permanentfirewall-cmd --zone=public --remove-port=$2/udp --permanentok=1;;*)echo
'first params must be "add" or "remove"' ;;esac
if [ $ == 1 ]; thenfirewall-cmd --reloadfirewall-cmd --zone=public --list-allfi
exit
0
將指令碼增加可執行許可權,然後mv到/usr/local/sbin
目錄即可!
增加埠:myport add
4444刪除埠 :myport remove
4444
關於變數,第一次賦值時不帶符號
,第二次
賦值時也
不需要帶
符號,第二次賦值時也不需要帶
符號,直到使用時才帶$號;
關於shell指令碼裡的if else,if和之間一定要帶個空格,然後裡的表示式兩端也要帶個空格.
shell裡的switch語句,;;
表示break的意思,*)
表示default意思。esac
是switch結束標誌。
每次修改shadowsocks,用本指令碼還嫌麻煩的話,那可以增加埠區間:
firewall
-cmd--
zone=public--
add-
port=4400
-4600/udp--
permanent
firewall
-cmd--
zone=public--
add-
port=4400
-4600/tcp--
permanent
這樣4400-4600這個區間的埠都是允許的。
當然也可以直接編輯public.xml,在裡面增加:
port="4400-4600"/>
port="4400-4600"/>
參考:
1. centos7下使用firewall
2. centos 7 使用iptables替換自帶的firewall
給我老師的人工智慧教程打call!
CentOS7一鍵部署vsftpd服務
vim ftp.sh 使用方法 sh ftp.sh install sh ftp.sh useradd test test 建立虛擬使用者 test 密碼test ftp根目 data wwwroot test 可以自己修改指令碼 bin sh author vim 82996821 os cent...
關於CentOS7一鍵安裝mysql5 7演示
參照原博文centos7 安裝和配置mysql5.7 結合自己在網上搜尋的一些資料整合的一套安裝mysql並設定root密碼和資料庫遠端連線密碼的指令碼 部分指令碼 展示 bin bash 測試指令碼 輸出logo lingdulogo0.sh 檢測是否已安裝mysql service mysqld...
Centos7配置firewalld防火牆
firewalld提供了支援網路 防火牆區域 zone 定義網路鏈結以及介面安全等級的動態防火牆管理工具。它支援 ipv4,ipv6 防火牆設定以及乙太網橋接,並且擁有執行時配置和永久配置選項。它也支援允許服務或者應用程式直接新增防火牆規則的介面 firewall daemon可實現動態管理防火牆,...