1. 程式人生 > 實用技巧 >Apache伺服器相關配置

Apache伺服器相關配置

Apache伺服器的簡單配置(基於使用者的訪問控制)

基於賬號的控制

1:安裝apache伺服器所要的安裝包;

httpd-manual-2.2.3-22.el5

httpd-2.2.3-22.el5

httpd-devel-2.2.3-22.el5

mod_ssl-2.2.3-22.el5

2:檢視apache伺服器可配置為文件

Rpm –qa httpd |less

檢視的部分結果

/etc/httpd

/etc/httpd/conf

/etc/httpd/conf.d

/etc/httpd/conf.d/README

/etc/httpd/conf.d/proxy_ajp.conf

/etc/httpd/conf.d/welcome.conf

/etc/httpd/conf/httpd.conf

/etc/httpd/conf/magic

/etc/httpd/logs

/etc/httpd/modules

/etc/httpd/run

/etc/logrotate.d/httpd

3:編輯主配置文件

Vim /etc/httpd/conf/httpd.conf

可以看到這個主配置文件主要分3部分組成

由於我們這裡只做簡單的使用者訪問認證,所以只需要改動327行左右的這句話AllowOverride none,改成AllowOverride all即可。

4改過之後重啟apache伺服器

Service httpd restart

5:在apache伺服器主目錄中建立一個簡單的網頁測試

Cd /var/www/html

Touch index.html

Vim index.html

裡面隨便插入點內容即可例如:

Welcome to this html !!!!

6:建立.htaccess檔案

Vim .htaccess

裡面加入:

authuserfile /var/www/html/.htpasswd (指明賬號的檔案)

authtype basic (採用基本認證方式)

authname "please input your name and passwd"

require valid-user (也可以寫具體的賬號名字)

7:產生賬號庫檔案.htpasswd

第一個賬號要這樣建立

Htpasswd –c .htpasswd zhangsan

接著會提示你輸入密碼

然後輸入密碼

以後的賬號就不用加 –c選項了

Htpasswd .htpasswd lisi

這樣執行過後檢視/var/www/html下的內容會多出一個.htpasswd檔案

ll –a

檢視結果

total 28

drwxr-xr-x 2 root root 4096 Aug 17 18:23 .

drwxr-xr-x 8 root root 4096 Aug 1 05:34 ..

-rw-r--r-- 1 root root 116 Aug 17 17:48 .htaccess

-rw-r--r-- 1 root root 42 Aug 17 17:50 .htpasswd

-rw-r--r-- 1 root root 25 Aug 17 18:17 index.html

8:檢視.htpasswd裡面的內容會發現zhangsan,lisi 兩個賬號(注意這兩個賬號並不是本地賬號庫上的賬號而是apache認證的賬號)

9:進行測試:

用本機測試

Links http://127.0.0.1

在這裡我用其他windows機器測試

結果你會看到一個認證對話方塊讓你輸入使用者名稱和密碼:

輸入使用者名稱密碼後

基於主機的控制

1:編輯/etc/httpd/conf/httpd.conf

vim /etc/httpd/conf/httpd.conf

修改332行左右的

Order allow,deny

Allow from all

假如要控制192.168.100.100主機的訪問那麼改為

Order allow,deny

Allow from all

Deny from 192.168.100.100

如果是某網段那麼後面跟網段

後面的關於apache伺服器的相關內容會繼續深入,請大家多多關注!

Apache關於證書認證(1

linux為頒發機構同時又是CA server(只只用於本區域)

1Cd /etc/pki/tls

Ll tls

可以看到

total 40

lrwxrwxrwx 1 root root 19 Aug 1 05:31 cert.pem -> certs/ca-bundle.crt

drwxr-xr-x 2 root root 4096 Aug 1 05:34 certs

drwxr-xr-x 2 root root 4096 Aug 1 05:31 misc

-rw-r--r-- 1 root root 9831 Aug 17 22:53 openssl.cnf

drwxr-xr-x 2 root root 4096 Aug 1 05:34 private

然後vim openssl.cnf

45行改成

dir = /etc/pki/CA # Where everything is kept

然後wq儲存退出

2:接著生成證書的私鑰

Cd /etc/pki/CA

openssl工具生成

Openssl genrsa 1024 >private/cakey.pem

3:接著用私鑰生成自己的證書

Openssl req –x509–new –key private/cakey.pem –out cacerts.pem –days 3650

然後填寫註冊資訊

4:用上面的這個CA為本linux站點頒發證書

建立一個資料夾專門存放唄頒發的證書檔案

Mkdir /etc/httpd/certs

5:接著生成站點的證書鑰匙

Cd /etc/httpd/certs

Openssl genrsa 1024 >httpd.key

6:為了安全起見更改這個檔案的許可權

Chmod 600 httpd.key

7:用這個金鑰為站點頒發證書

Openssl req –new –key httpd.key –out httpd.csr

8:建立所需要的目錄和檔案(注意是在/etc/pki/CA)

Mkdir certs crl newcerts

Touch index.txt serial

9:serial一個號碼

Echo “01” >serial

然後填寫註冊資訊注意一定要與前面的一直

10:由於本站點和跟CA都在這臺linux上面所以不用傳遞申請了直接執行這條指令

Cd /etc/httpd/certs

Openssl ca –in httpd.csr –out httpd.crt

11:然後修改/etc/httpd/conf.d/ssl.conf

Vim /etc/httpd/conf.d/ssl.conf

修改大概112行的

#SSLCertificateFile /etc/pki/tls/localhost.crt改成

SSLCertificateFile /etc/httpd/certs/http.crt

修改大約120行左右的

#SSLCertificateKeyFile /etc/pki/tls/private/localhost.key改成

SSLCertificateKeyFile /etc/httpd/certs/httpd.key

130行的#SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt

註釋#號去掉

最後儲存退出

12:最後重啟Apache服務

Service httpd restart

13:測試

找其他測試電腦

https//192.168.101.60(伺服器的地址)

你會看到

輸入使用者名稱密碼

會看到你的主頁面

轉載於:https://blog.51cto.com/yujinbang/660217