Pag-enable sa UserDir ug Password Protect Web Directories sa Zentyal Webserver - Bahin 10


Sa daghang user environment sama sa Zentyal PDC Active Directory ang pagpadagan sa webserver dako kaayog ikatabang, kung gusto nimo tugotan ang matag user nga makabaton sa ilang personal nga webpage nga mahimong i-host sa ilang kaugalingong mga panimalay.

Webserver module sa Zentyal 3.4 mahimong ma-configure aron ma-activate ang Users Public HTML ug uban sa tabang sa pipila ka Linux BASH nga mga script sa dinamikong pagmugna sa pipila ka mga sulod alang sa webpage ug pagpadala sa mga tiggamit sa gikinahanglan nga impormasyon sa ilang logon ngadto sa domain.

Usab ang Apache nga gipadala sa dugay nga panahon nga adunay lain nga bahin nga may kalabotan sa sulud nga gihatag sa seguridad ug kana mao ang panalipod sa password sa usa ka direktoryo sa web sa usa sa labing yano nga mga porma pinaagi lamang sa paggamit sa .htaccess nga mga file ug paghimo og listahan sa mga tiggamit nga gikinahanglan aron maka-access sa mga kapanguhaan, bisan sa pagpanalipod sa web content gikan sa mga search engine crawler.

  1. Giya sa Pag-instalar sa Zenyal
  2. I-install ang Web Services (Apache) sa Zentyal Server

Lakang 1: I-enable ang User Public Html

1. Pag-log in sa imong Zentyal PDC Web Admin Tool gamit ang https://zentyal_ip.

2. Pagdala ngadto sa Web Server Module -> susiha ang Enable peer user public_html, pindota ang Change button unya Save mga kausaban .

3. Ablihi ang browser ug isulod sa URL ang mosunod: http://mydomain.com/~your_username.

Sama sa imong makita nga ang Apache walay permiso sa pag-access sa matag user directory o index user’s home. Aron matul-id ang kini nga pamatasan kinahanglan namon nga hatagan ang www-data nga adunay pagtugot sa pagpatuman sa direktoryo sa /home/$USER ug maghimo usa ka public_html folder sa ilawom sa agianan sa mga tiggamit.

Aron pasimplehon ang mga butang sa gamay, magsulat kami og Linux Bash nga script nga nagmugna og public_html nga direktoryo ug makapahimo sa husto nga mga permiso sa tanang tiggamit sa sistema, awtomatik nga nagmugna sa html nga mga panid sa web para sa tanan. tiggamit nga adunay balido nga home directory ug laing script, niining higayona usa ka Windows Bach script, nga magsumpay niini ngadto sa Default nga domain GPO aron ang matag user maaghat sa iyang personal nga webpage human sa pag-logon nga adunay mga kredensyal sa domain gikan sa < b>Windows mga sistema nga giapil sa domain.

4. Aron makompleto kini nga buluhaton pag-log in sa Zentyal Server gamit ang Putty uban sa imong Zentyal administrative account nga gihimo sa sistema sa pag-instalar ug paghimo sa unang script gamit ang imong paborito nga text editor. Among nganlan kini og “user-dir-creation“.

# nano user-dir-creation

5. Idugang ang ubos nga sulod sa “user-dir-creation” script.

#!/bin/bash

for i in `ls /home | grep -v samba| grep -v lost+found`;  do

        mkdir /home/$i/public_html

## Make world readable and executable, so that www-data can access it  ##

        chmod -R 755 /home/$i

      chgrp -R www-data /home/$i/public_html/

## Next code should be on a single line ##

echo "<html><body style='background-color:#2DC612'><div align='center'><p><H1 style='color:#fff'>Welcome user $i on <a style='color:#fff' href='https://mydomain.com'>`hostname -f` </a></H1></p></div></body></html>" > /home/$i/public_html/index.html

## List /home/$USER permissions and public_html perm optional ##

echo "......................."

ls -all /home/$i

echo "......................"

ls -all /home/$i/public_html

done;

6. I-save ang script ug himoa nga ma-executable dayon ipadagan kini nga adunay mga pribilehiyo sa gamut.

# chmod +x user-dir-creation
# sudo ./user-dir-creation

7. Ablihi pag-usab ang usa ka browser ug itudlo kini sa samang URL sa ibabaw (tan-awa ang punto 3).

Ang public_html nga direktoryo gimugna ug usa ka html nga payl ang gihimo para sa tanang tiggamit busa karon silang tanan nanag-iya og personalized nga web page ( Kini usa lang ka yano nga panid sa pagsulay apan hunahunaa kung unsa ang imong mahimo sa pipila ka PHP , MySQL o CGI mga script ).

8. Kung ang Zentyal 3.4 Server usa usab ka Primary Domain Controller mahimo namong himoon ang matag user nga web page nga awtomatik nga maablihan sa usa ka browser kung ang mga tiggamit mo-logon gikan sa mga host sa Windows moapil sa domain.

Aron mahimo kini nga maka-logon sa usa ka Windows nga sistema nga gidugtong sa domain ug maghimo usa ka windows batch script nga ginganlag public_html.bat gamit ang Notepad nga adunay nagsunod nga sulud.

explorer http://your_domain.tld/~%username%

Pahinumdom: Palihug timan-i ang ~ espesyal nga karakter ug %username% nga usa ka windows environment variable.

9. Ablihi ang Zentyal Web Administration Tool (https://zentyal_IP) ug adto sa Domain -> Group Policy Objects -> Default Domain Policy -> GPO Editor.

10. I-klik ang Edit, i-scroll down sa User Configuration –> Add New Logon Script, I-browse ang dalan diin ang imong script gihimo ug naigo < b>DUGANG.

Pahalipay! Karon sa sunod higayon nga mo-log in ka sa domain ang imong default browser mag-abli ug personalized nga web page nga may kalabutan sa imong username.

Lakang 2: Pagpanalipod sa Password sa Web Directory

Kini nga bahin nanginahanglan ug mas abanteng configuration sa Apache module nga dili makab-ot sa porma Zentyal Web Interfaceapan gikan lang sa command line ug pag-usab sa pipila ka Zentyal Apache module template.

Kung sulayan nimo nga diretso nga usbon ang configuration sa Apache sama sa naandan nimo nga buhaton sa Linux server ang tanan nga mga configuration nga gihimo mawala tungod kay ang Zentyal naggamit sa pipila ka templates nga mga porma nga nag-rewrite sa matag service configuration file human sa reboot o service restart.

Sa aktuwal nga pagpanalipod sa usa ka web folder gamit ang Apache authentication ug paghimo sa mga pagbag-o nga permanente ang AllowOverride nga direktiba kinahanglan nga usbon ug ang auth_basic nga module kinahanglan nga i-load ug mahimo sa Apache webserver .

11. Para ma-enable ang tanang configurations nga gikinahanglan fist login pinaagi sa command line gamit ang Putty sa Zentyal Server nga adunay root account.

12. I-enable ang “auth_basic” pinaagi sa pag-isyu sa mosunod nga sugo ug dayon i-restart ang zentyal web service.

# a2enmod auth_basic
# service zentyal webserver restart

13. Human makarga ang module mao na ang panahon sa pag-usab sa Zentyal Apache Vhost template nga nahimutang sa “/usr/share/zentyal/stubs/webserver/” nga dalan ug setup “AllowOverride“.

Unang backup vhost.mas file.

# cp /usr/share/zentyal/stubs/webserver/vhost.mas  /usr/share/zentyal/stubs/webserver/vhost.mas.bak

Dayon ablihi ang editor, navigate sa ubos sa file ug pulihan ang Wala og Tanan sa Allow Override nga linya sa direktiba sama sa screenshot .

14. Human nimo mahuman ang pag-edit i-restart ang Zentyal Webserver module aron magamit ang bag-ong mga pagbag-o.

# service zentyal webserver restart

Ang nag-unang tumong sa AllowOverride nga direktiba mao ang dinamikong pag-usab sa mga configuration sa Apache gikan sa ubang mga file nga lahi kay sa gigamit sa Apache root (/etc/apache2/) sa kada-dalan gamit ang .htacess nga payl.

15. Karon na ang panahon sa paghimo og pipila ka mga tiggamit nga gitugotan sa pag-browse sa usa ka web content directory nga giprotektahan sa password. Una kinahanglan namong maghimo ug direktoryo nga gibutang sa gawas sa subdomain nga agianan diin ang .htpasswd nga file i-host ug protektahan.

# mkdir /srv/www/htpass
# chmod –R 750 /srv/www/htpass
# chgrp –R www-data /srv/www/htpass

16. Karon na ang panahon sa paghimo og .htpasswd file ug pagdugang og pipila ka tiggamit gamit ang htpasswd nga sugo. Sa diha nga ang unang user gimugna idugang \–c” (paghimo) command switch sa paghimo sa file ug pagdugang user dayon pagsulod ug pagkumpirma user password.

# htpasswd –c /srv/www/htpass/.htpasswd first_user
# htpasswd /srv/www/htpass/.htpasswd second_user

17. Karon ang .htpasswd nga payl gihimo ug gi-encrypt gamit ang MD5 salt algorithm ug mahimo nimong idugang ang daghang mga tiggamit nga gikinahanglan aron ma-access ang sulud sa web folder kung gikinahanglan.

18. Karon isipon nato nga gusto nimong protektahan ang http://www.mydomain.com URL gikan sa ubang mga tiggamit unya ang mga gihimo sa imong htpasswd file aron ma-access ang subdomain. Aron mahimo kining kinaiya paghimo ug .htaccess nga payl sa www.mydomain.com system path ug idugang ang mosunod nga sulod.

AuthType basic
AuthName “What ever message you want”
AuthBasicProvider file
AuthUserFile  /path/to/.htpassd file created
Require user  your_user1 user2 userN

Siguruha usab nga ang .htacces nga payl kay giprotektahan sa mabasa nga pulong.

# nano /srv/www/www.mydomain.com/.htaccess
# chmod 750  /srv/www/www.mydomain.com/.htaccess
# chgrp www-data /srv/www/www.mydomain.com/.htaccess

Pahalipay! Ikaw karon malampuson nga password-protected ang www.mydomain.com subdomain sa imong website ug ang mga tiggamit maaghat sa pagsulod sa ilang mga kredensyal alang sa pag-access sa sulod sa website.

Usab kung gusto nimong panalipdan ang ubang mga dominyo o subdomain nga gihimo sa imong server nga adunay mga kredensyal nga nahimo na, kopyaha lang ang .htaccess file sa imong subdomain nga Apache nga agianan ug siguroha ang www-data adunay access sa pagbasa.

Uban sa tabang sa Apache Web Direcory Password Protect Zentyal Weberver mahimong peke nga adunay dugang nga layer sa seguridad sa pagbutyag sa sensitibo nga impormasyon nga gibutang sa imong mga dominyo apan gitambagan nga kini nga pamaagi manalipod lamang sa mga direktoryo ug dili ang mga file ug mga password ang gipasa. sa tin-aw pinaagi sa browser busa sulayi paggamit ang HTTPS protocol aron mapanalipdan ang mga kredensyal sa gumagamit nga ma-intercept.