A. centos7 ftp怎麼檢查
centos7中防火牆是一個非常的強大的功能了,但對於centos7中在防火牆中進行了升級了,下面我們一起來詳細的看看關於centos7中防火牆使用方法。FirewallD提供了支持網路/防火牆區域(zone)定義網路鏈接以及介面安全等級的動態防火牆管理工具。它支持IPv4,IPv6防火牆設置以及乙太網橋接,並且擁有運行時配置和永久配置選項。它也支持允許服務或者應用程序直接添加防火牆規則的介面。以前的system-config-firewall/lokkit防火牆模型是靜態的,每次修改都要求防火牆完全重啟。這個過程包括內核netfilter防火牆模塊的卸載和新配置所需模塊的裝載等。而模塊的卸載將會破壞狀態防火牆和確立的連接。相反,firewalldaemon動態管理防火牆,不需要重啟整個防火牆便可應用更改。因而也就沒有必要重載所有內核防火牆模塊了。不過,要使用firewalldaemon就要求防火牆的所有變更都要通過該守護進程來實現,以確保守護進程中的狀態和內核里的防火牆是一致的。另外,firewalldaemon無法解析由ip*tables和ebtables命令行工具添加的防火牆規則。守護進程通過D-BUS提供當前激活的防火牆設置信息,也通過D-BUS接受使用PolicyKit認證方式做的更改。「守護進程」應用程序、守護進程和用戶可以通過D-BUS請求啟用一個防火牆特性。特性可以是預定義的防火牆功能,如:服務、埠和協議的組合、埠/數據報轉發、偽裝、ICMP攔截或自定義規則等。該功能可以啟用確定的一段時間也可以再次停用。通過所謂的直接介面,其他的服務(例如libvirt)能夠通過iptables變元(arguments)和參數(parameters)增加自己的規則。amanda、ftp、samba和tftp服務的netfilter防火牆助手也被「守護進程」解決了,只要它們還作為預定義服務的一部分。附加助手的裝載不作為當前介面的一部分。由於一些助手只有在由模塊控制的所有連接都關閉後才可裝載。因而,跟蹤連接信息很重要,需要列入考慮范圍。靜態防火牆(system-config-firewall/lokkit)使用system-config-firewall和lokkit的靜態防火牆模型實際上仍然可用並將繼續提供,但卻不能與「守護進程」同時使用。用戶或者管理員可以決定使用哪一種方案。在軟體安裝,初次啟動或者是首次聯網時,將會出現一個選擇器。通過它你可以選擇要使用的防火牆方案。其他的解決方案將保持完整,可以通過更換模式啟用。firewalldaemon獨立於system-config-firewall,但二者不能同時使用。使用iptables和ip6tables的靜態防火牆規則如果你想使用自己的iptables和ip6tables靜態防火牆規則,那麼請安裝iptables-services並且禁用firewalld,啟用iptables和ip6tables:yuminstalliptables-...service靜態防火牆規則配置文件是/etc/sysconfig/iptables以及/etc/sysconfig/ip6tables.註:iptables與iptables-services軟體包不提供與服務配套使用的防火牆規則.這些服務是用來保障兼容性以及供想使用自己防火牆規則的人使用的.你可以安裝並使用system-config-firewall來創建上述服務需要的規則.為了能使用system-config-firewall,你必須停止firewalld.為服務創建規則並停用firewalld後,就可以啟用iptables與ip6tables服務了:systemctlstopfirewalld.servicesystemctlstartiptables..service什麼是區域?網路區域定義了網路連接的可信等級。這是一個一對多的關系,這意味著一次連接可以僅僅是一個區域的一部分,而一個區域可以用於很多連接。預定義的服務服務是埠和/或協議入口的組合。備選內容包括netfilter助手模塊以及IPv4、IPv6地址。埠和協議定義了tcp或udp埠,埠可以是一個埠或者埠范圍。ICMP阻塞可以選擇Internet控制報文協議的報文。這些報文可以是信息請求亦可是對信息請求或錯誤條件創建的響應。偽裝私有網路地址可以被映射到公開的IP地址。這是一次正規的地址轉換。埠轉發埠可以映射到另一個埠以及/或者其他主機。哪個區域可用?由firewalld提供的區域按照從不信任到信任的順序排序。丟棄任何流入網路的包都被丟棄,不作出任何響應。只允許流出的網路連接。阻塞任何進入的網路連接都被拒絕,並返回IPv4的icmp-host-prohibited報文或者IPv6的icmp6-adm-prohibited報文。只允許由該系統初始化的網路連接。公開用以可以公開的部分。你認為網路中其他的計算機不可信並且可能傷害你的計算機。只允許選中的連接接入。(..)外部用在路由器等啟用偽裝的外部網路。你認為網路中其他的計算機不可信並且可能傷害你的計算機。只允許選中的連接接入。隔離區(dmz)用以允許隔離區(dmz)中的電腦有限地被外界網路訪問。只接受被選中的連接。工作用在工作網路。你信任網路中的大多數計算機不會影響你的計算機。只接受被選中的連接。家庭用在家庭網路。你信任網路中的大多數計算機不會影響你的計算機。只接受被選中的連接。內部用在內部網路。你信任網路中的大多數計算機不會影響你的計算機。只接受被選中的連接。受信任的允許所有網路連接。我應該選用哪個區域?例如,公共的WIFI連接應該主要為不受信任的,家庭的有線網路應該是相當可信任的。根據與你使用的網路最符合的區域進行選擇。如何配置或者增加區域?你可以使用任何一種firewalld配置工具來配置或者增加區域,以及修改配置。工具有例如firewall-config這樣的圖形界面工具,firewall-cmd這樣的命令行工具,以及D-BUS介面。或者你也可以在配置文件目錄中創建或者拷貝區域文件。@PREFIX@/lib/firewalld/zones被用於默認和備用配置,/etc/firewalld/zones被用於用戶創建和自定義配置文件。如何為網路連接設置或者修改區域區域設置以ZONE=選項存儲在網路連接的ifcfg文件中。如果這個選項缺失或者為空,firewalld將使用配置的默認區域。如果這個連接受到NetworkManager控制,你也可以使用nm-connection-editor來修改區域。由NetworkManager控制的網路連接防火牆不能夠通過NetworkManager顯示的名稱來配置網路連接,只能配置網路介面。因此在網路連接之前NetworkManager將配置文件所述連接對應的網路介面告訴firewalld。如果在配置文件中沒有配置區域,介面將配置到firewalld的默認區域。如果網路連接使用了不止一個介面,所有的介面都會應用到fiwewalld。介面名稱的改變也將由NetworkManager控制並應用到firewalld。為了簡化,自此,網路連接將被用作與區域的關系。如果一個介面斷開了,NetworkManager也將告訴firewalld從區域中刪除該介面。當firewalld由systemd或者init腳本啟動或者重啟後,firewalld將通知NetworkManager把網路連接增加到區域。由腳本控制的網路對於由網路腳本控制的連接有一條限制:沒有守護進程通知firewalld將連接增加到區域。這項工作僅在ifcfg-post腳本進行。因此,此後對網路連接的重命名將不能被應用到firewalld。同樣,在連接活動時重啟firewalld將導致與其失去關聯。現在有意修復此情況。最簡單的是將全部未配置連接加入默認區域。區域定義了本區域中防火牆的特性:使用firewalld你可以通過圖形界面工具firewall-config或者命令行客戶端firewall-cmd啟用或者關閉防火牆特性。使用firewall-cmd命令行工具firewall-cmd支持全部防火牆特性。對於狀態和查詢模式,命令只返回狀態,沒有其他輸出。一般應用獲取firewalld狀態firewall-cmd--state此舉返回firewalld的狀態,沒有任何輸出。可以使用以下方式獲得狀態輸出:firewall-cmd--state&&echo"Running"||echo"Notrunning"在Fedora19中,狀態輸出比此前直觀:#rpm-qf$(whichfirewall-cmd)firewalld-0.3.3-2.fc19.noarch#firewall-cmd--statenotrunning在不改變狀態的條件下重新載入防火牆:firewall-cmd--reload如果你使用–complete-reload,狀態信息將會丟失。這個選項應當僅用於處理防火牆問題時,例如,狀態信息和防火牆規則都正常,但是不能建立任何連接的情況。獲取支持的區域列表firewall-cmd--get-zones這條命令輸出用空格分隔的列表。獲取所有支持的服務firewall-cmd--get-services這條命令輸出用空格分隔的列表。獲取所有支持的ICMP類型firewall-cmd--get-icmptypes這條命令輸出用空格分隔的列表。列出全部啟用的區域的特性firewall-cmd--list-all-zones輸出格式是:interfaces:..services:..ports:..forward-ports:..icmp-blocks:.輸出區域全部啟用的特性。如果生略區域,將顯示默認區域的信息。firewall-cmd[--zone=]--list-all獲取默認區域的網路設置firewall-cmd--get-default-zone設置默認區域firewall-cmd--set-default-zone=流入默認區域中配置的介面的新訪問請求將被置入新的默認區域。當前活動的連接將不受影響。獲取活動的區域firewall-cmd--get-active-zones這條命令將用以下格式輸出每個區域所含介面::..:..根據介面獲取區域firewall-cmd--get-zone-of-interface=這條命令將輸出介面所屬的區域名稱。將介面增加到區域firewall-cmd[--zone=]--add-interface=如果介面不屬於區域,介面將被增加到區域。如果區域被省略了,將使用默認區域。介面在重新載入後將重新應用。修改介面所屬區域firewall-cmd[--zone=]--change-interface=這個選項與–add-interface選項相似,但是當介面已經存在於另一個區域的時候,該介面將被添加到新的區域。從區域中刪除一個介面firewall-cmd[--zone=]--remove-interface=查詢區域中是否包含某介面firewall-cmd[--zone=]--query-interface=返回介面是否存在於該區域。沒有輸出。列舉區域中啟用的服務firewall-cmd[--zone=]--list-services啟用應急模式阻斷所有網路連接,以防出現緊急狀況firewall-cmd--panic-on禁用應急模式firewall-cmd--panic-off代碼如下復制代碼應急模式在0.3.0版本中發生了變化在0.3.0之前的FirewallD版本中,panic選項是–enable-panic與–disable-panic.查詢應急模式firewall-cmd--query-panic此命令返回應急模式的狀態,沒有輸出。可以使用以下方式獲得狀態輸出:firewall-cmd--query-panic&&echo"On"||echo"Off"處理運行時區域運行時模式下對區域進行的修改不是永久有效的。重新載入或者重啟後修改將失效。啟用區域中的一種服務firewall-cmd[--zone=]--add-service=[--timeout=]此舉啟用區域中的一種服務。如果未指定區域,將使用默認區域。如果設定了超時時間,服務將只啟用特定秒數。如果服務已經活躍,將不會有任何警告信息。例:使區域中的ipp-client服務生效60秒:firewall-cmd--zone=home--add-service=ipp-client--timeout=60例:啟用默認區域中的http服務:firewall-cmd--add-service=http禁用區域中的某種服務firewall-cmd[--zone=]--remove-service=此舉禁用區域中的某種服務。如果未指定區域,將使用默認區域。例:禁止home區域中的http服務:firewall-cmd--zone=home--remove-service=http區域種的服務將被禁用。如果服務沒有啟用,將不會有任何警告信息。查詢區域中是否啟用了特定服務firewall-cmd[--zone=]--query-service=如果服務啟用,將返回1,否則返回0。沒有輸出信息。啟用區域埠和協議組合firewall-cmd[--zone=]--add-port=[-]/[--timeout=]此舉將啟用埠和協議的組合。埠可以是一個單獨的埠或者是一個埠范圍-。協議可以是tcp或udp。禁用埠和協議組合firewall-cmd[--zone=]--remove-port=[-]/查詢區域中是否啟用了埠和協議組合firewall-cmd[--zone=]--query-port=[-]/如果啟用,此命令將有返回值。沒有輸出信息。啟用區域中的IP偽裝功能firewall-cmd[--zone=]--add-masquerade此舉啟用區域的偽裝功能。私有網路的地址將被隱藏並映射到一個公有IP。這是地址轉換的一種形式,常用於路由。由於內核的限制,偽裝功能僅可用於IPv4。禁用區域中的IP偽裝firewall-cmd[--zone=]--remove-masquerade查詢區域的偽裝狀態firewall-cmd[--zone=]--query-masquerade如果啟用,此命令將有返回值。沒有輸出信息。啟用區域的ICMP阻塞功能firewall-cmd[--zone=]--add-icmp-block=此舉將啟用選中的Internet控制報文協議(ICMP)報文進行阻塞。ICMP報文可以是請求信息或者創建的應答報文,以及錯誤應答。禁止區域的ICMP阻塞功能firewall-cmd[--zone=]--remove-icmp-block=查詢區域的ICMP阻塞功能firewall-cmd[--zone=]--query-icmp-block=如果啟用,此命令將有返回值。沒有輸出信息。例:阻塞區域的響應應答報文:firewall-cmd--zone=public--add-icmp-block=echo-reply在區域中啟用埠轉發或映射firewall-cmd[--zone=]--add-forward-port=port=[-]:proto={:toport=[-]|:toaddr=|:toport=[-]:toaddr=}埠可以映射到另一台主機的同一埠,也可以是同一主機或另一主機的不同埠。埠號可以是一個單獨的埠或者是埠范圍-。協議可以為tcp或udp。目標埠可以是埠號或者是埠范圍-。目標地址可以是IPv4地址。受內核限制,埠轉發功能僅可用於IPv4。禁止區域的埠轉發或者埠映射firewall-cmd[--zone=]--remove-forward-port=port=[-]:proto={:toport=[-]|:toaddr=|:toport=[-]:toaddr=}查詢區域的埠轉發或者埠映射firewall-cmd[--zone=]--query-forward-port=port=[-]:proto={:toport=[-]|:toaddr=|:toport=[-]:toaddr=}
B. ssh遠程登錄linux後如何打開遠端桌面
1、打開虛擬機(Ubuntu 14.04),按住ctrl+alt+T,打開終端窗口,輸入"sudo apt-get install openssh-server"-->回車。
C. 在linux下登錄ssh怎麼指定埠
命令是:
ssh -p 22 用戶名@hostname/ip: -p 22 這個就是埠的指定
通常使用 SSH 的方式就是不加任何選項參數,僅僅輸入"ssh"。下面是示例:
$ ssh 192.168.0.103
第一次連接目標主機時,ssh 會請求確認目標主機的真實性。如果回答的是NO,SSH 將不會繼續連接,只有回答Yes才會繼續。
下一次再登陸此主機時,SSH 就不會提示確認消息了。對此主機的真實驗證信息已經默認保存在每個用戶的 /home/user/.ssh 文件里。
2. 指定登陸用戶
默認的,ssh 會嘗試用當前用戶作為用戶名來連接。在上面的示例命令中,ssh 會嘗試用用戶名叫 pungki 的用戶身份來登入伺服器,這是因為用戶 pungki 正在客戶機上使用 ssh 客戶端軟體。
假如目標主機上沒有叫 pungki 的用戶呢?這時你就必須提供一個目標主機上存在的用戶名。從一開始就要指定用戶名的,可以使用 -l 選項參數。
$ ssh -l leni192.168.0.103
我們也可以這樣輸入:
3. 指定埠
SSH 默認使用的埠號是 22。大多現代的 Linux 系統 22 埠都是開放的。如果運行 ssh 程序而沒有指定埠號,它直接就是通過 22 埠發送請求的。
一些系統管理員會改變 SSH 的默認埠號。現在埠號是 1234.要連上那主機,就要使用**-p*選項,後面在加上 SSH 埠號。
$ ssh 192.168.0.103-p 1234
要改變埠號,我需要修改/etc/ssh/ssh_config文件,找到此行:
Port 22
把它換成其他的埠號,比如上面示例的 1234 埠,然後重啟 SSH 服務。
4.對所有數據請求壓縮
有了這個選項,所有通過 SSH 發送或接收的數據將會被壓縮,並且任然是加密的。要使用 SSH 的壓縮功能,使用-C選項。
$ ssh -C192.168.0.103
如果連網速度很慢的話,比如用 modem 上網,這個選項非常有用。但如果使用的是像 LAN 或其它更高級網路的話,壓縮反而會降低你的傳輸速度。可以使用-o選項加上壓縮級別參數來控制壓縮的級別,但這個選項僅僅只在 SSH-1 下起作用。
5. 指定一個加密演算法
SSH 提供了一些可用的加密演算法。可以在 */etc/ssh/ssh_config or ~/.ssh/config *文件中看到(如果存在的話)。
如果想使用blowfish演算法來加密 SSH 會話,那麼只要把這一行加入/etc/ssh/ssh_configor ~/.ssh/config文件就可以:
Cipher blowfish
默認的,SSH 會使用 3des 演算法。
6. 打開調試模式
因為某些原因如果想要追蹤調試建立的 SSH 連接情況。SSH 提供的-v選項參數正是為此而設的。
$ ssh -v192.168.0.103
7. 綁定源地址
如果客戶端有多於兩個以上的 IP 地址,就不可能分得清楚在使用哪一個 IP 連接到 SSH 伺服器。
為了解決這種情況,可以使用-b選項來指定一個IP 地址。這個 IP 將會被使用做建立連接的源地址。
$ ssh -b192.168.0.200 -l leni 192.168.0.103
服務端,可以使用 netstat 命令來檢查到服務的連接是否建立。可以看到 IP 為192.168.0.200 的連接已經建立。
8. 使用其他配置文件
默認情況下,ssh 會使用位於/etc/ssh/ssh_config的配置文件。這個配置文件作用於系統的所有用戶。但想要為特定的用戶指定特殊的設置的話,可以把配置放入~/.ssh/config文件中。如果此文件不存在,可以手工創建一個。
下面是一個通用ssh_config文件配置的例子。這配置文件位於/home/pungki目錄下。
Host 192.168.0.*
ForwardX11 yes
PasswordAuthentication yes
ConnectTimeout 10
Ciphersaes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
Protocol 2
HashKnownHosts yes
要使用指定的配置文件,可以使用-F選項。
$ ssh -F/home/pungki/my_ssh_config 192.168.0.101
9. 使用 SSH X11 Forwarding
某些時候可能想把服務端的 X11 應用程序顯示到客戶端計算機上,SSH 提供了-X選項。但要啟用這功能需要做些准備,下面是它的設置:
在伺服器端,需要使/etc/ssh/ssh_config文件中的行設置成ForwardX11 yes 或者 X11Forwadyes,以啟用 X11 Forwarding,重啟 SSH 服務程序。
然後在客戶端,輸入ssh-X user@host:
$ ssh [email protected]
一旦登陸,可以輸入:
$ echo $DISPLAY
來檢查,應該可以看到向如下所示的
localhost:10:0
隨後就可以運行應用了,僅僅只能輸入應用程序的命令。如果想運行 xclock 程序,輸入:
$ xclock
它就運行起來了,xclock 確實是運行在遠端系統的,但它在本地系統里顯示了。
D. Linux centos7下ftp默認埠修改後firewalld如何設置
如下21埠改成你的埠號 注意設置SELinux 或者關閉SELinux
firewall-cmd --permanent --zone=public --add-port=21/tcp
然後執行重新載入firewalld設置
firewall-cmd --reload
刪除之前的服務
firewall-cmd --permanent --remove-server=tcp
列出firewall開放埠
firewall-cmd --list-all
E. linux防火牆如何防禦DDOS攻擊
抵禦DDOS
DDOS,分布式拒絕訪問攻擊,是指黑客組織來自不同來源的許多主機,向常見的埠,如80,25等發送大量連接,但這些客戶端只建立連接,不是正常訪問。由於一般Apache配置的接受連接數有限(通常為256),這些「假」 訪問會把Apache占滿,正常訪問無法進行。
Linux提供了叫ipchains的防火牆工具,可以屏蔽來自特定IP或IP地址段的對特定埠的連接。使用ipchains抵禦DDOS,就是首先通過netstat命令發現攻擊來源地址,然後用ipchains命令阻斷攻擊。發現一個阻斷一個。
*** 打開ipchains功能
首先查看ipchains服務是否設為自動啟動:
chkconfig --list ipchains
輸出一般為:
ipchains 0:off 1:off 2:on 3:on 4:on 5:on 6:off
如果345列為on,說明ipchains服務已經設為自動啟動
如果沒有,可以用命令:
chkconfig --add ipchains
將ipchains服務設為自動啟動
其次,察看ipchains配置文件/etc/sysconfig/ipchains是否存在。如果這一文件不存在,ipchains
即使設為自動啟動,也不會生效。預設的ipchains配置文件內容如下:
# Firewall configuration written by lokkit
# Manual customization of this file is not recommended.
# Note: ifup-post will punch the current nameservers through the
# firewall; such entries will *not* be listed here.
:input ACCEPT
:forward ACCEPT
:output ACCEPT
-A input -s 0/0 -d 0/0 -i lo -j ACCEPT
# allow http,ftp,smtp,ssh,domain via tcp; domain via udp
-A input -p tcp -s 0/0 -d 0/0 pop3 -y -j ACCEPT
-A input -p tcp -s 0/0 -d 0/0 http -y -j ACCEPT
-A input -p tcp -s 0/0 -d 0/0 https -y -j ACCEPT
-A input -p tcp -s 0/0 -d 0/0 ftp -y -j ACCEPT
-A input -p tcp -s 0/0 -d 0/0 smtp -y -j ACCEPT
-A input -p tcp -s 0/0 -d 0/0 ssh -y -j ACCEPT
-A input -p tcp -s 0/0 -d 0/0 domain -y -j ACCEPT
-A input -p udp -s 0/0 -d 0/0 domain -j ACCEPT
# deny icmp packet
#-A input -p icmp -s 0/0 -d 0/0 -j DENY
# default rules
-A input -p tcp -s 0/0 -d 0/0 0:1023 -y -j REJECT
-A input -p tcp -s 0/0 -d 0/0 2049 -y -j REJECT
-A input -p udp -s 0/0 -d 0/0 0:1023 -j REJECT
-A input -p udp -s 0/0 -d 0/0 2049 -j REJECT
-A input -p tcp -s 0/0 -d 0/0 6000:6009 -y -j REJECT
-A input -p tcp -s 0/0 -d 0/0 7100 -y -j REJECT
如果/etc/sysconfig/ipchains文件不存在,可以用上述內容創建之。創建之後,啟動ipchains服:
/etc/init.d/ipchains start
*** 用netstat命令發現攻擊來源
假如說黑客攻擊的是Web 80埠,察看連接80埠的客戶端IP和埠,命令如下:
netstat -an -t tcp | grep ":80" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort
輸出:
161.2.8.9:123 FIN_WAIT2
161.2.8.9:124 FIN_WAIT2
61.233.85.253:23656 FIN_WAIT2
...
第一欄是客戶機IP和埠,第二欄是連接狀態
如果來自同一IP的連接很多(超過50個),而且都是連續埠,就很可能是攻擊。
如果只希望察看建立的連接,用命令:
netstat -an -t tcp | grep ":80" | grep ESTABLISHED | awk '{printf "%s %s\n",$5,$6}' | sort
*** 用ipchains阻斷攻擊來源
用ipchains阻斷攻擊來源,有兩種方法。一種是加入到/etc/sysconfig/ipchains里,然後重啟動ipchains服務。另一種是直接用ipchains命令加。屏蔽之後,可能還需要重新啟動被攻擊的服務,是已經建立的攻擊連接失效
* 加入/etc/sysconfig/ipchains
假定要阻止的是218.202.8.151到80的連接,編輯/etc/sysconfig/ipchains文件,在:output ACCEPT
行下面加入:
-A input -s 218.202.8.151 -d 0/0 http -y -j REJECT
保存修改,重新啟動ipchains:
/etc/init.d/ipchains restart
如果要阻止的是218.202.8的整個網段,加入:
-A input -s 218.202.8.0/255.255.255.0 -d 0/0 http -y -j REJECT
* 直接用命令行
加入/etc/sysconfig/ipchains文件並重起ipchains的方法,比較慢,而且在ipchains重起的瞬間,可能會有部分連接鑽進來。最方便的方法是直接用ipchains命令。
假定要阻止的是218.202.8.151到80的連接,命令:
ipchains -I input 1 -p tcp -s 218.202.8.151 -d 0/0 http -y -j REJECT
如果要阻止的是218.202.8的整個網段,命令:
ipchains -I input 1 -p tcp -s 218.202.8.0/255.255.255.0 -d 0/0 http -y -j REJECT
其中,-I的意思是插入,input是規則連,1是指加入到第一個。
您可以編輯一個shell腳本,更方便地做這件事,命令:
vi blockit
內容:
#!/bin/sh
if [ ! -z "$1" ] ; then
echo "Blocking: $1"
ipchains -I input 1 -p tcp -s "$1" -d 0/0 http -y -j REJECT
else
echo "which ip to block?"
fi
保存,然後:
chmod 700 blockit
使用方法:
./blockit 218.202.8.151
./blockit 218.202.8.0/255.255.255.0
上述命令行方法所建立的規則,在重起之後會失效,您可以用ipchains-save命令列印規則:
ipchains-save
輸出:
:input ACCEPT
:forward ACCEPT
:output ACCEPT
Saving `input'.
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 -i lo -j ACCEPT
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 110:110 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 80:80 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 22:22 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 88:88 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 89:89 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 90:90 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 91:91 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 8180:8180 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 443:443 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 21:21 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 25:25 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 22:22 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 53:53 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 9095:9095 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 8007:8007 -p 6 -j ACCEPT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 53:53 -p 17 -j ACCEPT
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 0:1023 -p 6 -j REJECT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 2049:2049 -p 6 -j REJECT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 0:1023 -p 17 -j REJECT
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 2049:2049 -p 17 -j REJECT
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 6000:6009 -p 6 -j REJECT -y
-A input -s 0.0.0.0/0.0.0.0 -d 0.0.0.0/0.0.0.0 7100:7100 -p 6 -j REJECT -y
您需要把其中的"Saving `input'."去掉,然後把其他內容保存到/etc/sysconfig/ipchains文件,這樣,下次重起之後,建立的規則能夠重新生效。
F. centos的firewall能用在ubuntu上嗎
FirewallD 提供了支持網路/防火牆區域(zone)定義網路鏈接以及介面安全等級的動態防火牆管理工具。它支持 IPv4, IPv6 防火牆設置以及乙太網橋接,並且擁有運行時配置和永久配置選項。它也支持允許服務或者應用程序直接添加防火牆規則的介面。 以前的 system-config-firewall/lokkit 防火牆模型是靜態的,每次修改都要求防火牆完全重啟。這個過程包括內核 netfilter 防火牆模塊的卸載和新配置所需模塊的裝載等。而模塊的卸載將會破壞狀態防火牆和確立的連接。
相反,firewall daemon 動態管理防火牆,不需要重啟整個防火牆便可應用更改。因而也就沒有必要重載所有內核防火牆模塊了。不過,要使用 firewall daemon 就要求防火牆的所有變更都要通過該守護進程來實現,以確保守護進程中的狀態和內核里的防火牆是一致的。另外,firewall daemon 無法解析由 ip*tables 和 ebtables 命令行工具添加的防火牆規則。
守護進程通過 D-BUS 提供當前激活的防火牆設置信息,也通過 D-BUS 接受使用 PolicyKit 認證方式做的更改。
"守護進程"
應用程序、守護進程和用戶可以通過 D-BUS 請求啟用一個防火牆特性。特性可以是預定義的防火牆功能,如:服務、埠和協議的組合、埠/數據報轉發、偽裝、ICMP 攔截或自定義規則等。該功能可以啟用確定的一段時間也可以再次停用。
通過所謂的直接介面,其他的服務(例如 libvirt )能夠通過 iptables 變元(arguments)和參數(parameters)增加自己的規則。
amanda 、ftp 、samba 和 tftp 服務的 netfilter 防火牆助手也被「守護進程」解決了,只要它們還作為預定義服務的一部分。附加助手的裝載不作為當前介面的一部分。由於一些助手只有在由模塊控制的所有連接 都關閉後才可裝載。因而,跟蹤連接信息很重要,需要列入考慮范圍。
靜態防火牆(system-config-firewall/lokkit)
使用 system-config-firewall 和 lokkit 的靜態防火牆模型實際上仍然可用並將繼續提供,但卻不能與「守護進程」同時使用。用戶或者管理員可以決定使用哪一種方案。
在軟體安裝,初次啟動或者是首次聯網時,將會出現一個選擇器。通過它你可以選擇要使用的防火牆方案。其他的解決方案將保持完整,可以通過更換模式啟用。
firewall daemon 獨立於 system-config-firewall,但二者不能同時使用。
使用iptables和ip6tables的靜態防火牆規則
如果你想使用自己的 iptables 和 ip6tables 靜態防火牆規則, 那麼請安裝 iptables-services 並且禁用 firewalld ,啟用 iptables 和ip6tables:yum install iptables-services
systemctl mask firewalld.service
systemctl enable iptables.service
systemctl enable ip6tables.service
靜態防火牆規則配置文件是 /etc/sysconfig/iptables 以及 /etc/sysconfig/ip6tables .
註: iptables 與 iptables-services 軟體包不提供與服務配套使用的防火牆規則. 這些服務是用來保障兼容性以及供想使用自己防火牆規則的人使用的. 你可以安裝並使用 system-config-firewall 來創建上述服務需要的規則. 為了能使用 system-config-firewall, 你必須停止 firewalld.
為服務創建規則並停用 firewalld 後,就可以啟用 iptables 與 ip6tables 服務了:
systemctl stop firewalld.service
systemctl start iptables.service
systemctl start ip6tables.service
G. linux遠程登錄(ssh)後,有的程序不能直接運行需要在命令前加什麼參數
使用Xmanager控制linux遠程桌面
首先,需要在linux下做相應的設置以啟動服務。主要分為六步來進行設置。NSritug
NSritug
一、配置linux
1、打開 /etc/inittab文件,將 runlevel 變為5, 即id:5:initdefault: 如果原來就是5,則不用修改。
2、打開 /etc/X11/gdm/gdm.conf 文件,找到 [xdmcp] 部分,將 Enabled 選項設為true或1。NSritug
NSritug
3、打開 /etc/X11/xdm/xdm-config 文件, 找到DisplayManager.requestPort: 0, 然後在前面加!。NSritug
NSritug
4、打開/etc/X11/xdm/Xaccess文件 找到#*#any host can get a login window,將第一個#去掉。NSritug
NSritug
5、打開 /etc/X11/xdm/kdmrc /usr/share/config/kdm/kdmrc 或 /etc/opt/kde2/share/config/kdm/kdmrc文件(根據你的操作系統不同而打開不同的文件)。找到[xdmcp]部分, 修改 Enable為true。NSritug
NSritug
6、如果你的機器上配置了防火牆,打開/etc/sysconfig/ipchains文件,加入以下幾行。
-A input -p udp -s 0/0 -d 0/0 177 -j ACCEPT NSritug
-A input -p tcp -s 0/0 -d 0/0 telnet -j ACCEPT NSritug
-A input -p tcp -s 0/0 -d 0/0 ssh -j ACCEPT NSritug
-A input -p tcp -s 0/0 -d 0/0 login -j ACCEPT NSritug
-A input -p tcp -s 0/0 -d 0/0 exec -j ACCEPT NSritug
-A input -p tcp -s 0/0 -d 0/0 shell -j ACCEPT NSritug
-A input -p tcp -s 0/0 -d 0/0 7100 -j ACCEPT NSritug
NSritug
重新啟動操作系統,以使系統生效。
註:一群里的朋友說他曾經遇到過此文件下有這樣的一條語句的:
-A RH-Lokkit-0-50-INPUT -p tcp -m tcp --dport 7100 --syn -j REJECT
說明你的7100的埠被拒絕了.所以你可以用#放在這條語句的前面把他給注釋掉.NSritug
NSritug
二、配置xmananger
xmanager可從下載。可以下載最新的版本2.0或2.1,本文採用xmanager2.0來進行設置,S/n: 050801-156011-000158,這個是他企業版的序列號!如果你下載其他的版本可以到網上搜去吧! NSritug
NSritug
按提示安裝完後xmanager2.0後有五個圖標。NSritug
NSritug
啟動其中的Xbrowser後,將Host設為linux機器的IP, Port Number為177。
後面幾步一直按下一步。完成後在xbrowser中出現一個圖標,雙擊它出現類似於linux的登錄界面。輸入linux的用戶名和密碼。
H. 虛擬機linux系統為什麼ping不通
1.配置虛擬機Linux的IP地址
vi/etc/sysconfig/network-scripts/ifcfg-eth0