歡迎您光臨本站 註冊首頁

Linux常用命令和伺服器配置

←手機掃碼閱讀     火星人 @ 2014-03-29 , reply:0


一、 添加用戶useradd命令

例子:

#useradd ?m ?g users ?G wheel,sales ?s /bin/tcsh ?c 「a user」 myname

#useradd -c "ftp Administrator" -d /var/ftp/ -G ftpAdmin -s /sbin/nologin -r ftpAdmin

-m 自動創建用戶的主目錄,並把框架目錄(/etc/skel)文件複製到用戶目錄上。

-g 設置基本組,用戶將在該組中。

-G 把用戶加到所有逗號間隔的分組中。

-s 制定使用的shell。

-c 描述信息。

-d 為賬號設置主目錄。

-r 系統帳號,無需再/home下創建主目錄。

最後的是用戶名

二、 指定口令(密碼)passwd

例子: #passwd 用戶名

回車就會提示輸入密碼了。

三、 刪除用戶userdel

例子: #userdel 用戶名

#userdel ?r 用戶名

-r 刪除其主目錄(/home/…..)

四、 文件系統命令

4.1 fdisk命令

(1)fdisk ?l :顯示硬碟上的所有分區。既分區類型(FAT32、Ext3)。

(2)df ?h :顯示文件系統是如何掛載的。

(3)fdisk /dev/hdb1 :格式化第二個IDE磁碟

4.2 mount命令掛載文件系統

(1)mount (不使用參數)查看系統掛載情況。

(2)mount /mnt/cdrom :掛載光碟機,可用cd /mnt/cdrom 后ls查看光碟上的內容。

(3)mount /mnt/floppy :掛載軟盤,可用cd /mnt/floppy 后ls查看軟盤上的內容。

2、3中可以使用/dev/cdrom和/dev/fd0代替掛載點,得到同樣的效果!

(4)mount ?t msdos /dev/fd0 /mnt/floppy :掛載DOS軟盤到/mnt/floppy下。

(5)掛載Windows分區

#fdisk -l :列出硬碟分區。

#mkdir /mnt/win :創建一個目錄,用於掛載。

#mount -t vfat /dev/hda1 /mnt/win :假設Windows在第一個IDE硬碟的第一個分區上。

註:可以使用?t auto 參數令系統自動監測文件類型!

-r 以只讀方式掛載。

-w 讀寫方式掛載。

4.3 umount命令卸載文件系統

(1) umount /mnt/floppy 將設備(如/dev/fd0)從掛載點/mnt/floppy卸載。也可以使用下列方式完成這一工作: umount /dev/fd0

為了使該分區對於Linux永久可用,需在/etc/fstab文件中添加如下一行:

/dev/hda1 /mnt/win vfat defaults 0 0

五、 文件相關命令

5.1 文件許可權chmod

例子:

chmod 777 files -〉rwxrwxrwx

chmod 755 files -〉rwx r-x r-x

chmod 644 files -〉rw- -r- -r-

chmod 000 files -〉- - - - - - - - -

chmod u+x g+w o+r file(給file以擁有者可執行、同組可寫、其他人可讀取的權利)



$ chmod ?R 777 /tmp/test :更改目錄中所有文件和目錄的許可權(所有許可權)。

$ chmod ?R 664 /tmp/test :關閉執行許可權。

5.2 文件所有權

chown user1 file(把file分配給user1)

5.3 移動文件mv

例子: mv abc def 本文件abc移動更名為def。

六、 iptables命令面面觀

外網:eth0 123.45.67.89

內網:eth1 10.0.0.1 LAN上的計算機IP地址都在10.0.0.2~~10.0.0.254之間。

(1)一個rc.local的例子,在rc.local中加入如下命令

echo 1 > /proc/sys/net/ipv4/ip_forward #啟動IP轉發

echo 1 > /proc/sys/net/ipv4/ip_dynaddr #啟動動態IP地址

#Policies(Default)設置默認策略為拒絕

iptables -P INPUT DROP

iptables -P OUTPUT DROP

iptables -P FORWARD DROP

#User-defined chain for ACCEPTed TCP packets用戶自定義鏈,鏈名為「okay」

iptables -N okay

iptables -A okay ?p TCP - - syn ?j ACCEPT

iptables -A okay ?p TCP -m state - -state ESTABLISHED,RELATED ?j ACCEPT

iptables -A okay ?p TCP ?j DROP

#INPUT chain rules

# Rules for incoming packets from LAN

iptables -A INPUT -p ALL -i eth1 -s 10.0.0.0/8 -j ACCEPT #LAN中的地址可接受

iptables -A INPUT -p ALL -i lo -s 127.0.0.1 -j ACCEPT #允許接受本身的數據包

iptables -A INPUT -p ALL -i lo -s 10.0.0.1 -j ACCEPT #允許接受本身的數據包

iptables -A INPUT -p ALL -i lo -s 123.45.67.89 -j ACCEPT #允許接受本身的數據包

iptables -A INPUT -p ALL -i eth1 ?d 10.0.0.255 -j ACCEPT #允許接受LAN內的廣播包

# Rules for incoming packets from the Internet

# packets for established connections

iptables -A INPUT -p ALL -d 123.45.67.89 -m state ?state ESTABLISHED,RELATED ?j ACCEPT

# TCP rules 由okay鏈處理

iptables -A INPUT -p TCP -i eth0 -s 0/0 --destination-port 21 ?j okay

iptables -A INPUT -p TCP -i eth0 -s 0/0 --destination-port 22 ?j okay

iptables -A INPUT -p TCP -i eth0 -s 0/0 --destination-port 80 ?j okay

iptables -A INPUT -p TCP -i eth0 -s 0/0 --destination-port 113 ?j okay

# UDP rules 定義開放的UDP埠

iptables -A INPUT -p UDP -i eth0 -s 0/0 --destination-port 53 ?j ACCEPT

iptables -A INPUT -p UDP -i eth0 -s 0/0 --destination-port 2074 ?j ACCEPT

iptables -A INPUT -p UDP -i eth0 -s 0/0 --destination-port 4000 ?j ACCEPT

# ICMP rules

iptables -A INPUT -p ICMP -i eth0 -s 0/0 --destination-port 8 ?j ACCEPT

iptables -A INPUT -p ICMP -i eth0 -s 0/0 --destination-port 11 ?j ACCEPT

# FORWARD chain rules

#Accept the packets we want to forward

iptables -A FORWARD -i eth1 -j ACCEPT

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# OUTPUT chain rules

# Only output packets with local addresses (no spoofing)

iptables -A OUTPUT -p ALL -s 127.0.0.1 -j ACCEPT

iptables -A OUTPUT -p ALL -s 10.0.0.1 -j ACCEPT

iptables -A OUTPUT -p ALL -s 123.45.67.89 -j ACCEPT

# POSTROUTING chain rules 網關的IP偽裝

iptables -t nat ?A POSTROUTING ?o eth0 ?j SNAT ?to-source 123.45.67.89



(2)網關的IP偽裝:靜態地址 使用SNAT,動態地址(撥號) 使用MASQUERADE

例子:

MASQUERADE必須提供介面名(eth0,ppp0等)來指明路徑,好像靜態地址也可以使用MASQUERADE:

iptables -t nat -A POSTROUTING ?o eth0 ?j MASQUERADE

SNAT也必須指明實際的IP如下所示:

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 12.12.12.12

(3)埠轉發

例子:將對防火牆計算機(-d 15.15.15.15)的所有Web服務重定向到LAN上的某台計算機(10.0.0.25)

iptables -t nat -A PREROUTING -p tcp -d 15.15.15.15 ?dprot 80 ?j DNAT ?to-destination 10.0.0.25



七、 IP地址類型(第一部分數字的範圍)

A類地址:0~127;可容納計算機數量為 256*256*256。子網掩碼255.0.0.0。

B類地址:128~191;可容納計算機數量為 256*256。子網掩碼255.255.0.0。

C類地址:192~233;可容納計算機數量為 250個。0和255不能被指定為主機地址。子網掩碼255.255.255.0。

C類私有IP地址 192.168.0.0~192.168.255.255

八、 ifconfig

ifconfig :判斷網路連接情況。

ifconfig eth0 up :啟動eth0介面。

九、 配置網卡

配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0用vi編輯即可。例子如下

DEVICE=eth0 #設備名,與文件同名。

ONBOOT=yes #在系統啟動時,啟動本設備。

BOOTPROTO=static

IPADDR=202.118.75.91 #此網卡的IP地址

NETMASK=255.255.255.0 #子網掩碼

GATEWAY=202.118.75.1 #網關IP

MACADDR=00:02:2D:2E:8C:A8 #mac地址

十、 FTP服務

10.1 使用setup命令開啟vsftpd服務進程。

10.2然後修改文件/etc/xinetd.d/vsftpd。(但vsftpd是依附於xinetd.d運行時2、3有效)

(1)把disable=yes改為=no。

(2)配置每個客戶機的最大連接數:

在配置文件/etc/xinetd.d/vsftpd 的{}中添加如下的配置語句:

per_source = 數值。例如:per_source = 5 表示每個客戶機的最大連接數為5。

(3) 配置伺服器總的併發連接數:

在配置文件/etc/xinetd.d/vsftpd 的{}中添加如下的配置語句:

instances = 數值。例如:instances = 200 表示FTP 伺服器總共支持的最高連接數為200。

(4)當vsftpd單獨運行時:要配置獨立運行的vsftpd很簡單,只需要在前面的主配置文件的基礎上添加如下的配置即可。

設置listen=YES :指明vsftpd 以獨立運行方式啟動。

設置max_clients=200 :指明伺服器總的併發連接數

設置max_per_ip=4 :指明每個客戶機的最大連接數。





10.3 配置/etc/vsftpd.conf(redhat9 是/etc/vsftpd/vsftpd.conf)文件。



# 允許真實用戶(在系統中有賬號的用戶)訪問

local_enable=YES

# 給真實用戶寫許可權

write_enable=YES

# 真實用戶上傳文件的掩碼設為022。這樣真實用戶上傳后的文件許可權為755(rwxr-xr-x),即文件所有者可讀寫執行、同組成員可讀可執行、

# 系統中的其它用戶可讀可執行。

local_umask=022

# 允許匿名用戶訪問。匿名用戶在系統中的賬號是ftp

anonymous_enable=YES

# 匿名用戶上傳文件的掩碼設為000。這樣文件上傳后的許可權為777(rwxrwxrwx),即所有人都可以讀寫執行。

anon_umask=000

# 匿名用戶可上傳、可創建目錄。一下3行只有設置了write_enable=YES才有效。

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_world_readable_only=NO

# 如果想要讓匿名用戶有刪除的許可權可以加上如下代碼

# anon_other_write_enable=YES

# 進入每個目錄都顯示特定提示。這些提示放在各個目錄下.message文件中。

dirmessage_enable=YES

# 當用戶登陸ftp伺服器時,不管是否登陸成功都顯示如下信息。

ftpd_banner=Welcome to NiHao FTP service.

# 使用日誌記錄上傳和下載。

xferlog_enable=YES

# 日誌文件的位置

#xferlog_file=/var/log/vsftpd.log

# 日誌使用標準fpd格式

xferlog_std_format=YES

# ftp服務的埠是20

connect_from_port_20=YES

# 用戶使用ftp訪問伺服器時,把他們的登陸目錄作為它們在ftp中看到的目錄,這稱為chroot。

# 這樣用戶就無法訪問他們登陸目錄以外的內容,大大增強了安全性。匿名用戶的登陸目錄是/var/ftp/

chroot_list_enable=YES

# 文件/etc/vsftpd.chroot_list中的用戶不chroot。

chroot_list_file=/etc/vsftpd.chroot_list

# 同時最多允許5個用戶登陸。

max_clients=5 #有些不支持此選項,註釋掉即可。

# ftp服務的密碼驗證模塊。

pam_service_name=vsftpd

# listen=YES #如果是獨立運行的則加此項(redhat9)。

#tcp_wrappers=YES #如果是獨立運行的則加此項(redhat9)。



10.4重新啟動xinetd服務,你就可以匿名訪問你的ftp伺服器了。

下面我們來建立一個ftp管理員賬號

在Linux ftp服務中,用戶的許可權受到雙重限制。一是Linux文件系統本身的許可權限制。每個文件的訪問許可權用rwxrwxrwx形勢表示。每個用戶只能做文件全縣允許的操作。二是ftp配置的限制。系統允許的操作,如果在ftp的配置文件中沒有被允許,用戶還是不能作這個操作。如:某個文件的許可權為rwxrwxrwx,即系統認為任何人都有讀寫執行的權利。如果vsftpd.conf中不允許匿名用戶寫,匿名用戶還是不能修改這個問安。

對於目錄文件的讀許可權,意味著可以讀出這個目錄中的文件信息。目錄文件的寫許可權,意味著可以在這個目錄下建立、刪除、重命名文件。

用命令groupadd -r ftpAdmin添加一個ftp管理員組。其中-r表示這是一個系統組。

用命令useradd -c "ftp Administrator" -d /var/ftp/ -G ftpAdmin -s /sbin/nologin -r ftpAdmin添加一個管理員用戶ftpAdmin。其中

-c "ftp Administrator" 是對這個用戶的描述

-d /var/ftp/ 是這個用戶的登陸目錄

-g ftpAdmin 是這個用戶所在的組

-s /sbin/nologin 是這個用戶登陸時所用的shell。這個shell命令的功能極其弱,以至於不能用telnet登陸。也就是說這個管理員只能噹噹垃圾清掃員。(呵呵。好沒面子的管理員)

-r 表示這是個系統賬號,不用為它建立登陸目錄。

建好管理員以後把incoming目錄的管理權給他。

chown ftpAdmin /var/ftp/incoming :把此目錄所有者設為ftpAdmin。

chmod 755 /var/ftp/incoming :把目錄的許可權設為所有者可讀寫執行,同組用戶可讀、可執行,所有人可讀、可執行。

這樣,我們的管理員就可以開始管理了。

10.5 配置vsftpd 允許匿名用戶上傳

//修改vsftpd 的主配置文件/etc/vsftpd.conf

# vi /etc/vsftpd.conf

//將如下兩行前的#刪除

//① #anon_upload_enable=YES 允許匿名用戶上傳

//② #anon_mkdir_write_enable=YES 開啟匿名用戶的寫和創建目錄的許可權

//若要以上兩項設置生效,同時還要求:

//(1) write_enable=YES

//(2) 匿名用戶對文件系統的上傳目錄具有寫許可權

//添加如下的配置語句

// anon_world_readable_only=NO

//上面的配置語句用於放開匿名用戶的瀏覽許可權

//修改後存檔退出vi

//

//創建匿名上傳目錄

# mkdir /var/ftp/incoming

# 修改上傳目錄的許可權

# chmod o+w /var/ftp/incoming/

#

//重新啟動xinetd

# service xinetd restart



十一、 Web服務(httpd)

同樣在setup中選中httpd服務。www服務不需要xinetd作為它的代理進程。httpd這個進程一直在系統中運行。www服務的默認目錄是/var/www/html。只要把主頁放到這個目錄下就可以訪問了。

我們可以用建立ftp管理員的辦法建立一個www管理員wwwAdmin。只要把它的登陸目錄設為/var/www/html即可。

/etc/init.d/httpd start #啟動服務

/etc/init.d/httpd restart #重新啟動

其配置文件為/etc/httpd/conf/httpd.conf

[火星人 ] Linux常用命令和伺服器配置已經有539次圍觀

http://coctec.com/docs/linux/show-post-204649.html