您好,登錄后才能下訂單哦!
3,1nfs部署和優化-1
NFS == network file system
假如有三臺機器A, B, C,它們需要訪問同一個目錄,目錄中都是圖片,傳統的做法是把這些圖片分別放到A, B, C. 但是使用NFS只需要放到A上,然后A共享給B和C即可。訪問的時候,B和C是通過網絡的方式去訪問A上的那個目錄的。實現簡單訪問遠程文件。
安裝NFS
yum install -y nfs-utils
先創建一個簡單的NFS服務器
vim /etc/exports
寫下:
/mnt 192.168.137.0/24(rw,sync,all_squash,anonuid=501,anongid=501)
共享目錄 /mnt ,共享給137網段,rw可讀可寫,sync共享同步,限定所有使用者,并且限定的uid和gid都為501。(no_root_squash為root)(ls -l /opt )
:wq
啟動NFS服務
/etc/init.d/rpcbind start
/etc/init.d/nfs start
客戶端上掛載nfs
yum install -y nfs-utils
showmount -e 192.168.137.10 (服務端的ip),查看該ip共享的目錄和網段或網址
在客戶端上掛載服務端的nfs
mount -t nfs 192.168.137.10: /mnt /opt 掛載到/opt下
df -h 查看共享的目錄
客戶端上修改/opt的內容可能顯示權限不夠
在服務端上把/mnt 的權限修改為777
chmod 777 /mnt
3,2NFS部署和優化-2
/etc/init.d/nfs restart 重啟nfs
exportfs -arv 重啟nfs
umount /opt/ 卸載
mount -t nfs -o nolock nfsevers=3 192.168.137.10:/mnt /opt 優化掛載
3,3pureftp部署和優化-1
FTP ==file transfer protocol
可用于windows或者linux系統
服務器間上傳或者下載文件
軟件 pure-ftpd
下載 pure-ftpd
cd /usr/local/src/
wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.42.tar.bz2
安裝pure-ftpd
tar jxf pure-ftpd-1.0.42.tar.bz2
cd pure-ftpd-1.0.42
./configure \ --prefix=/usr/local/pureftpd \ --without-inetd \ --with-altlog \ --with-puredb \ --with-throttling \ --with-peruserlimits \ --with-tls
make
make install
修改配置文件
mkdir -p /usr/local/pureftpd/etc/ 配置文件所在路徑
cd configuration-file
cp pure-ftpd.conf /usr/local/pureftpd/etc/pure-ftpd.conf cp pure-config.pl /usr/local/pureftpd/sbin/pure-config.pl chmod 755 /usr/local/pureftpd/sbin/pure-config.pl
vim /usr/local/pureftpd/etc/pure-ftpd.conf
刪除掉所有
添加
ChrootEveryone yes BrokenClientsCompatibility no MaxClientsNumber 50 Daemonize yes MaxClientsPerIP 8 VerboseLog no DisplayDotFiles yes AnonymousOnly no NoAnonymous no SyslogFacility ftp DontResolve yes MaxIdleTime 15 PureDB /usr/local/pureftpd/etc/pureftpd.pdb LimitRecursion 3136 8 AnonymousCanCreateDirs no MaxLoad 4 AntiWarez yes Umask 133:022 MinUID 100 AllowUserFXP no AllowAnonymousFXP no ProhibitDotFilesWrite no ProhibitDotFilesRead no AutoRename no AnonymousCantUpload no PIDFile /usr/local/pureftpd/var/run/pure-ftpd.pid MaxDiskUsage 99 CustomerProof yes
:wq
建立賬號
mkdir /tmp/ftp
chown -R user3 /tmp/ftp 映射用戶user3
/usr/local/pureftpd/bin/pure-pw useradd ftp_user1 -uuser3 -d /tmp/ftp/
打上密碼
/usr/local/pureftpd/bin/pure-pw mkdb 創建用戶信息數據庫文件
/usr/local/pureftpd/bin/pure-pw list 列出當前賬號
/usr/local/pureftpd/bin/pure-pw userdel ftp_user2 刪除賬號的命令
/usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf 啟動pure-ftpd
3,4 pureftp部署和優化-2
測試pure-ftpd
客戶端
yum install -y lftp
lftp ftp_user1@127.0.0.1 賬號密碼登陸(服務端ip)
touch /tmp/ftp/123.txt
ls
get 12.txt 下載文件12.tet
服務端也可以上傳文件
lftp ftp_user1@127.0.0.1 賬號密碼登陸(服務端ip)
put 12.txt 上傳文件
命令 ftp127.0.0.1 登陸ftp,與lftp有點區別
windows下操作ftp:安裝ftp軟件
3,5vsftp部署和優化-1
vsftp是centos自帶的ftp軟件
安裝vsftp
yum install -y vsftpd
啟動 /etc/init.d/vsftpd start
(若啟動失敗,有可能21端口被占用了
netstat -lnp 查看端口
若發現21端口被其他進程占用,停用該進程
killall pure-ftpd)
客戶端登陸
lftp user1@127.0.0.1
可以cd到任何目錄,沒有限制,非常危險
vim /etc/vsftpd/vsftpd.conf 進入到配置文件
把chroot_local_user=yes 前的#刪掉
/etc/init.d/vsftpd restart
lftp user1@127.0.0.1
cd /etc
進入不了,被限制了
pwd
ls
只能訪問當前目錄
3,6 vsftp部署和優化-2
創建虛擬用戶
useradd virftp -s /sbin/nologin
vim /etc/vsftpd/vsftpd_login
test1 (賬號)
111222aaa(密碼)
test2(賬號)
aaa111ddd(密碼)
:wq
chmod 600 /etc/vsftpd/vsftpd_login
創建二進制的庫文件
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
創建虛擬賬號
mkdir /etc/vsftpd/vsftpd_user_conf
cd /etc/vsftpd/vsftpd_user_conf
vim test1
local_root=/home/virftp/test1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
:wq
建立配置文件中提及的test1的家目錄
mkdir /home/virftp/test1
chown -R virftp:virftp /home/virftp/test1
修改驗證文件
vim /etc/pam.d/vsftpd
在最開頭添加兩行
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
:wq
修改vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
nopriv_user=vsftpd
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to FTP service.
listen=YES
chroot_local_user=YES
pam_service_name=vsftpd
userlist_enable=YES
在最后行添加
tcp_wrappers=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
:wq
啟動vsftpd服務
/etc/init.d/vsftpd start
lftp test1@127.0.0.1
外部瀏覽器登陸
ftp://127.0.0.1
3,7 samba 部署和優化-1
samba 網絡管理員使用的比較多
linux共享 windows訪問
安裝samba
yum install -y samba samba-client
vim /etc/samba/smb.conf 配置文件
3,8 samba 部署和優化-2
關于samba的實踐
1.共享一個只讀的目錄,任何人都訪問,不需要輸入用戶名和密碼
vim /etc/samba/smb.conf
security = share
workgroup =WORKGROUP
在最后增加一段
[aming] comment = share all path = /tmp/sambadir browseable = yes public = yes writable = no
:wq
/etc/init.d/smb start 開啟
mkdir /tmp/sambadir 創建目錄
cp /etc/passwd /tmp/sambadir/1.txt
mkdir /tmp/sambadir/test chmod 777 /tmp/sambadir/test
windows下訪問samba共享的文件和路徑
打開運行
輸入\\192.168.11.160
打開看到共享的test路徑和etc/passwd的內容,而且test內不可寫
linux下訪問samba
smbclient //192.168.11.160/aming
enter
ls
另一種方式 掛載
yum install -y cifs-utils
mount -t cifs //192.168.11.160/aming /opt/
df-h
cd /opt/
ls
3,9 samba 部署和優化-3
實踐2:共享一個目錄,使用用戶名和密碼登錄后才可以訪問,要求可以讀寫
vim /etc/samba/smb.conf
把剛才在最后添加的[aming]整段刪掉
security = user
再最后添加一段
[aminglinux] comment = share for users path = /tmp/sambadir browseable = yes writable = yes public = no
:wq
創建用戶和密碼
useradd smbuser1 創建用戶
pdbedit -a smbuser1 增加用戶
/etc/init.d/smb restart
linux下測試
smbclient //192.168.11.160/aminglinux/ -U smbuser1
ls
windows下測試
打開運行
\\192.168.11.160\aminglinux
賬號smbuser1
掛載方式
mount -t cifs -o username=smbuser1,password=密碼 //192.168.11.160/aminglinux /opt/
df -h
ls
4,0 squid服務介紹
squid 代理,×××
cdn 緩存,提速
Squid是比較知名的代理軟件,它不僅可以跑在linux上還可以跑在windows以及Unix上,它的技術已經非常成熟。目前使用Squid的用戶也是十分廣泛的。Squid與Linux下其它的代理軟件如Apache、Socks、TIS FWTK和delegate相比,下載安裝簡單,配置簡單靈活,支持緩存和多種協議。
Squid之所以用的很多,是因為它的緩存功能,Squid緩存不僅可以節省寶貴的帶寬資源,也可以大大降低服務器的I/O. 從經濟角度考慮,它是很多網站架構中不可或缺的角色。
Squid不僅可以做正向代理,又可以做反向代理。當作為正向代理時,Squid后面是客戶端,客戶端想上網不管什么網都得經過Squid. 當一個用戶(客戶端)想要請求一個主頁時,它向Squid發出一個申請,要Squid替它請求,然后Squid 連接用戶要請求的網站并請求該主頁,接著把該主頁傳給用戶同時保留一個備份,當別的用戶請求同樣的頁面時,Squid把保存的備份立即傳給用戶,使用戶覺得速度相當快。使用正向代理時,客戶端需要做一些設置,才能實現,也就是平時我們在IE選項中設置的那個代理。而反向代理是,Squid后面為某個站點的服務器,客戶端請求該站點時,會先把請求發送到Squid上,然后Squid去處理用戶的請求動作。阿銘教你一個特別容易的區分:正向代理,Squid后面是客戶端,客戶端上網要通過Squid去上;反向代理,Squid后面是服務器,服務器返回給用戶數據需要走Squid.
也許你會問,什么時候需要配置正向代理,又什么時候配置反向代理呢?阿銘的觀點是,正向代理用在企業的辦公環境中,員工上網需要通過Squid代理來上網,這樣可以節省網絡帶寬資源。而反向代理用來搭建網站靜態項(圖片、html、流媒體、js、css等)的緩存服務器,它用于網站架構中。
4,1 squid正向代理
安裝
yum install -y squid
vim /etc/squid/squid.conf
把cache_dir前的#刪掉,緩存目錄
在 cache_dir的下一行添加
cache_men 28MB
在refresh_pattern下一行添加
refresh_pattern \.(jpg|png|gif|mp3|mp4|js) 1440 20% 2880 ignore-reload
下一行再添加
visible_hostname aminglinux.com
:wq
/etc/init.d/squid start 啟動
netstat -lnp 查看squid監聽的端口3128
curl測試
curl -x127.0.0.1:3128 www.baidu.com -I (大寫i)
瀏覽器測試
工具--internet選項--連接--局域網設置--高級
192.168.11.160 3128
可以訪問網頁
設置訪問限制
在acl最后一行添加
acl http proto HTTP acl good_domain dstdomain .baidu.com http_access allow good_domain
http_access deny !good_domain
(白名單,只允許訪問baidu.com,黑名單用bad_domain)
:wq
squid -kcheck 檢查配置文件有沒有錯誤
squid -kre 重新加載
curl測試
4,2 squid反向代理
vim /etc/squid/squid.conf
代理百度
http_port 80 accel vhost vport
cache_peer 61.135.169.125 parent 80 0 originserver name=a cache_peer_domain a www.baidu.com (百度源ip+端口+域名)
:wq
/etc/init.d/squid restart
curl -xlocalhost:80 http://www.baidu.com/ 正常
curl -xlocalhost:80 http://www.qq.com/ 不行
反向代理主要用于緩存靜態項,因為諸多靜態項目尤其是圖片、流媒體等比較耗費帶寬,在中國,聯通網訪問電信的資源本例就慢,如果再去訪問大流量的圖片、流媒體那更會慢了,所以如果在聯通網配置一個squid反向代理,讓聯通客戶端直接訪問這個聯通squid,而這些靜態項已經被緩存在了squid上,這樣就大大加快了訪問速度。也許你聽說過CDN, 其實它的設計原理就是這樣的思路。
4,3 tomcat中JDK安裝
用Java寫的網站叫jsp,目前有很多網站使用jsp的程序編寫,所以解析jsp的程序就必須要有相關的軟件來完成。Tomcat就是用來解析jsp程序的一個軟件
Tomcat是一個輕量級應用服務器,在中小型系統和并發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP程序的首選。對于一個初學者來說,可以這樣認為,當在一臺機器上配置好Apache服務器,可利用它響應對HTML 頁面的訪問請求。實際上Tomcat 部分是Apache服務器的擴展,但它是獨立運行的,所以當你運行tomcat時,它實際上作為一個與Apache 獨立的進程單獨運行的
安裝JDK
cd /usr/local/src/
wget http://www.aminglinux.com/bbs/data/p_w_upload/forum/jdk-6u23-linux-i586.bin
mv jdk1.6.0_23 /usr/local/
設置環境變量
vim /etc/profile
JAVA_HOME=/usr/local/jdk1.6.0_23/ JAVA_BIN=/usr/local/jdk1.6.0_23/bin JRE_HOME=/usr/local/jdk1.6.0_23/jre PATH=$PATH:/usr/local/jdk1.6.0_23/bin:/usr/local/jdk1.6.0_23/jre/bin CLASSPATH=/usr/local/jdk1.6.0_23/jre/lib:/usr/local/jdk1.6.0_23/lib:/usr/local/jdk1.6.0_23/jre/lib/charsets.jar export JAVA_HOME JAVA_BIN JRE_HOME PATH CLASSPATH
:wq
source /etc/profile 保存文件后,使其生效
java -version 檢測是否設置正確
4,4 tomcat安裝
安裝Tomcat
cd /usr/local/src/ wget http://www.aminglinux.com/bbs/data/p_w_upload/forum/apache-tomcat-7.0.14.tar.gz
tar zxvf apache-tomcat-7.0.14.tar.gz mv apache-tomcat-7.0.14 /usr/local/tomcat
cp -p /usr/local/tomcat/bin/catalina.sh /etc/init.d/tomcat
vim /etc/init.d/tomcat
在第二行加入以下內容
# chkconfig: 112 63 37 . /etc/init.d/functions JAVA_HOME=/usr/local/jdk1.6.0_23/ CATALINA_HOME=/usr/local/tomcat
:wq
chmod 755 /etc/init.d/tomcat chkconfig --add tomcat chkconfig tomcat on
service tomcat start
ps aux |grep tomcat
瀏覽器中輸入http://192.168.11.160:8080 你會看到tomcat的主界面
4,5 tomcat配置和優化
做一個域名或者改變監聽端口
vim /usr/local/tomcat/conf/server.xml
<Connector port="8080" 改為80
找到</Host>下一行插入新的<Host>內容如下
<Host name="www.123.com" appBase="/data/tomcatweb" unpackWARs="false" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="" docBase="./" debug="0" reloadable="true" crossContext="true"/> </Host> (每一段host代表一個虛擬主機)
:wq
mkdir -p /data/tomcatweb
service tomcat stop service tomcat start
netstat -lnp |grep java 查看java監聽的端口
測試tomcat
vim /data/tomcatweb/111.jsp
<html><body><center> Now time is: <%=new java.util.Date()%> </center></body></html>
:wq
curl -xlocalhost:80 www.123.com/111.jsp
4,6 resin安裝與配置
resin與tomcat相似,都是解析 jsp
下載
cd /usr/local/src/
wget http://www.caucho.com/download/resin-4.0.36.tar.gz
tar zxvf resin-4.0.36.tar.gz
cd resin-4.0.36
./configure --prefix=/usr/local/resin --with-java=/usr/local/jdk1.8.0_31/
make
make install
/etc/init.d/resin start (啟動前先將tomcat關掉)
netstat -lnp |grep java
瀏覽器訪問
192.168.11.160:8080
修改監聽端口
vim /usr/local/resin/conf/resin.properties
將app 8080 改為80(與tomcat相似)
修改虛擬主機
vim /usr/local/resin/conf/resin.xml
在<cluster id="web">內添加
<host id="www.123.com" root-directory="."> <web-app id="/" root-directory="/tmp/resin"/>
</host>
:wq
mkdir /tmp/resin
/etc/init.d/resin stop
/etc/init.d/resin start
netstat -lnp |grep java
測試resin方式與測試tomcat一樣
4,7 mysql主從配置-1
MySQL Replication 又叫做AB復制或者主從復制。它主要用于MySQL的時時備份或者讀寫分離。
http://www.apelearn.com/study_v2/chapter25.html
5,0 DNS介紹
dns = domain name server 域名服務器,解析域名
它是一種將ip地址轉換成對應的主機名或將主機名轉換成與之相對應ip地址的一種服務機制。
其中通過域名解析出ip地址的叫做正向解析,通過ip地址解析出域名的叫做反向解析。 DNS使用TCP和UDP, 端口號都是53, 但它主要使用UDP,服務器之間備份使用TCP。
全世界只有13臺“根”服務器,1個主根服務器放在美國,其他12臺為輔根服務器,DNS服務器根據角色可以分為:主DNS, 從DNS, 緩存DNS服務器,DNS轉發服務器。
/etc/resolv.conf dns的配置文件
5,1 dns安裝配置-1
安裝dns
yum install -y bind
vim /var/named/named.ca
cat /var/named/named.localhost
/etc/init.d/named start 啟動
netstat -lnp |grep named // 查看一下named進程是否監聽了53端口
首先測試正向解析:dig @127.0.0.1 localhost. (dns的ip)
接著測試反解析:dig @127.0.0.1 -x 127.0.0.1 (dns的ip)
cat /etc/resolv.conf 查看dns的ip
5,2 dns安裝配置-2
增加一個域名
vim /etc/named.conf
include下一段添加
zone "123.com" IN {
type master;
file "123.com.zone";
};
在port 53里加上ip192.168.11.160;
:wq
named-checkconf 檢測配置文件有沒有錯誤
vim /var/named/123.com.zone
$TTL 1D
@ IN SOA @ admin.123.com. (
2015010901 ;serial
1D ;refresh
1H ;retry
1W ;expire
3H ) ;minimum
IN NS ns.123.com.
IN MX 5 mail.123.com.
mail IN A 192.168.11.20
ns IN A 192.168.11.160
www IN A 11.11.11.11
bbs IN CNAME www.123.com.
:wq
named-checkzone "123.com" /var/named/123.com.zone 檢測配置文件有沒有錯誤
/etc/init.d/named restart
dig @192.168.11.160 www.123.com 測試
dig @192.168.11.160 bbs.123.com 測試
dig @192.168.11.160 mail.123.com 測試
編輯反解析
vim /etc/named.conf
zone "11.168.192.in-addr.arpa" IN {
type master;
file "11.168.192.zone";
};
:wq
vim /var/named/11.168.192.zone
$TTL 1D
@ IN SOA @ admin.123.com. (
2015010901 ;serial
1D ;refresh
1H ;retry
1W ;expire
3H ) ;minimum
IN NS ns.123.com.
160 IN PTR ns.123.com.
20 IN PTR mail.123.con.
:wq
named-checkzone "11.168.192.in-addr.arpa" 11.168.192.zone
/etc/init.d/named restart
dig @192.168.11.160 -x 192.168.11.160 測試
dig @192.168.11.160 -x 192.168.11.20 測試
5,3 dns安裝配置-3
配置dns的主從
在從服務器上 yum install -y bind
vim /etc/named.conf
zone "abc.com" IN {
type slave;
file "slaves/123.com.zone";
masters { 192.168.11.160; };
};
zone "11.168.192.in-addr.arpa" IN {
type slave;
file "slaves/11.168.192.zone";
masters { 192.168.11.160; };
};
:wq
named: /etc/init.d/named start
在主的配置文件里正反解析zone的file下都要添加兩段
notify yes;
also-notify {192.168.11.20;}; 使主從能立馬同步,該ip為從的ip
在從上測試和之前在主的正反測試一樣
5,4 騰訊企業郵箱免費版
使用第三方郵箱
exmail.qq.com
5,5 iredmail安裝
自己創建郵箱
大家注意: iRedMail版本更新太快,官方下載地址是 http://www.iredmail.com/download.html
下載下來后,解壓壓縮包。
安裝命令是: IREDMAIL_MIRROR='http://42.159.241.31' bash iRedMail.sh
不需要再執行 sed了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。