linuxisforward
❶ 如何讓linux下非root用戶程序使用小於1024埠
在Linux下,默認埠1024下的程序是要在root下才能使用的,在其他用戶下,如果嘗試使用將會報錯。在有的時候,我們可能考慮程序運行在root帳戶下,可能會給Linux系統帶來安全風險。那如何能夠讓非root用戶運行的程序能夠對外啟用小於1024的埠呢?本文嘗試給出一些方法:
第一種方法:
SetUID
為用戶的應用程序在執行位設置user ID能夠使程序可以有root許可權來運行,這個方法讓程序能夠像在root下運行有同樣的效果,不過需要非常小心,這種方法同樣會帶來安全風險,特別是當要執行的程序本身存在安全風險。使用的方法是:
chown root.root /path/to/application #使用SetUID chmod u+s /path/to/application
我們可以看到在系統下,/usr/bin/passwd這種文件,就使用了SetUID,使得每個系統的用戶都能用passwd來修改密碼——這是要修改/etc/passwd的文件(而這個只有root有許可權)。
既然要使用非root用戶運行程序,目的就是要降低程序本身給系統帶來的安全風險,因此,本方法使用的時候需要特別謹慎。
第二種方法:
CAP_NET_BIND_SERVICE
從2.1開始,Linux內核有了能力的概念,這使得普通用戶也能夠做只有超級用戶才能完成的工作,這包括使用埠1。
獲取CAP_NET_BIND_SERVICE能力,即使服務程序運行在非root帳戶下,也能夠banding到低埠。使用的方法:
#設置CAP_NET_BIND_SERVICE setcap cap_net_bind_service =+ep /path/to/application
Note:
1. 這個方法並不是所有Linux系統通適,內核在2.1之前的並沒有提供,因此你需要檢查要使用此方法所在系統是否支持(Linux must support capacity);
2. 另外需要注意的是,如果要運行的程序文件是一個腳本,這個方法是沒有辦法正常工作的(Script won't work)。
第三種方法:
Port Forwarding
如果要運行的程序有許可權監聽其他埠,那麼這個方法是可以使用的,首先讓程序運行在非root帳戶下,並綁定高於1024的埠,在確保能正常工作的時候,將低埠通過埠轉發,將低埠轉到高埠,從而實現非root運行的程序綁定低埠。要使用此方法可以使用下面的方式:
# Enable the IP FORWARD kernel parameter. sysctl -w net.ipv4.ip_forward=1 # Use iptables rules to redirect packets iptables -F -t nat iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to:8088
第一步使用sysctl確保啟用IP FORWARD功能(此功能在Red Hat/CentOS默認是被禁用的),注意,代碼中使用的sysctl設置是臨時性設置,重啟之後將會被重置,如果要長久保存,需要在/etc/sysctl.conf文件內修改:
# Default value is 0, need change to 1. # net.ipv4.ip_forward = 0 net.ipv4.ip_forward = 1
然後從文件中載入新的配置
# load new sysctl.conf sysctl -p /etc/sysctl.conf # or sysctl -p # default filename is /etc/sysctl.conf
第二步就是使用iptables的規則來實現埠轉發到程序所在的埠,示例中我們要將80埠轉發到8088。
此種方法能夠比較好的達到我們的目的,我們的程序可以通過非root用戶來運行,並能夠對外提供低埠號的服務。
第四種方法:
RINETD2
這種方法使用的也是埠轉發,此工具可以將本地埠映射到遠程埠,但此功能對於我們當前的功能來說,有點雞肋,畢竟我們新增了一個額外的程序,這將可能會增加我們系統的風險性。在此不做推薦。
❷ Linux 伺服器如何開放埠 配置防火牆
打開配置文件
命令代碼
[root@localhost~]#/etc/init.d/iptablesstop
❸ linux中如何顯示當前登陸系統用戶的狀態
linux下查看用戶及用戶組的方法
whois
功能說明:查找並顯示用戶信息。
語 法:whois [帳號名稱]
補充說明:whois指令會去查找並顯示指定帳號的用戶相關信息,因為它是到Network Solutions 的WHOIS資料庫去查找,所以該帳號名稱必須在上面注冊方能尋獲,且名稱沒有大小寫的差別。
---------------------------------------------------------
whoami
功能說明:先似乎用戶名稱。
語 法:whoami [--help][--version]
補充說明:顯示自身的用戶名稱,本指令相當於執行"id -un"指令。
參 數:
--help 在線幫助。
--version 顯示版本信息。
---------------------------------------------------
who
功能說明:顯示目前登入系統的用戶信息。
語 法:who [-Himqsw][--help][--version][am i][記錄文件]
補充說明:執行這項指令可得知目前有那些用戶登入系統,單獨執行who指令會列出登入帳號,使用的 終端機,登入時間以及從何處登入或正在使用哪個X顯示器。
參 數:
-H或--heading 顯示各欄位的標題信息列。
-i或-u或--idle 顯示閑置時間,若該用戶在前一分鍾之內有進行任何動作,將標示成"."號,如果該用戶已超過24小時沒有任何動作,則標示出"old"字元串。
-m 此參數的效果和指定"am i"字元串相同。
-q或--count 只顯示登入系統的帳號名稱和總人數。
-s 此參數將忽略不予處理,僅負責解決who指令其他版本的兼容性問題。
-w或-T或--mesg或--message或--writable 顯示用戶的信息狀態欄。
--help 在線幫助。
--version 顯示版本信息。
----------------------------------------------------
w
功能說明:顯示目前登入系統的用戶信息。
語 法:w [-fhlsuV][用戶名稱]
補充說明:執行這項指令可得知目前登入系統的用戶有那些人,以及他們正在執行的程序。單獨執行w
指令會顯示所有的用戶,您也可指定用戶名稱,僅顯示某位用戶的相關信息。
參 數:
-f 開啟或關閉顯示用戶從何處登入系統。
-h 不顯示各欄位的標題信息列。
-l 使用詳細格式列表,此為預設值。
-s 使用簡潔格式列表,不顯示用戶登入時間,終端機階段作業和程序所耗費的CPU時間。
-u 忽略執行程序的名稱,以及該程序耗費CPU時間的信息。
-V 顯示版本信息。
-----------------------------------------------------
finger命令
finger命令的功能是查詢用戶的信息,通常會顯示系統中某個用戶的用戶名、主目錄、停滯時間、登錄時間、登錄shell等信息。如果要查詢遠程機上的用戶信息,需要在用戶名後面接「@主機名」,採用[用戶名@主機名]的格式,不過要查詢的網路主機需要運行finger守護進程。
該命令的一般格式為:
finger [選項] [使用者] [用戶@主機]
命令中各選項的含義如下:
-s 顯示用戶的注冊名、實際姓名、終端名稱、寫狀態、停滯時間、登錄時間等信息。
-l 除了用-s選項顯示的信息外,還顯示用戶主目錄、登錄shell、郵件狀態等信息,以及用戶主目錄下的.plan、.project和.forward文件的內容。
-p 除了不顯示.plan文件和.project文件以外,與-l選項相同。
[例]在本地機上使用finger命令。
$ finger xxq
Login: xxq Name:
Directory: /home/xxq Shell: /bin/bash
Last login Thu Jan 1 21:43 (CST) on tty1
No mail.
No Plan.
$ finger
Login Name Tty Idle Login Time Office Office Phone
root root *1 28 Nov 25 09:17
……
------------------------------------------------------------------
/etc/group文件包含所有組
/etc/shadow和/etc/passwd系統存在的所有用戶名
修改當前用戶所屬組的方法
usermod 或者可以直接修改 /etc/paaawd文件即可
----------------------------------------------------------------
vlock(virtual console lock)
功能說明:鎖住虛擬終端。
語 法:vlock [-achv]
補充說明:執行vlock指令可鎖住虛擬終端,避免他人使用。
參 數:
-a或--all 鎖住所有的終端階段作業,如果您在全屏幕的終端中使用本參數,則會將用鍵盤
切換終端機的功能一並關閉。
-c或--current 鎖住目前的終端階段作業,此為預設值。
-h或--help 在線幫助。
-v或--version 顯示版本信息。
--------------------------------------------------------
usermod
功能說明:修改用戶帳號。
語 法:usermod [-LU][-c <備注>][-d <登入目錄>][-e <有效期限>][-f <緩沖天數>][-g <群組>][-G <群組>][-l <帳號名稱>][-s ][-u ][用戶帳號]
補充說明:usermod可用來修改用戶帳號的各項設定。
參 數:
-c<備注> 修改用戶帳號的備注文字。
-d登入目錄> 修改用戶登入時的目錄。
-e<有效期限> 修改帳號的有效期限。
-f<緩沖天數> 修改在密碼過期後多少天即關閉該帳號。
-g<群組> 修改用戶所屬的群組。
-G<群組> 修改用戶所屬的附加群組。
-l<帳號名稱> 修改用戶帳號名稱。
-L 鎖定用戶密碼,使密碼無效。
-s 修改用戶登入後所使用的shell。
-u 修改用戶ID。
-U 解除密碼鎖定。
-------------------------------------------------------
userdel
功能說明:刪除用戶帳號。
語 法:userdel [-r][用戶帳號]
補充說明:userdel可刪除用戶帳號與相關的文件。若不加參數,則僅刪除用戶帳號,而不刪除相關文件。
參 數:
-f 刪除用戶登入目錄以及目錄中所有文件。
----------------------------------------------------------
userconf
功能說明:用戶帳號設置程序。
語 法:userconf [--addgroup <群組>][--adser <用戶ID><群組><用戶名稱>][--delgroup <群組>][--deluser <用戶ID>][--help]
補充說明:userconf實際上為linuxconf的符號連接,提供圖形界面的操作方式,供管理員建立與管理各類帳號。若不加任何參數,即進入圖形界面。
參 數:
--addgroup<群組> 新增群組。
--adser<用戶ID><群組><用戶名稱> 新增用戶帳號。
--delgroup<群組> 刪除群組。
--deluser<用戶ID> 刪除用戶帳號。
--help 顯示幫助。
------------------------------------------------------
useradd
功能說明:建立用戶帳號。
語 法:useradd [-mMnr][-c <備注>][-d <登入目錄>][-e <有效期限>][-f <緩沖天數>][-g <群組>][-G <群組>][-s ][-u ][用戶帳號] 或 useradd -D [-b][-e <有效期限>][-f <緩沖天數>][-g <群組>][-G <群組>][-s ]
補充說明:useradd可用來建立用戶帳號。帳號建好之後,再用passwd設定帳號的密碼.而可用userdel刪除帳號。使用useradd指令所建立的帳號,實際上是保存在/etc/passwd文本文件中。
參 數:
-c<備注> 加上備注文字。備注文字會保存在passwd的備注欄位中。
-d<登入目錄> 指定用戶登入時的啟始目錄。
-D 變更預設值.
-e<有效期限> 指定帳號的有效期限。
-f<緩沖天數> 指定在密碼過期後多少天即關閉該帳號。
-g<群組> 指定用戶所屬的群組。
-G<群組> 指定用戶所屬的附加群組。
-m 自動建立用戶的登入目錄。
-M 不要自動建立用戶的登入目錄。
-n 取消建立以用戶名稱為名的群組.
-r 建立系統帳號。
-s 指定用戶登入後所使用的shell。
-u 指定用戶ID
======================================================================
❹ linux怎麼查看用戶組里有哪些用戶
【步驟一】cat /etc/passwd
cat /etc/passwd查看所有的用戶信息,詳情如下圖
❺ 在linux 下如何設置iptables 防火牆
Iptable -A Input -p Tcp -d 自己的IP地址 b --dPort 埠 -J Reject
RedHat機器
cat /etc/sysconfig/iptables
*filter
:INPUT ACCEPT [10276:1578052]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [13784:16761487]
-A INPUT -s 10.0.0.0/255.0.0.0 -i eth1 -j DROP
-A INPUT -s 172.16.0.0/255.240.0.0 -j DROP
-A INPUT -s 192.168.0.0/255.255.0.0 -i eth1 -j DROP #eth1 is interface to internet
# anti Sync Flood
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -m limit --limit 1/sec -j ACCEPT
# anti some port scan
-A FORWARD -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit --limit 1/sec -j ACCEPT
# anti ping of death
-A FORWARD -p icmp -m icmp --icmp-type 8 -m limit --limit 1/sec -j ACCEPT
COMMIT
chkconfig iptables on
以後每次啟動iptables就會自動讀取配置文件(/etc/sysconfig/iptables)
自動啟動
或者是/etc/rc.d/init.d/iptables start手工啟動
/etc/rc.d/init.d/iptables stop手工停止
在LINUX下架設防火牆
linuxbird
隨著Internet的普及,人們的日常工作與之的關系也越來緊密,因而越來越多的單位為員工開設了Internet的代理上網服務。但當一個企業的內部網路接上Internet之後,企業的內部資源就象待賣的羔羊一樣,面臨任人宰割的危險,因而系統的安全除了考慮計算機病毒、系統的健壯性等內部原因之外,更主要的是防止非法用戶通過Internet的入侵。而目前防止的措施主要是靠防火牆的技術完成。
一、什麼是防火牆
防火牆(firewall)是指一個由軟體或和硬體設備組合而成,處於企業或網路群體計算機與外界通道(Internet)之間,限制外界用戶對內部網路訪問及管理內部用戶訪問外界網路的許可權。主要是控制對受保護的網路(即網點)的往返訪問,逼使各連接點的通過能得到檢查和評估。
從誕生到現在,防火牆已經歷了四個發展階段:基於路由器的防火牆、用戶化的防火牆工具套、建立在通用操作系統上的防火牆、具有安全操作系統的防火牆。目前防火牆供應商提供的大部分都是具有安全操作系統的軟硬體結合的防火牆,象NETEYE、NETSCREEN、TALENTIT等。在LINUX操作系統上的防火牆軟體也很多,除了下面要專門介紹的IPCHAINS外,還有很多,如:Sinus Firewall、Jfwadmin等。
目前的防火牆從結構上講,可分為兩種:
1) 代理主機結構
內部網路<----->代理網關(Proxy Gateway)<----->Internet
2) 路由器加過濾器結構
內部網路<----->過濾器(Filter)<---->路由器(Router)<---->Internet
二、用IPCHAINS構建區域網防火牆的原理
其實從本質上講,用IPCHAINS構建區域網防火牆也是一種C/S模式的互動式的應用。一般伺服器提供某特定功能的服務總是由特定的後台程序提供的。在TCP/IP網路中,常常把這個特定的服務綁定到特定的TCP或UDP埠。之後,該後台程序就不斷地監聽(listen)該埠,一旦接收到符合條件的客戶端請求,該服務進行TCP握手後就同客戶端建立一個連接,響應客戶請求。與此同時,再產生一個該綁定的拷貝,繼續監聽客戶端的請求。
IPCHAINS就是這樣的一個SERVER。對內部網通往Intenet的請求,或從外部通往內部網的請求,都進行監聽、檢查、評估、轉發、拒絕等動作。
常用的服務、協議與默認埠。
服務類型 協議 埠
WWW TCP/UDP 80
TELNET
ICMP
SMTP
POP3
ftp
DNS
三、用IPCHAINS作防火牆的步驟
1.安裝
IPCHAINS現在的版本已經發展到1.3.9。一般在安裝LINUX時都會安裝上,如果沒有的話可以到www.linux.org下載。下面筆者一TLC4.0為例安裝IPCHAINS。由於它需IP-MASQ的支持,所以確定已安裝了IP-MASQ模塊。
在TLC4.0中,把該光碟放入光碟機中,
#turbopkg
並選擇ipchains,然後按OK就自動自動安裝了。
如果你是下載ipchains安裝包的話:
1)如果是rpm包:
#rpm –ivh *.rpm
2)如果是.tar.gz包
#tar xvfz *.tar.gz(先把包解開)
再到解開目錄
#./configure
#make
#make install
這樣就安裝成功了。
2.啟用ipchains
手工修改 /proc/sys/net/ipv4/ipforward文件,將其內容置為1。
在/etc/rc.d/目錄下用touch命令建立rc.ipfwadm文件
在/etc/rc.d/目錄下的rc.local文件中加上下面這段代碼:
if [ -f /etc/rc.d/rc.ipfwadm ]; then /etc/rc.d/rc.ipfwadm; fi;
以後所有的ipchains的配置命令都將在rc.ipfwadm文件里修改。
3.配置ipchains(基本應用)
ipchains對機器的管理是通過對機器的ip地址作為標志的,因而首先得確保你的區域網的機器的ip地址已經配分配好,並且你對之相當熟悉。
Ipchains的配置規則一般是圍繞著input、output、ipforward這三個規則進行的,其中input是指對內連接請求的過濾規則,output是指對外連接請求的過濾規則,ipforward是指對內部與外部通訊包的轉發。Ipchains的命令格式一般是:
ipchains [ADC] ipchains規則 [ipchains 選項]。
有關命令的詳細用法請參考有關HOWTO文檔。
現在我們假設企業的內部網網段為192.168.1.0~192.168.1.255.其中防火牆的主機的IP地址為:192.168.1.1,假設目前防火牆是進行代理上網,拒絕所有的外部telnet。對內部用戶訪問外部站點進行限制、並授予一些機器特權可任意訪問外部機器、拒絕內部某些機器訪問Internet等。網段示意圖為:
+--------------+
| 內部網段 | 192.168.1.1 ISDN、PSDN
| +------------|firewall|<===============>Internet
| 192.168.1.0 | +--------+
+-------------- +
配置ipchains防火牆規則一般有兩種方式:
1) 首先允許所有的包,然後在禁止有危險的包通過防火牆;
2) 首先禁止所有的包,然後再根據所需要的服務允許特定的包通過防火牆。
相比較而言,第二種方式的做法更為安全。
下面是我的rc.ipfwadm的文件內容:
/sbin/depmod –a
/*自動載入所需模塊,如果覺得這樣有危險,需手動指定安裝模塊,可以如下面這一小段就是手動指定載入模塊*/
#/sbin/modprobe /lib/moles/2.2.10/ipv4/ip_masq_ftp
/*載入ip偽裝的ftp模塊*/
#/sbin/modprobe /lib/moles/2.2.10/ipv4/ip_masq_irc
/*載入ip偽裝的irc模塊*/
#/sbin/modprobe /lib/moles/2.2.10/ipv4/ip_masq_raudio
#/sbin/modprobe /lib/moles/2.2.10/ipv4/ip_masq_user
#/sbin/modprobe /lib/moles/2.2.10/ipv4/ip_masq_autofw
/sbin/modprobe -a -t /lib/moles/2.2.10/ipv4/ip_masq*
/*自動載入ip偽裝的相關模塊*/
ipchains –F
/*刷新所有的ipchains規則*/
ipchains -P forward DENY
/*拒絕轉發所有的ip包*/
/*下面允許特定的包通過*/
/*開設許可權比較高的主機*/
ipchains -A forward -s 192.168.1.10/32 -j MASQ
/*允許內部的192.168.1.10主機不受限制訪問。比如總經理*/
ipchains -A forward -s 192.168.1.12/32 -j MASQ
/*允許內部的192.168.1.12主機不受限制訪問。比如系統管理員,在依次添加*/
ipchains -A forward -s 192.168.1.41/32 -j MASQ
/*for example linuxbird的主機地址:192.168.1.41*/
/*某些機器,因需要不能對外連接*/
ipchains -A forward -s 192.168.1.3/32 -j DENY
/*此機器為內部文檔專用機,不能訪問外部*/
/*設置內部普通用戶能訪問的站點*/
ipchains -A forward -d 202.101.98.55/32 -j MASQ # FJ-DNS
ipchains -A forward -d 202.101.0.133/32 -j MASQ # FJ-DNS
/*這是上網的DNS伺服器,本人用的是福州電信局的DNS*/
/*以下是普通用戶能訪問的站點,根據需要可以對其增刪改*/
ipchains -A forward -d 202.101.98.50/32 -j MASQ
/* public.fz.fj.cn*/
ipchains -A forward -d 202.101.98.60/32 -j MASQ
/* pub5.fz.fj.cn*/
ipchains -A forward -d 202.96.44.14/24 -j MASQ
/*freemail.263.net*/
ipchains -A forward -d 202.99.11.120/32 -j MASQ
/*www.linuxaid.com.cn*/
ipchains -A forward -d 205.227.44.44/24 -j MASQ
/* www.oracle.com*/
ipchains -A forward -d 205.227.44.46/32 -j MASQ
/* lliance.oracle.com*/
#ipchains -A forward -d 205.227.44.237/32 -j MASQ
/* support.oracle.com*/
ipchains -A forward -d 209.246.5.38/24 -j MASQ
/* technet.oracle.com*/
ipchains -A forward -d 137.69.200.8/32 -j MASQ
/* www.legato.com*/
ipchains -A forward -d 202.96.125.102/32 -j MASQ
/*www.188.net*/
ipchains -A forward -d 207.105.83.51/32 -j MASQ
/* www.borland.com*/
ipchains -A forward -d 207.46.131.30/24 -j MASQ
/* www.microsoft.com*/
ipchains -A forward -d 207.46.130.30/24 -j MASQ
/* www.microsoft.com*/
ipchains -A forward -d 204.146.81.99/32 -j MASQ
/* www.ibm.com*/
ipchains -A forward -d 202.102.24.74/24 -j MASQ
/* www.lodesoft.com*/
ipchains -A forward -d 210.77.34.109/32 -j MASQ
/* www.csdn.net*/
ipchains -A forward -d 192.138.151.66/32 -j MASQ
/* www.sybase.com*/
ipchains -A forward -d 202.102.26.1/32 -j MASQ
/* www.nari-china.com*/
ipchains -A forward -d 202.102.26.51/32 -j MASQ
/*www.aeps-info.com*/
ipchains -A forward -d 202.106.185.2/32 -j MASQ
/* www.sohu.com */
……
❻ 如何在linux下用tcp傳輸文件
一. FTP 說明 linux 系統下常用的FTP 是vsftp, 即Very Security File Transfer Protocol. 還有一個是proftp(Profession ftp)。 我們這里也是簡單的說明下vsftp的配置。 vsftp提供3種遠程的登錄方式: (1)匿名登錄方式 就是不需要用戶名,密碼。就能登錄到伺服器電腦裡面 (2)本地用戶方式 需要帳戶名和密碼才能登錄。而且,這個帳戶名和密碼,都是在你linux系統裡面,已經有的用戶。 (3)虛擬用戶方式 同樣需要用戶名和密碼才能登錄。但是和上面的區別就是,這個用戶名和密碼,在你linux系統中是沒有的(沒有該用戶帳號) 二. Vsftp的安裝配置 2.1 安裝 vsftp 的安裝包,可以在安裝里找到。 用yum 安裝過程也很簡單。 安裝命令:yum install vsftpd 2.2. 相關命令 2.2.1 啟動與關閉 [root@singledb ~]# service vsftpd start Starting vsftpd for vsftpd: [ OK ] [root@singledb ~]# service vsftpd stop Shutting down vsftpd: [ OK ] [root@singledb ~]# service vsftpd restart Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: [ OK ] [root@singledb ~]# /etc/init.d/vsftpd start Starting vsftpd for vsftpd: [FAILED] [root@singledb ~]# /etc/init.d/vsftpd stop Shutting down vsftpd: [ OK ] [root@singledb ~]# /etc/init.d/vsftpd restart Shutting down vsftpd: [FAILED] Starting vsftpd for vsftpd: [ OK ] [root@singledb ~]# /etc/init.d/vsftpd status vsftpd (pid 3931) is running... [root@singledb ~]# 2.2.2. 其他命令 --查看vsftpd 啟動狀態 [root@singledb ~]# chkconfig --list vsftpd vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off [root@singledb ~]# chkconfig vsftpd on [root@singledb ~]# chkconfig --list vsftpd vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off 這里看到,默認情況下從2到5設置為on了。2到5是多用戶級別。 這個對應的是linux不同的運行級別。 我們也可以加level 選項來指定: [root@singledb ~]# chkconfig --level 0 vsftpd on [root@singledb ~]# chkconfig --list vsftpd vsftpd 0:on 1:off 2:on 3:on 4:on 5:on 6:off 我們看到0已經設置為on了。 我們可以使用man chkconfig 來查看幫助: --level levels Specifies the run levels an operation should pertain to. It is given as a string of numbers from 0 to 7. For example, --level 35 specifies runlevels 3 and 5. 傳統的init 定義了7個運行級(run level),每一個級別都代表系統應該補充運行的某些特定服務: (1)0級是完全關閉系統的級別 (2)1級或者S級代表單用戶模式 (3)2-5 級 是多用戶級別 (4)6級 是 重新引導的級別 (1)查看防火牆 我一般都是把系統的防火牆關閉了。 因為開了會有很多限制。 [root@singledb ~]# /etc/init.d/iptables status Table: nat Chain PREROUTING (policy ACCEPT) num target prot opt source destination Chain POSTROUTING (policy ACCEPT) num target prot opt source destination 1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24 Chain OUTPUT (policy ACCEPT) num target prot opt source destination Table: filter Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53 2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 3 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67 4 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67 Chain FORWARD (policy ACCEPT) num target prot opt source destination 1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED 2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0 3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable 5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable Chain OUTPUT (policy ACCEPT) num target prot opt source destination You have new mail in /var/spool/mail/root --添加開放21號埠: [root@singledb ~]# /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT [root@singledb ~]# /etc/init.d/iptables status Table: nat Chain PREROUTING (policy ACCEPT) num target prot opt source destination Chain POSTROUTING (policy ACCEPT) num target prot opt source destination 1 MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24 Chain OUTPUT (policy ACCEPT) num target prot opt source destination Table: filter Chain INPUT (policy ACCEPT) num target prot opt source destination 1 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21 2 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:53 3 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:53 4 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:67 5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:67 Chain FORWARD (policy ACCEPT) num target prot opt source destination 1 ACCEPT all -- 0.0.0.0/0 192.168.122.0/24 state RELATED,ESTABLISHED 2 ACCEPT all -- 192.168.122.0/24 0.0.0.0/0 3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 4 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable 5 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable Chain OUTPUT (policy ACCEPT) num target prot opt source destination --保存配置 [root@singledb ~]# /etc/rc.d/init.d/iptables save Saving firewall rules to /etc/sysconfig/iptables: [ OK ] --重啟防火牆: [root@singledb ~]# service iptables {startstoprestart} (2)查看關閉selinux [root@singledb ~]# sestatus SELinux status: disabled 我這里在安裝操作系統的時候就關閉了selinux,如果沒有關閉,可以修改如下文件來關閉: [root@singledb ~]# cat /etc/sysconfig/selinux # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - SELinux is fully disabled. SELINUX=disabled # SELINUXTYPE= type of policy in use. Possible values are: # targeted - Only targeted network daemons are protected. # strict - Full SELinux protection. SELINUXTYPE=targeted [root@singledb ~]# 保存退出並重啟系統reboot 三. FTP配置文件 FTP 安裝好之後,在/etc/vsftpd/目錄下會有如下文件: [root@singledb ~]# cd /etc/vsftpd/ [root@singledb vsftpd]# ls ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh [root@singledb vsftpd]# vsftpd.conf: 主配置文件 ftpusers: 指定哪些用戶不能訪問FTP伺服器 user_list: 指定的用戶是否可以訪問ftp伺服器由vsftpd.conf文件中的userlist_deny的取值來決定。 [root@singledb vsftpd]# cat user_list # vsftpd userlist # If userlist_deny=NO, only allow users in this file # If userlist_deny=YES (default), never allow users in this file, and # do not even prompt for a password. # Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers # for users that are denied. 我們過濾掉#的注釋後,查看一下vsftpd.conf 文件: [root@singledb ftp]# cat /etc/vsftpd/vsftpd.conf grep -v '^#'; anonymous_enable=YES local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=YES pam_service_name=vsftpd userlist_enable=yes tcp_wrappers=YES 至於這些參數的意思,在注釋里有詳細的說明。 我們可以在vsftpd.conf 文件設置如下參數: (1)ftpd_banner=welcome to ftp service :設置連接伺服器後的歡迎信息 (2)idle_session_timeout=60 :限制遠程的客戶機連接後,所建立的控制連接,在多長時間沒有做任何的操作就會中斷(秒) (3)data_connection_timeout=120 :設置客戶機在進行數據傳輸時,設置空閑的數據中斷時間 (4)accept_timeout=60 設置在多長時間後自動建立連接 (5)connect_timeout=60 設置數據連接的最大激活時間,多長時間斷開,為別人所使用; (6)max_clients=200 指明伺服器總的客戶並發連接數為200 (7)max_per_ip=3 指明每個客戶機的最大連接數為3 (8)local_max_rate=50000(50kbytes/sec) 本地用戶最大傳輸速率限制 (9)anon_max_rate=30000匿名用戶的最大傳輸速率限制 (10)pasv_min_port=埠 (11)pasv-max-prot=埠號 定義最大與最小埠,為0表示任意埠;為客戶端連接指明埠; (12)listen_address=IP地址 設置ftp服務來監聽的地址,客戶端可以用哪個地址來連接; (13)listen_port=埠號 設置FTP工作的埠號,默認的為21 (14)chroot_local_user=YES 設置所有的本地用戶可以chroot (15)chroot_local_user=NO 設置指定用戶能夠chroot (16)chroot_list_enable=YES (17)chroot_list_file=/etc/vsftpd/chroot_list(只有/etc/vsftpd/chroot_list中的指定的用戶才能執行 ) (18)local_root=path 無論哪個用戶都能登錄的用戶,定義登錄帳號的主目錄, 若沒有指定,則每一個用戶則進入到個人用戶主目錄; (19)chroot_local_user=yes/no 是否鎖定本地系統帳號用戶主目錄(所有);鎖定後,用戶只能訪問用戶的主目錄/home/user,不能利用cd命令向上轉;只能向下; (20)chroot_list_enable=yes/no 鎖定指定文件中用戶的主目錄(部分),文件:/chroot_list_file=path 中指定; (21)userlist_enable=YES/NO 是否載入用戶列表文件; (22)userlist_deny=YES 表示上面所載入的用戶是否允許拒絕登錄; (23)userlist_file=/etc/vsftpd/user_list 列表文件 限制IP 訪問FTP: #vi /etc/hosts.allow vsftpd:192.168.5.128:DENY 設置該IP地址不可以訪問ftp服務 FTP 訪問時間限制: #cp /usr/share/doc/vsftpd-1.1.3/vsftpd.xinetd /etc/xinetd.d/vsftpd #vi /etc/xinetd.d/vsftpd/ 修改 disable = no access_time = hour:min-hour:min (添加配置訪問的時間限制(註:與vsftpd.conf中listen=NO相對應) 例: access_time = 8:30-11:30 17:30-21:30 表示只有這兩個時間段可以訪問ftp ftp的配置基本上只有這些了。 默認情況下,ftp根目錄是/var/ftp。 如果要修改這個目錄位置,可以更改/etc/passwd 文件: [root@singledb ftp]# cat /etc/passwd grep ftp ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin 創建一個用戶來訪問FTP,並指定該用戶的FTP 目錄: [root@singledb u02]# useradd -d /u02/qsftp qs [root@singledb u02]# passwd qs Changing password for user qs. New UNIX password: BAD PASSWORD: it is WAY too short Retype new UNIX password: passwd: all authentication tokens updated successfully. 這里指定的是/u02/qsftp 這個目錄,要注意個目錄的許可權。 更改用戶不能telnet,只能ftp: usermod -s /sbin/nologin username //用戶只能ftp,不能telnet usermod -s /sbin/bash username //用戶恢復正常 禁止用戶ssh登陸 useradd username -s /bin/false 更改用戶主目錄: usermod -d /bbb username //把用戶的主目錄定為/bbb 然後用qs這個用戶就可以訪問了。 以上只是一些簡單的設置。 在用戶許可權這塊還有很多內容可以研究。 比如特定用戶的特定許可權。 安全性等。 以後在研究了。
❼ 如何在虛擬機上的Linux系統配置FTP服務,跟Windows建立連接傳輸文件
在虛擬機上的Linux系統配置FTP服務,跟Windows建立連接傳輸文件的具體操作步驟如下:
1、在電腦上下載並安裝好小型FTP伺服器(Quick Easy FTP Server) 軟體,打開進行設置用戶名,用於遠程登錄。
❽ linux系統有哪些快捷鍵
CentOS 6.4 中可以通過系統->首選項->鍵盤快捷鍵來設置快捷鍵,如圖所示。例如可將運行終端的快捷鍵設為Ctrl+Alt+T。
Ctrl + u 刪除游標之前到行首的字元
Ctrl + k 刪除游標之前到行尾的字元
Ctrl + c 取消當前行輸入的命令,相當於Ctrl + Break
Ctrl + a 游標移動到行首(ahead of line),相當於通常的Home鍵
Ctrl + e 游標移動到行尾(end of line)
Ctrl + f 游標向前(forward)移動一個字元位置
Ctrl + b 游標往回(backward)移動一個字元位置
Ctrl + l 清屏,相當於執行clear命令
Ctrl + r 顯示:號提示,根據用戶輸入查找相關歷史命令(reverse-i-search)
Ctrl + w 刪除從游標位置前到當前所處單詞(word)的開頭
Ctrl + t 交換游標位置前的兩個字元
Ctrl + y 粘貼最後一次被刪除的單詞
Ctrl + Alt + d 顯示桌面
Alt + b 游標往回(backward)移動到前一個單詞
Alt + d 刪除從游標位置到當前所處單詞的末尾
Alt + F2 運行
Alt + F4 關閉當前窗口
Alt + F9 最小化當前窗口
Alt + F10 最大化當前窗口
Alt + Tab 切換窗口
Alt +按住左鍵 移動窗口(或在最下面的任務欄滾動滑鼠滑輪) 更多介紹可查閱《Linux就該這么學》。
❾ Linux中的網路配置怎麼設置
設置網路地址:
cat/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=statics
HWADDR=00:0C:29:13:D1:6F
ONBOOT=yes
TYPE=Ethernet
IPADDR=192.168.0.212
NETMASK=255.255.255.0
BOOTPROTO=statics :表示使用靜態IP地址
ONBOOT=yes:表示開機時,啟動這個網卡。
取動態IP地址地址
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
設置好IP地址,現在還不能生效哦,要重新啟動網卡才可以。
Ifconfig <網路介面名稱> network <子網掩碼>
例:# ifconfig eth0 192.168.1.222 netmask 255.255.255.0
註:手工配置linux網路只限於臨時使用,配置不保存。
擴展:# ifconfig eth0:1 10.0.0.1 netmask 255.0.0.0 一塊網卡配置多個子ip地址。
# ifconfig eth0 hw ether MAC地址 修改網卡的mac地址,
#/etc/rc.d/init.d/networkstart啟動network
#/etc/rc.d/init.d/networkstop停止network
#/etc/rc.d/init.d/networkrestart重啟network
主機名稱配置文件,修改主機名
/etc/sysconfig/network
例:# vi /etc/sysconfig/network 使用vi編輯器打開主機名配置文件。
#vi/etc/sysconfig/network
NETWORKING=yes 網路是否可用。
HOSTNAME=xxxx xxxx為新設置的主機名。
本地主機名稱解析文件
/etc/hosts
Hosts 和 DNS具有類似的主機名稱解析功能
域名伺服器配置文件
/etc/resolv.conf
最多可以設置3行,前面的生效 有些看似很復雜的操作,可能幾個命令就解決了,建議多學習些Linux命令
❿ 紅帽 linux 無法成功安裝
正確安裝 VMWARE TOOLS步驟如下:
1、以ROOT身份進入LINUX
2、按下 CTRL+ALT組合鍵,進入主操作系統,點擊VMWARE狀態欄安裝提示,或者點擊 SETTING菜單下的ENABLE VMWARE TOOLS子菜單。
3、確認安裝VMWARE TOOLS。
這時我們並沒有真正的安裝上了VMWARE TOOLS軟體包,如果您點擊菜單:DEVICES,您就會發現光碟機的菜單文字變為:ide1:0-> C:Program FilesVMwareVMware WorkstationProgramslinux.iso,這表示VMWARE將LINUX的ISO映象文件作為了虛擬機的光碟
4、滑鼠點擊LINUX界面,進入LINUX。
5、運行如下命令,注意大小寫。
mount -t iso9660 /dev/cdrom /mnt
載入CDROM設備,這時如果進入 /mnt 目錄下,你將會發現多了一個文件:vmware-linux-tools.tar.gz。這就是WMWARE TOOLS的LINUX軟體包,也就是我們剛才使用WINISO打開LINUX.ISO文件所看到的。
cp /mnt/vmware-linux-tools.tar.gz /tmp
將該軟體包拷貝到LINUX的 TMP目錄下。
umount /dev/cdrom
卸載CDROM。
cd /tmp
進入TMP目錄
tar zxf vmware-linux-tools.tar.gz
解壓縮該軟體包,默認解壓到vmware-linux-tools目錄下(與文件名同名)。
cd vmware-linux-tools
進入解壓後的目錄
./install.pl
運行安裝命令。
這時install提示你是否需要備份以前的配置文件,建議選擇"y"。
等待INSTALL運行完成後,這時鍵入 START 命令,是不是可以看到漂亮的LINUX圖形界面了?***********************************************************************************
第二篇
在WindowsXP上安裝VMWare和在win2000上安裝沒什麼區別,按照步驟來就行,
配置linux運行環境的時候,如果你真想玩,就別太省硬碟空間,反正你也有幾十個G,
分出兩個G給Linux也不算過分,如果你有兩個以上的光碟機設備,比如刻錄機什麼的,
別忘了在環境里設置一下啟動順序,有光碟機,刻錄機就省著點用吧
在環境里,對虛擬網卡有多種設置,看你的需要,如果只想自己連自己,可選Host-only,
畢竟要用Linux直接上網的不多,你要自己設定WindowsXP里的對應設備的IP,和Linux里的IP.
不過如果選擇Bridged,通常Linux可以自動取得IP,如果你的寬頻提供商能提供自動IP分配的話。
可我在Linux里上網總感覺字體很難看,而且我還是喜歡NetCaptor,方便!
在VMWare里安裝Linux和在實際機器上安裝過程沒什麼區別,虛擬環境設置成光碟機啟動按步驟來,就可以了,
注意把光碟放到你設置的那個光碟機里。
安裝時最好使用text方式,反正我追求安裝速度。
出現Linux登錄提示符也別高興的太早了,要啟動XWindow也要費周折,VMWare網站上有XWindow的專用驅動,
你要去下載回來,按照網站上的說明修改XWindow的配置文件,通常這樣還是不行的,我的大部分時間都花在這上面了,
後來安裝了VMware tools才能啟動XWindow,建議你在裝完VMware的驅動,修改完配置文件,就立刻安裝VMware tools,
少走很多彎路。
到現在,你可以一台機器同時當兩台使了,在WinXP下用你的Telnet工具登錄到你自己的Linux上看看吧,體驗一下遠程訪問,
注意,Linux有火牆設置,而且默認很多服務沒有開,先進Linux里設置一下就可以了。
第三篇http://www.gamerhome.net/main/jingtai/62/73064.htm
以下是按總結的在XP和VMware Workstation 4.5.2下安裝LINUX RED HAT 9 的要點。為了記錄准確起見,偶刪除了本已裝好的VMWare下的RED HAT和VMWare下的虛擬機,重新設置虛擬機和安裝RED HAT 9,一邊設置/安裝一邊同時寫下了以下的內容。之所以要這樣,是因為對初學者來說,一個細小步驟/細節的省略或不清楚,都可能導致整個設置/安裝過程的停頓。
這個安裝是藉助VMWARE在XP下進行的LINUX安裝,但我推測,在純PC系統下的LINUX安裝不會有太多的不同。若果真如此,我們就完全可以說:RED HAT 9的安裝和WINDOWS的安裝一樣地簡單。
一、VMware Workstation 4.5.2的設定要點
1.先安裝好VMware Workstation 4.5.2(俺用的是E文版)。點help下的enter serial number,輸入注冊碼(否則程序不能用)。
2。選主窗口中的New Virtual Machine, 連按兩個"下一步"之後,選"linux",並在下面的下拉選單里選自己的linux 版本,然後按"下一步";
3。按"browse"選擇虛擬機在XP下的所在目錄。默認的目錄是
C:document. and SettingsqMy document.My Virtual MachinesRed Hat Linux
但我覺得最好不要和XP同在C盤上。另外,虛擬機目錄所在的盤要有足夠的空間,因為安裝好的RED HAT 9本身就有近1.8G。定好虛擬機目錄後按"下一步"。
4。選擇適當的網路連接。按"下一步"。
5。這一步是指定虛擬盤的容量,默認的是4G。俺加到6G後按"完成"。界面上出現了虛擬機,有內存、硬碟、光碟機、軟碟機、網卡、USB控制器、聲頻適配器。界面的左部是"start this virtual machine"和"edit virtual machine setting"兩個命令。點"edit virtual machine setting"命令可以添加部件。具體步驟是在彈出的界面上點"ADD",然後選所要添加的部件。要注意的是,如果添加硬碟後又去掉(remove)硬碟,則好象並不刪出XP目錄下的這個硬碟項。具體情況還是問有經驗的人吧。
二、啟動VMware Workstation 4.5.2中的虛擬機以及安裝RED HAT 9
1。啟動之前,首先確定你的RED HAT 9是光碟還是虛擬光碟文件。我是在http://princo.org:8080/linux/redhat/9.0/iso/下載的RED HAT 9。
這個網站目錄下共有7個文件,下載其中的3個帶"386"字樣的應該就可以了。這是虛擬光碟版的RH9。
2。若使用虛擬光碟版的RED HAT 9,要在啟動VMWARE虛擬機前先裝上虛擬光碟,方法是:
1)雙擊VMWare界面右部的光碟機CD-ROM圖標,
2)在彈出的對話框中選"Use ISO image",
3)按"Browse",選你下載好的3個光碟文件中的第一個(注意:在後面的安裝過程中還要重復步驟2)和3)以選擇這3個光碟文件中的另2個),然後按"OK"。
3。現在可以啟動虛擬機了,就是點"start this virtual machine"命令,按OK,VMWARE的窗口裡就出現了虛擬機啟動的畫面。
要注意的是游標在XP界面和VMWARE界面間的切換方法。游標從XP到VMWARE,只要在VMWARE窗口上點滑鼠即可。從VMWARE回到XP,則要按CTRL+ALT。
4。RED HAT的光碟自動進入安裝程序的界面。先問你要不要測光碟機,我選不要;具體方法是:在VMWARE窗口上按一下滑鼠,再按鍵盤上的右箭頭鍵,然後回車。
5。然後,在選擇語言滑鼠等之後,安裝程序問是否要自動分區(Aotumatic Partitioning),我直接點的"Next"。下一個界面中有關於Aotumatic Partitioning的3種選擇,我選第3個"保持所有分區並使用已有的未使用空間"(keep all partitions and use existing free space)。然後我是連點NEXT。
5。選完系統時間之後,安裝程序要求設置root (administrator)密碼,中文直譯是根(管理員)密碼。設好後,連點幾個"NEXT",就開始安裝了。
6。一段安裝過後(10分鍾或更長吧),安裝程序提示換第二張光碟,這時新手們可能感到不知所措了。正確的方法是,找到VMWARE窗口右下角邊上的4個小圖標,雙擊其中左數第二個(就是光碟機圖標),就會出現上面步驟2.2中提到的那個對話框,按"Browse",選你下載好的3個光碟文件中的第二個,按OK,再到VMWARE窗口中按OK,就完成了換第二張盤的工作。
7。在提示換第三張盤時,按步驟6的方法換第三張盤。
8。第三張讀完後,系統問是否做啟動盤,隨便啦(俺沒做),然後就是顯卡之類的,俺都是默認。最後選一個"EXIT",VMWARE內系統重啟。
9。重啟後,系統提示你可以開一個個人帳號(personal account)和密碼。注意,雖然這里不開帳號也能過,但實際上是不行的,你必須在這里起一個戶名和密碼,因為再啟動時你必須提供personal account和密碼,否則不給你開機。然後是選日子和試聽音效卡(第一次聽到LINUX的聲音,不錯地呀)。然後問你是否注冊,俺選NO(VMWare下嗎,不過玩一玩而已啦)。接著又問有無附加安裝,先不裝吧,把系統搞定了先,所以直接按"FORWARD"。VMWARE內系統重啟。
10。啟動後,系統問用戶名和密碼。輸入在步驟9中開的戶名和密碼即可(沒有的不行!)然後,就是RED HAT 9的界面。安裝大功告成啦!!!