新聞中心
linux怎么設置局域網(wǎng)???
一.安裝和配置網(wǎng)絡設備
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供同江網(wǎng)站建設、同江做網(wǎng)站、同江網(wǎng)站設計、同江網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、同江企業(yè)網(wǎng)站模板建站服務,10余年同江做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
在安裝linux時,如果你有網(wǎng)卡,安裝程序將會提示你給出tcp/ip網(wǎng)絡的配置參數(shù),如本機的 ip地址,缺省網(wǎng)關的ip地址,DNS的ip地址等等.根據(jù)這些配置參數(shù),安裝程序將會自動把網(wǎng)卡(linux系統(tǒng)首先要支持)驅動程序編譯到內核中去.但是我們一定要了解加載網(wǎng)卡驅動程序的過程,那么在以后改變網(wǎng)卡,使用多個網(wǎng)卡的時候我們就會很容易的操作.網(wǎng)卡的驅動程序是作為模塊加載到內核中去的,所有l(wèi)inux支持的網(wǎng)卡驅動程序都是存放在目錄/lib/modules/(linux版本號)/net/ ,例如inter的82559系列10/100M自適應的引導網(wǎng)卡的驅動程序是eepro100.o,3COM的3C509 ISA網(wǎng)卡的驅動程序是3C509.o,DLINK的pci 10網(wǎng)卡的驅動程序是via-rhine.o,NE2000兼容性網(wǎng)卡的驅動程序是ne2k-pci.o和ne.o.在了解了這些基本的驅動程序之后,我們就可以通過修改模塊配置文件來更換網(wǎng)卡或者增加網(wǎng)卡.
1. 修改/etc/conf.modules 文件
這個配置文件是加載模塊的重要參數(shù)文件,大家先看一個范例文件
#/etc/conf.modules
alias eth0 eepro100
alias eth1 eepro100
這個文件是一個裝有兩塊inter 82559系列網(wǎng)卡的linux系統(tǒng)中的conf.modules中的內容.alias命令表明以太口(如eth0)所具有的驅動程序的名稱,alias eth0 eepro100說明在零號以太網(wǎng)口所要加載的驅動程序是eepro100.o.那么在使用命令 modprobe eth0的時候,系統(tǒng)將自動將eepro100.o加載到內核中.對于pci的網(wǎng)卡來說,由于系統(tǒng)會自動找到網(wǎng)卡的io地址和中斷號,所以沒有必要在conf.modules中使用選項options來指定網(wǎng)卡的io地址和中斷號.但是對應于ISA網(wǎng)卡,則必須要在conf.modules中指定硬件的io地址或中斷號, 如下所示,表明了一塊NE的ISA網(wǎng)卡的conf.modules文件.
alias eth0 ne
options ne io=0x300 irq=5
在修改完conf.modules文件之后,就可以使用命令來加載模塊,例如要插入inter的第二塊網(wǎng)卡:
#insmod /lib/modules/2.2.14/net/eepro100.o
這樣就可以在以太口加載模塊eepro100.o.同時,還可以使用命令來查看當前加載的模塊信息:
[root@ice /etc]# lsmod
Module Size Used by
eepro100 15652 2 (autoclean)
返回結果的含義是當前加載的模塊是eepro100,大小是15652個字節(jié),使用者兩個,方式是自動清除.
2. 修改/etc/lilo.conf文件
在一些比較新的linux版本中,由于操作系統(tǒng)自動檢測所有相關的硬件,所以此時不必修改/etc/lilo.conf文件.但是對于ISA網(wǎng)卡和老的版本,為了在系統(tǒng)初始化中對新加的網(wǎng)卡進行初始化,可以修改lilo.conf文件.在/etc/lilo.conf文件中增加如下命令:
append="ether=5,0x240,eth0 ether=7,0x300,eth1"
這條命令的含義是eth0的io地址是0x240,中斷是5,eth1的io地址是0x300,中斷是7.
實際上,這條語句來自在系統(tǒng)引導影像文件時傳遞的參數(shù),
LILO: linux ether=5,0x240,eth0 ether=7,0x300,eth1
這種方法也同樣能夠使linux系統(tǒng)配置好兩個網(wǎng)卡.類似的,在使用三個以上網(wǎng)卡的時候,也可以依照同樣的方法.
在配置好網(wǎng)卡之后,就應該配置TCP/IP的參數(shù),在一般情況下,在安裝linux系統(tǒng)的同時就會提示你配置網(wǎng)絡參數(shù).但是之后如果我們想要修改網(wǎng)絡設置,可以使用如下的命令:
#ifconfig eth0 A.B.C.D netmask E.F.G.H
A.B.C.D 是eth0的IP地址,E.F.G.H是網(wǎng)絡掩碼.
其實,在linux系統(tǒng)中我們可以給一塊網(wǎng)卡設置多個ip地址,例如下面的命令:
#ifconfig eth0:1 202.112.11.218 netmask 255.255.255.192
然后,使用命令#ifconfig -a 就可以看到所有的網(wǎng)絡接口的界面:
eth0 Link encap:Ethernet HWaddr 00:90:27:58:AF:1A
inet addr:202.112.13.204 Bcast:202.112.13.255 Mask:255.255.255.192
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:435510 errors:0 dropped:0 overruns:0 frame:2
TX packets:538988 errors:0 dropped:0 overruns:0 carrier:0
collisions:318683 txqueuelen:100
Interrupt:10 Base address:0xc000
eth0:1 Link encap:Ethernet HWaddr 00:90:27:58:AF:1A
inet addr:202.112.11.218 Bcast:202.112.11.255 Mask:255.255.255.192
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:10 Base address:0xc000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:3924 Metric:1
RX packets:2055 errors:0 dropped:0 overruns:0 frame:0
TX packets:2055 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
我們看到網(wǎng)絡接口有三個,eth0 , eth0:1,lo,eth0是真實的以太網(wǎng)絡接口,eth0:1和eth0是同一塊網(wǎng)卡,只不過綁定了另外的一個地址,lo是會送地址。eth0和eth0:1可以使用不同網(wǎng)段的ip地址,這在同一個物理網(wǎng)段卻使用不同的網(wǎng)絡地址的時候十分有用。
另外,網(wǎng)卡有一種模式是混雜模式(prosimc),在這個模式下,網(wǎng)卡將會接收網(wǎng)絡中所有的數(shù)據(jù)包,一些linux下的網(wǎng)絡監(jiān)聽工具例如tcpdump,snort等等都是把網(wǎng)卡設置為混雜模式.
ifconfig命令可以在本次運行的時間內改變網(wǎng)卡的ip地址,但是如果系統(tǒng)重新啟動,linux仍然按照原來的默認的設置啟動網(wǎng)絡接口。這時候,可以使用netconfig或netconf命令來重新設置默認網(wǎng)絡參數(shù)。netconfig 命令是重新配置基本的tcp/ip參數(shù),參數(shù)包括是否配置為動態(tài)獲得ip地址(dhcpd和bootp),網(wǎng)卡的ip地址,網(wǎng)絡掩碼,缺省網(wǎng)關和首選的域名服務器地址。netconf命令可以詳細的配置所有網(wǎng)絡的參數(shù),分為客戶端任務,服務器端任務和其他的配置三個部分,在客戶端的配置中,主要包括基本主機的配置(主機名,有效域名,網(wǎng)絡別名,對應相應網(wǎng)卡的ip地址,網(wǎng)絡掩碼,網(wǎng)絡設備名,網(wǎng)絡設備的內核驅動程序),DNS地址配置,缺省網(wǎng)關的地址配置,NIS地址配置,ipx接口配置,ppp/slip的配置等等。在服務器端配置中,主要包括NFS的配置,DNS的配置,ApacheWebServer配置,Samba的配置和Wu-ftpd的配置。在其他的配置選項中,一個是關于/etc/hosts文件中的主機配置,一個是關于/etc/networks文件中的網(wǎng)絡配置信息,最后是關于使用linuxconf配置的信息。
在linuxconf命令下,同樣也可以配置網(wǎng)絡信息,但是大家可以發(fā)現(xiàn),linuxconf程序是調用netconf來進行網(wǎng)絡配置的。
另外,在/etc/sysconfig/network-scripts目錄下存放著系統(tǒng)關于網(wǎng)絡的配置文件,范例如下:
:brbr
ifcfg-eth0* ifdown-post* ifup-aliases* ifup-ppp*
ifcfg-eth1* ifdown-ppp* ifup-ipx* ifup-routes*
ifcfg-lo* ifdown-sl* ifup-plip* ifup-sl*
ifdown@ ifup@ ifup-post* network-functions
ifcfg-eth0是以太口eth0的配置信息,它的內容如下:
DEVICE="eth0" /*指明網(wǎng)絡設備名稱*/
IPADDR="202.112.13.204" /*指明網(wǎng)絡設備的ip地址*/
NETMASK="255.255.255.192" /*指明網(wǎng)絡掩碼*/
NETWORK=202.112.13.192 /*指明網(wǎng)絡地址*/
BROADCAST=202.112.13.255 /*指明廣播地址*/
ONBOOT="yes" /*指明在系統(tǒng)啟動時是否激活網(wǎng)卡*/
BOOTPROTO="none" /*指明是否使用bootp協(xié)議*/
所以,我們也可以修改這個文件來進行l(wèi)inux下網(wǎng)絡參數(shù)的改變。[/SIZE]
--------------------------------------------------------------------------------
二 網(wǎng)絡服務的配置
在這一部分,我們并不是詳細的介紹具體的網(wǎng)絡服務器(DNS,FTP,WWW,SENDMAIL)的配置(那將是巨大的篇幅),而是介紹一下與linux網(wǎng)絡服務的配置相關的文件.
1. LILO的配置文件
在linux系統(tǒng)中,有一個系統(tǒng)引導程序,那就是lilo(linux loadin),利用lilo可以實現(xiàn)多操作系統(tǒng)的選擇啟動.它的配置文件是/etc/lilo.conf.在這個配置文件中,lilo的配置參數(shù)主要分為兩個部分,一個是全局配置參數(shù),包括設置啟動設備等等.另一個是局部配置參數(shù),包括每個引導影像文件的配置參數(shù).在這里我就不詳細介紹每個參數(shù),特別的僅僅說明兩個重要的參數(shù):password和restricted選項,password選項為每個引導的影像文件加入口令保護.
我們都知道,在linux系統(tǒng)中有一個運行模式是單用戶模式,在這個模式下,用戶是以超級用戶的身份登錄到linux系統(tǒng)中.人們可以通過在lilo引導的時候加入?yún)?shù)(linux single 或linux init 0)就可以不需要口令直接進入單用戶模式的超級用戶環(huán)境中,這將是十分危險的.所以在lilo.conf中增加了password的配置選項來為每個影像文件增加口令保護.
你可以在全局模式中使用password選項(對所有影像文件都加入相同的口令),或者為每個單獨的影像文件加入口令.這樣一來,在每次系統(tǒng)啟動時,都會要求用戶輸入口令.也許你覺得每次都要輸入口令很麻煩,可以使用restricted選項,它可以使lilo僅僅在linux啟動時輸入了參數(shù)(例如 linux single)的時候才會檢驗密碼.這兩個選項可以極大的增加系統(tǒng)的安全性,建議在lilo.conf文件中設置它們.
由于password在/etc/lilo.conf文件是以明文存放的,所以必須要將/etc/lilo.conf文件的屬性改為僅僅root可讀(0400).
另外,在lilo的早期版本中,存在著引導扇區(qū)必須存放到前1024柱面的限制,在lilo的2.51版本中已經(jīng)突破了這個限制,同時引導界面也變成了圖形界面更加直觀.將最新版本下載解壓后,使用命令make" 后,使用命令make install即可完成安裝.注意: 物理安全才是最基本的安全,即使在lilo.conf中增加了口令保護,如果沒有物理安全,惡意闖入者可以使用啟動軟盤啟動linux系統(tǒng).
2. 域名服務的配置文件
(1)/etc/HOSTNAME 在這個文件中保存著linux系統(tǒng)的主機名和域名.范例文件
ice.xanet.edu.cn
這個文件表明了主機名ice,域名是xanet.edu.cn
(2)/etc/hosts和/etc/networks文件 在域名服務系統(tǒng)中,有著主機表機制,/etc/hosts和/etc/networks就是主機表發(fā)展而來在/etc/hosts中存放著你不需要DNS系統(tǒng)查詢而得的主機ip地址和主機名的對應,下面是一個范例文件:
# ip 地址 主機名 別名
127.0.0.1 localhosts loopback
202.117.1.13 www
202.117.1.24 ftp
在/etc/networks 中,存放著網(wǎng)絡ip地址和網(wǎng)絡名稱的一一對應.它的文件格式和/etc/hosts是類似的
(3)/etc/resolv.conf 這個文件是DNS域名解析器的主要配置文件,它的格式十分簡單,每一行由一個主關鍵字組成./etc/resolv.conf的關鍵字主要有:
domain 指明缺省的本地域名,
search 指明了一系列查找主機名的時候搜索的域名列表,
nameserver 指明了在進行域名解析時域名服務器的ip地址.下面給出一個范例文件:
#/etc/resolv.conf
domain xjtu.edu.cn
search xjtu.edu.cn edu.cn
nameserver 202.117.0.20
nameserver 202.117.1.9
(4)/etc/host.conf 在系統(tǒng)中同時存在著DNS域名解析和/etc/hosts的主機表機制時,由文件/etc/host.conf來說明了解析器的查詢順序.范例文件如下:
#/etc/host.conf
order hosts,bind #解析器查詢順序是文件/etc/hosts,然后是DNS
multi on #允許主機擁有多個ip地址
nospoof on #禁止ip地址欺騙
3. DHCP的配置文件
/etc/dhcpd.conf是DHCPD的配置文件,我們可以通過在/etc/dhcpd.conf文件中的配置來實現(xiàn)在局域網(wǎng)中動態(tài)分配ip地址,一臺linux主機設置為dhcpd服務器,通過鑒別網(wǎng)卡的MAC地址來動態(tài)的分配ip地址.范例文件如下:
option domain-name "chinapub.com";
use-host-decl-names off;
subnet 210.27.48.0 netmask 255.255.255.192
{
filename "/tmp/image";
host dial_server
{
hardware ethernet 00:02:b3:11:f2:30;
fixed-address 210.27.48.8;
filename "/tmp/image";
}
}
在這個文件中,最主要的是通過設置的硬件地址來鑒別局域網(wǎng)中的主機,并分配給它指定的ip地址,hardware ethernet 00:02:b3:11:f2:30指定要動態(tài)分配ip的主機得網(wǎng)卡的MAC地址,fixed-address 210.27.48.8指定分配其ip地址。filename "/tmp/image"是通過tftp服務,主機所要得到的影像文件,可以通過得到的影像文件來引導主機啟動。
4. 超級守候進程inetd的配置
在linux系統(tǒng)中有一個超級守候進程inetd,inetd監(jiān)聽由文件/etc/services指定的服務的端口,inetd根據(jù)網(wǎng)絡連接請求,調用相應的服務進程來相應請求.在這里有兩個文件十分重要,/etc/inetd.conf和/etc/services,文件/etc/services定義linu系統(tǒng)中所有服務的名稱,協(xié)議類型,服務的端口等等信息,/etc/inetd.conf是inetd的配置文件,由它來指定那些服務可以由inetd來監(jiān)聽,以及相應的服務進程的調用命令.首先介紹一下/etc/services文件,/etc/services文件是一個服務名和服務端口對應的數(shù)據(jù)庫文件,如下面所示:/etc/services文件
(實際上,以上僅僅是/etc/services的一部分,限于篇幅沒有全部寫出)
在這個文件中,為了安全考慮,我們可以修改一些常用服務的端口地址,例如我們可以把telnet服務的端口地址改為52323,www的端口改為8080,ftp端口地址改為2121等等,這樣僅僅需要在應用程序中修改相應的端口即可.這樣可以提高系統(tǒng)的安全性.
/etc/inetd.conf文件是inetd的配置文件, 首先要了解一下linux服務器到底要提供哪些服務。一個很好的原則是" 禁止所有不需要的服務",這樣黑客就少了一些攻擊系統(tǒng)的機會./etc/inetd.conf范例文件
大家看到的這個文件已經(jīng)修改過的文件,除了telnet 和ftp服務,其他所有的服務都被禁止了.在修改了/etc/inetd.conf之后,使用命令kill -HUP (inetd的進程號),使inetd重新讀取配置文件并重新啟動即可.
5. ip route的配置
利用linux,一臺普通的微機也可以實現(xiàn)高性價比的路由器.首先讓我們了解一下linux的查看路由信息的命令:
[root@ice /etc]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
202.112.13.204 0.0.0.0 255.255.255.255 UH 0 0 0 eth0
202.117.48.43 0.0.0.0 255.255.255.255 UH 0 0 0 eth1
202.112.13.192 202.112.13.204 255.255.255.192 UG 0 0 0 eth0
202.112.13.192 0.0.0.0 255.255.255.192 U 0 0 0 eth0
202.117.48.0 202.117.48.43 255.255.255.0 UG 0 0 0 eth1
202.117.48.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 202.117.48.1 0.0.0.0 UG 0 0 0 eth1
命令netstat -r n 得到輸出結果和route -n是一樣的.它們操作的都是linux 內核的路由表.
命令cat /proc/net/route的輸出結果是以十六進制表示的路由表.
[root@ice /etc]# cat /proc/net/route
Iface Destination Gateway Flags RefCnt Use Metric Mask
eth0 CC0D70CA 00000000 0005 0 0 0 FFFFFFF
eth1 2B3075CA 00000000 0005 0 0 0 FFFFFFF
eth0 C00D70CA CC0D70CA 0003 0 0 0 C0FFFFF
eth0 C00D70CA 00000000 0001 0 0 0 C0FFFFF
eth1 003075CA 2B3075CA 0003 0 0 0 00FFFFF
eth1 003075CA 00000000 0001 0 0 0 00FFFFF
lo 0000007F 00000000 0001 0 0 0 000000F
eth1 00000000 013075CA 0003 0 0 0 0000000
通過計算可以知道,下面的這個路由表(十六進制)和前面的路由表(十進制)是一致的.
我們還可以通過命令route add (del )來操作路由表,增加和刪除路由信息.
除了上面的靜態(tài)路由,linux還可以通過routed來實現(xiàn)rip協(xié)議的動態(tài)路由.我們只需要打開linux的路由轉發(fā)功能,在/proc/sys/net/ipv4/ip_forward文件中增加一個字符1.
三.網(wǎng)絡的安全設置
在這一部分,再次強調一定要修改/etc/inetd.conf,安全的策略是禁止所有不需要的服務.除此之外,還有以下幾個文件和網(wǎng)絡安全相關.
(1)./etc/ftpusers ftp服務是一個不太安全的服務,所以/etc/ftpusers限定了不允許通過ftp訪問linux主機的用戶列表.當一個ftp請求傳送到ftpd,ftpd首先檢查用戶名,如果用戶名在/etc/ftpusers中,則ftpd將不會允許該用戶繼續(xù)連接.范例文件如下:
# /etc/ftpusers - users not allowed to login via ftp
root
bin
daemon
adm
lp
sync
shutdown
halt
news
uucp
operator
games
nobody
nadmin
(2)/etc/securetty 在linux系統(tǒng)中,總共有六個終端控制臺,我們可以在/etc/securetty中設置哪個終端允許root登錄,所有其他沒有寫入文件中的終端都不允許root登錄.范例文件如下:
# /etc/securetty - tty's on which root is allowed to login
tty1
tty2
tty3
tty4
(3)tcpd的控制登錄文件/etc/hosts.allow和/etc/hosts.deny
在tcpd服務進程中,通過在/etc/hosts.allow和/etc/hosts.deny中的訪問控制規(guī)則來控制外部對linux主機的訪問.它們的格式都是
service-list : hosts-list [ : command]
服務進程的名稱 : 主機列表 可選,當規(guī)則滿足時的操作
在主機表中可以使用域名或ip地址,ALL表示匹配所有項,EXCEPT表示除了某些項, PARANOID表示當ip地址和域名不匹配時(域名偽裝)匹配該項.
范例文件如下:
#
# hosts.allow This file describes the names of the hosts which are
# allowed to use the local INET services, as decided
# by the '/usr/sbin/tcpd' server.
#
ALL : 202.112.13.0/255.255.255.0
ftpd: 202.117.13.196
in.telnetd: 202.117.48.33
ALL : 127.0.0.1
在這個文件中,網(wǎng)段202.112.13.0/24可以訪問linux系統(tǒng)中所有的網(wǎng)絡服務,主機202.117.13.196只能訪問ftpd服務,主機202.117.48.33只能訪問telnetd服務.本機自身可以訪問所有網(wǎng)絡服務.
在/etc/hosts.deny文件中禁止所有其他情況:
#/etc/hosts.deny
ALL : DENY : spawn (/usr/bin/finger -lp @%h | /bin/mail -s "Port Denial noted in %d-%h" root)
在/etc/hosts.allow中,定義了在所有其他情況下,linux所應該執(zhí)行的操作.spawn選項允許linux系統(tǒng)在匹配規(guī)則中執(zhí)行指定的shell命令,在我們的例子中,linux系統(tǒng)在發(fā)現(xiàn)無授權的訪問時,將會發(fā)送給超級用戶一封主題是"Port Denial noted in %d-%h"的郵件,在這里,我們先要介紹一下allow和deny文件中的變量擴展.
(4)/etc/issue和/etc/issue.net
在我們登錄linux系統(tǒng)中的時候,我們常常可以看到我們linux系統(tǒng)的版本號等敏感信息.在如今的網(wǎng)絡攻擊行為中,許多黑客首先要收集目標系統(tǒng)的信息,版本號等就是十分重要的信息,所以在linux系統(tǒng)中一般要把這些信息隱藏起來./etc/issue和/etc/issue.net就是存放這些信息的文件.我們可以修改這些文件來隱藏版本信息.
另外,在每次linux重新啟動的時候,都會在腳本/etc/rc.d/rc.local中再次覆蓋上面那兩個文件./etc/rc.d/rc.local文件的范例如下:
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
if [ -f /etc/redhat-release ]; then
R=$(cat /etc/redhat-release)
arch=$(uname -m)
a="a"
case "_$arch" in
_a*) a="an";;
_i*) a="an";;
esac
NUMPROC=`egrep -c "^cpu[0-9]+" /proc/stat`
if [ "$NUMPROC" -gt "1" ]; then
SMP="$NUMPROC-processor "
if [ "$NUMPROC" = "8" -o "$NUMPROC" = "11" ]; then
a="an"
else
a="a"
fi
fi
# This will overwrite /etc/issue at every boot. So, make any changes you
# want to make to /etc/issue here or you will lose them when you reboot.
#echo "" /etc/issue
#echo "$R" /etc/issue
# echo "Kernel $(uname -r) on $a $SMP$(uname -m)" /etc/issue
cp -f /etc/issue /etc/issue.net
echo /etc/issue
在文件中黑體的部分就是得到系統(tǒng)版本信息的地方.一定要將他們注釋掉.
(5)其他配置
在普通微機中,都可以通過ctl+alt+del三鍵的組合來重新啟動linux.這樣是十分不安全的,所以要在/etc/inittab文件中注釋該功能:
# Trap CTRL-ALT-DELETE
#ca::ctrlaltdel:/sbin/shutdown -t3 -r now
參考資料:
linux設置為局域網(wǎng)主機
1、激活IP轉發(fā)
為了設置網(wǎng)絡共享,你需要在linux主機上更改一個內核參數(shù)來使能IP轉發(fā)功能。內核啟動參數(shù)設定在/etc/sysctl.conf文件中。
打開這個文件,定位到含有"# net.ipv4.ip_forward = 0"的這一行,移除#號(即取消注釋),然后將其值設置為1,改好之后應該和下面的一致。
1.net.ipv4.ip_forward = 1
你還要使激活IP轉發(fā)功能生效,通過執(zhí)行下面的命令:
$ sudo sysctl -w net.ipv4.ip_forward=1
$ sudo sysctl -p
2、NAT配置
另一個網(wǎng)絡共享的重要部分是NAT配置,這可以通過使用iptables的命令,iptables包含四個防火墻的規(guī)則表:
·FILTER (默認表格)
·NAT
·MANGLE
·RAW
這個教程中我們將僅使用兩個表格:FILTER和NAT表格。
首先,刷新所有活躍的防火墻的規(guī)則。
$ sudo iptables -X
$ sudo iptables -F
$ sudo iptables -t nat -X
$ sudo iptables -t nat -F
在輸入表格中,你需要設置轉發(fā)鏈(FORWARD)成可接受的(ACCEPT)目的地,因此所有通過主機的數(shù)據(jù)包將會被正確的處理。
$ sudo iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$ sudo iptables -I FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
在NAT表中,你必須為你的WAN口啟用IP偽裝功能,我們假設WAN口協(xié)議是wlx085700c5b983。為了在wlx085700c5b983接口上使能IP偽造技術,我們使用以下的命令(wlx085700c5b983為可聯(lián)網(wǎng)網(wǎng)卡名字):
$ sudo iptables -t nat -I POSTROUTING -o wlx085700c5b983 -j MASQUERADE
3、配置私有IP地址
在linux主機上的所有配置完成后,你需要配置其他設備(linux/windows的PC或筆記本)的DNS服務器以及默認網(wǎng)關,讓它們的數(shù)據(jù) 流可以指向linux主機。注意你不需要在linux主機上設置一個DNS服務器,從其他設備發(fā)出的每一個DNS請求都會通過上游的ISP自動轉發(fā)到linux主機上。
如果你的其他設備上用的系統(tǒng)是linux,你可以通過以下命令來更改他們的默認網(wǎng)關和DNS服務器。假設你的網(wǎng)段是192.168.1.0/24的私有IP地址網(wǎng)段,linux主機上綁定的IP地址是192.168.1.1。
$ sudo ip route del default
$ sudo ip route add default via 192.168.1.1
$ sudo sh -c "echo 'nameserver 192.168.1.1' /etc/resolv.conf"
如果還有其他的linux設備,那么你可以重復以上命令。
如果你有windows設備,你可以通過控制面板的網(wǎng)絡連接屬性來更改默認網(wǎng)關和DNS服務器。
4、完整的腳本
這是一個在linux主機上設置網(wǎng)絡連接共享的一個完整的腳本。WAN口(ppp0協(xié)議)需要根據(jù)你具體的網(wǎng)絡接口協(xié)議來替換。
1.$ sudo vi /usr/local/bin/netshare
#!/bin/bash
## Internet connection shating script
sysctl -w net.ipv4.ip_forward=1
sysctl -p
iptables -X
iptables -F
iptables -t nat -X
iptables -t nat -F
iptables -I INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD ?-m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -I POSTROUTING -o wlx085700c5b983 -j MASQUERADE
保存以上的腳本為/usr/local/bin/netshare,然后添加可執(zhí)行權限通過執(zhí)行下面的命令。wlx085700c5b983為可聯(lián)網(wǎng)網(wǎng)卡名字
1.$ sudo chmod +x /usr/local/bin/netshare
如果你需要這個腳本開機啟動,你需要在/etc/rc.local文件中執(zhí)行這個腳本,并在該文件中的"exit 0"之前添加下面一行。
1./usr/local/bin/netshare
主機1設置完畢。
內網(wǎng)主機設置及主機2
1.打開配置文件sudo vim /etc/network/interfaces
添加下列行:
gateway ? 192.168.0.1(指定網(wǎng)關--主機1的內網(wǎng)ip)
dns-nameservers 10.1.1.1(DNS和主機1的DNS是一樣的)
2.重啟網(wǎng)絡sudo /etc/init.d/networking restart
然后看看現(xiàn)在是否已連網(wǎng)了呢(sudo apt-get update)
NFS:
在主機1上
sudo apt-get install nfs-server(安裝所需的軟件)
打開文件sudo vi /etc/exports
/home/aaa ? ?*(rw,sync)
sudo showmount -e(可查看共享的文件夾)
在主機2上
sudo apt-get install nfs-common
sudo mkdir /home/bbb
sudo mount -t nfs 192.168.0.1:/home/aaa /home/bbb
然后cd /home/bbb
touch 123.txt
你可以從主機1上看到/home/aaa文件夾里多了個文件123.txt
到此結束。
先將腳本復制或者軟連接到/etc/init.d/目錄下,假設我在當前目錄創(chuàng)建一個start-zk.sh的文件,用于開機自啟動zookeeper。注意使用#!/bin/bash開頭:
#!/bin/bash
some command
賦予文件start-zk.sh文件可執(zhí)行權限
chomd +xstart-zk.sh
執(zhí)行命令,將腳本添加到初始化執(zhí)行的隊列中去:
update-rc.d start-zk.sh d efaults
卸載啟動腳本的方法
cd/etc/init.dsudoupdate-rc.d-fstart-zk.sh remove
update-rc.d 命令參考:
wget -qO- ifconfig.me/ip
curl ifconfig.me
liunx系統(tǒng)使用內網(wǎng)穿透?
演示環(huán)境:
Centos 7
網(wǎng)云穿 1.0
1. 上傳網(wǎng)云穿到服務器
使用?rz?命令上傳網(wǎng)云穿可執(zhí)行文件到服務器,直接輸入 rz,選擇文件即可
若您本機安裝有 wget,也可以直接使用 wget 命令
wget
此處我們使用 rz 命令
上傳網(wǎng)云穿.gif
2. 賦予可執(zhí)行權限
使用如下命令,修改文件權限,使文件可執(zhí)行
chmod -R 777 ./wyc_linux_64
賦予網(wǎng)云穿可執(zhí)行權限
3. 運行網(wǎng)云穿內網(wǎng)穿透
直接使用如下命令,執(zhí)行文件,輸入令牌后回車即可
./wyc_linux_64
啟動網(wǎng)云穿
4. 后臺運行并查看日志
1). 后臺運行命令:nohup ./wyc_linux_64 -token=令牌
2). 如果是群暉等 NAS,有的設備上沒有 nohup 命令,此時可以使用 screen,命令如下:
screen ./wyc_linux_64 -token=令牌
3). 查看日志命令:tail -f nohup.out
后臺運行并查看日志
5. 停止后臺運行中的網(wǎng)云穿
1). 運行如下命令,查看網(wǎng)云穿是否在后臺運行
ps -ef | grep wyc_linux_64
2). 若在運行,則直接使用 kill 命令 殺掉進程
Linux 關閉網(wǎng)云穿
Linux搭建Apache(httpd)內網(wǎng)訪問正常,外網(wǎng)無法訪問(精華帖)
大家好,我是「Bigder」
Linux搭建Apache(httpd)后內網(wǎng)訪問正常,外網(wǎng)無法訪問。
網(wǎng)上資料找了幾遍,匯總后關鍵的就是這幾步。
歡迎分享給需要的你~
一、驗證服務本身是否正常
linux命令行,輸入指令:curl ,能正常返回html報文數(shù)據(jù)
輸入:curl 服務器的公網(wǎng)IP/
如:????curl?
執(zhí)行超時、沒有內容輸出和返回
說明apache本身的服務是正常的
二、定位
1、防火墻:service iptables status(已經(jīng)關閉狀態(tài))
沒有關閉,參考這篇關閉掉防火墻:
Linux關閉防火墻-iptables|iptable.service could not be found
2、行~原來是因為阿里云安全組設置、未開放80端口外網(wǎng)訪問權限
設置方法:
登入阿里云工作臺,「實例與鏡像」-「實例」-「安全組」
安全組規(guī)則手動添加, 入方向開放80端口設置限制
三、再使用:
curl 服務器的公網(wǎng)IP/
也能打印出html報文數(shù)據(jù)
這樣代表,外網(wǎng)訪問正常了。一鍵三連、分享給更多的需要的測試人!
以上,
Bigder
我的歷史文章
忘記密碼怎么辦
Showcase時手機不夠怎么辦? 云真機平臺atxserver2
xmind2testcase思維導圖的測試點轉化為CSV用例導入禪道
Linux安裝JDK-java: command not foundcannot execute binary file
小改動當天轉測就要上線,要不要寫用例?
測試環(huán)境,如何維護才最高效的?
Showcase通過了才算正式提測
輪流測試一個項目、出現(xiàn)bug到底是誰的責任
外包去還是不去
Linux性能壓測命令用ab- command not found、plugins: fastestmirror
已經(jīng)很努力,但上司總讓我提升能力,還數(shù)落我拖后腿,怎么辦?
Linux關閉防火墻-iptables|iptable.service could not be found
Linux下查找指令Find常見用法
網(wǎng)頁名稱:linux命令內網(wǎng) linux 內網(wǎng)
文章網(wǎng)址:http://fisionsoft.com.cn/article/doedcdd.html