Zentyal Webserver-ൽ UserDir, Password പ്രൊട്ടക്റ്റ് വെബ് ഡയറക്ടറികൾ പ്രവർത്തനക്ഷമമാക്കുന്നു - ഭാഗം 10


Zentyal PDC Active Directory പോലെയുള്ള ഒന്നിലധികം ഉപയോക്തൃ പരിതസ്ഥിതിയിൽ, ഒരു വെബ്uസെർവർ പ്രവർത്തിപ്പിക്കുന്നത് വളരെ സഹായകരമാണ്, ഓരോ ഉപയോക്താവിനും അവരുടെ സ്വന്തം വീട്ടിൽ ഹോസ്റ്റ് ചെയ്യാവുന്ന വ്യക്തിഗത വെബ്uപേജ് അനുവദിക്കണമെങ്കിൽ.

Zentyal 3.4-ലെ Webserver മൊഡ്യൂൾ Users Public HTML സജീവമാക്കുന്നതിനും ചില Linux BASH സ്ക്രിപ്റ്റുകളുടെ സഹായത്തോടെയും ക്രമീകരിക്കാൻ കഴിയും. വെബ്uപേജിനായി ചില ഉള്ളടക്കങ്ങൾ ചലനാത്മകമായി സൃഷ്uടിക്കാനും ഉപയോക്താക്കൾക്ക് അവരുടെ ലോഗിൻ സംബന്ധിച്ച ആവശ്യമായ വിവരങ്ങൾ ഡൊമെയ്uനിലേക്ക് കൈമാറാനും.

കൂടാതെ ഡെലിവറി ചെയ്യുന്ന സെക്യൂരിറ്റി ഉള്ളടക്കവുമായി ബന്ധപ്പെട്ട മറ്റൊരു ഫീച്ചർ ഉപയോഗിച്ച് വളരെക്കാലം അപ്പാച്ചെ ഷിപ്പ് ചെയ്യുന്നു, അതാണ് ഉപയോഗിച്ച് ഏറ്റവും ലളിതമായ ഫോമുകളിലൊന്നിൽ ഒരു വെബ് ഡയറക്uടറിയെ സംരക്ഷിക്കുക .htaccess ഫയലുകൾ കൂടാതെ ഉറവിടങ്ങൾ ആക്uസസ് ചെയ്യുന്നതിന് ആവശ്യമായ ഉപയോക്താക്കളുടെ ഒരു ലിസ്റ്റ് സൃഷ്uടിക്കുക, സെർച്ച് എഞ്ചിനുകൾ ക്രാളറുകളിൽ നിന്ന് വെബ് ഉള്ളടക്കം സംരക്ഷിക്കുക പോലും.

  1. Zentyal ഇൻസ്റ്റാൾ ഗൈഡ്
  2. സെന്റിയൽ സെർവറിൽ വെബ് സേവനങ്ങൾ (അപ്പാച്ചെ) ഇൻസ്റ്റാൾ ചെയ്യുക

ഘട്ടം 1: ഉപയോക്തൃ പൊതു Html പ്രവർത്തനക്ഷമമാക്കുക

1. https://zentyal_ip ഉപയോഗിച്ച് നിങ്ങളുടെ Zentyal PDC വെബ് അഡ്മിൻ ടൂളിലേക്ക് ലോഗിൻ ചെയ്യുക.

2. വെബ് സെർവർ മൊഡ്യൂളിലേക്ക് നാവിഗേറ്റ് ചെയ്യുക -> പിയർ യൂസർ public_html പ്രവർത്തനക്ഷമമാക്കുക പരിശോധിക്കുക, മാറ്റുക ബട്ടണിൽ അമർത്തുക, തുടർന്ന് സംരക്ഷിക്കുക മാറ്റങ്ങൾ .

3. ഒരു ബ്രൗസർ തുറന്ന് URL എന്നതിൽ ഇനിപ്പറയുന്നവ ഫയൽ ചെയ്യുക: http://mydomain.com/~your_username.

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, ഓരോ ഉപയോക്തൃ ഡയറക്uടറി അല്ലെങ്കിൽ ഇൻഡെക്uസ് ഉപയോക്താവിന്റെ ഹോം ആക്uസസ് ചെയ്യുന്നതിന് അപ്പാച്ചെയ്uക്ക് അനുമതികളൊന്നുമില്ല. ഈ സ്വഭാവം ശരിയാക്കാൻ ഞങ്ങൾ /home/$USER ഡയറക്uടറിയിൽ നിർവ്വഹണ അനുമതികൾക്കൊപ്പം www-data നൽകുകയും ഉപയോക്താക്കളുടെ പാതയ്ക്ക് കീഴിൽ ഒരു public_html ഫോൾഡർ സൃഷ്ടിക്കുകയും വേണം.

കാര്യങ്ങൾ അൽപ്പം ലളിതമാക്കാൻ ഞങ്ങൾ ഒരു Linux Bash സ്ക്രിപ്റ്റ് എഴുതാൻ പോകുന്നു, അത് public_html ഡയറക്uടറി സൃഷ്uടിക്കുകയും എല്ലാ സിസ്റ്റം ഉപയോക്താക്കൾക്കും ശരിയായ അനുമതികൾ പ്രവർത്തനക്ഷമമാക്കുകയും ചെയ്യുന്നു, എല്ലാവർക്കുമായി സ്വയമേവ html വെബ് പേജുകൾ സൃഷ്ടിക്കുന്നു. സാധുവായ ഒരു ഹോം ഡയറക്uടറിയും മറ്റൊരു സ്uക്രിപ്uറ്റും ഉള്ള ഉപയോക്താക്കൾ, ഇത്തവണ ഒരു Windows Bach സ്uക്രിപ്uറ്റ്, അത് ഡിഫോൾട്ട് ഡൊമെയ്uൻ GPO-യിലേക്ക് ലിങ്ക് ചെയ്യും, അതുവഴി < എന്നതിൽ നിന്നുള്ള ഡൊമെയ്uൻ ക്രെഡൻഷ്യലുകൾ ഉപയോഗിച്ച് ലോഗിൻ ചെയ്uതതിന് ശേഷം ഓരോ ഉപയോക്താവിനും അവന്റെ സ്വകാര്യ വെബ്uപേജ് നൽകാൻ ആവശ്യപ്പെടും. b>Windows സിസ്റ്റങ്ങൾ ഡൊമെയ്uനിൽ ചേർന്നു.

4. ഈ ടാസ്ക് പൂർത്തിയാക്കാൻ, സിസ്റ്റം ഇൻസ്റ്റാളേഷനിൽ സൃഷ്ടിച്ച നിങ്ങളുടെ Zentyal അഡ്മിനിസ്ട്രേറ്റീവ് അക്കൗണ്ട് ഉപയോഗിച്ച് Putty ഉപയോഗിച്ച് Zentyal Server-ലേക്ക് ലോഗിൻ ചെയ്യുക, നിങ്ങളുടെ പ്രിയപ്പെട്ട ടെക്സ്റ്റ് എഡിറ്റർ ഉപയോഗിച്ച് ആദ്യ സ്ക്രിപ്റ്റ് സൃഷ്ടിക്കുക. ഞങ്ങൾ അതിന് user-dir-creation എന്ന് പേരിടും.

# nano user-dir-creation

5. user-dir-creation സ്ക്രിപ്റ്റിൽ താഴെയുള്ള ഉള്ളടക്കം ചേർക്കുക.

#!/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. സ്ക്രിപ്റ്റ് സംരക്ഷിച്ച് അത് എക്സിക്യൂട്ടബിൾ ആക്കുക, തുടർന്ന് റൂട്ട് പ്രത്യേകാവകാശങ്ങൾ ഉപയോഗിച്ച് പ്രവർത്തിപ്പിക്കുക.

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

7. ഒരു ബ്രൗസർ വീണ്ടും തുറന്ന് മുകളിൽ പറഞ്ഞ അതേ URL ലേക്ക് പോയിന്റ് ചെയ്യുക (പോയിന്റ് 3 കാണുക).

public_html ഡയറക്uടറി സൃഷ്uടിക്കുകയും എല്ലാ ഉപയോക്താക്കൾക്കുമായി ഒരു html ഫയൽ സൃഷ്uടിക്കുകയും ചെയ്uതു, അതിനാൽ ഇപ്പോൾ അവർക്കെല്ലാം ഒരു വ്യക്തിഗത വെബ് പേജ് സ്വന്തമായിരിക്കുന്നു ( ഇതൊരു ലളിതമായ പരീക്ഷണ പേജ് മാത്രമാണ്, എന്നാൽ ചില PHP ഉപയോഗിച്ച് നിങ്ങൾക്ക് എന്തുചെയ്യാനാകുമെന്ന് സങ്കൽപ്പിക്കുക. , MySQL അല്ലെങ്കിൽ CGI സ്ക്രിപ്റ്റുകൾ ).

8. Zentyal 3.4 സെർവർ ഒരു പ്രാഥമിക ഡൊമെയ്uൻ കൺട്രോളർ ആണെങ്കിൽ, Windows ഹോസ്റ്റുകളിൽ നിന്ന് ഉപയോക്താക്കൾ ഡൊമെയ്uനിലേക്ക് ലോഗിൻ ചെയ്യുമ്പോൾ ഓരോ ഉപയോക്താവിനും വെബ് പേജ് സ്വയമേവ ബ്രൗസറിൽ തുറക്കാൻ നമുക്ക് കഴിയും.

ഇത് പ്രവർത്തനക്ഷമമാക്കുന്നതിന്, ഡൊമെയ്uനിൽ ചേർന്ന ഒരു Windows സിസ്റ്റത്തിലേക്ക് ലോഗിൻ ചെയ്യുകയും ഇനിപ്പറയുന്ന ഉള്ളടക്കമുള്ള Notepad ഉപയോഗിച്ച് “public_html.bat” എന്ന പേരിൽ ഒരു വിൻഡോസ് ബാച്ച് സ്uക്രിപ്റ്റ് സൃഷ്uടിക്കുകയും ചെയ്യുക.

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

ശ്രദ്ധിക്കുക: ~ പ്രത്യേക പ്രതീകവും വിൻഡോസ് എൻവയോൺമെന്റ് വേരിയബിളായ %username% ഉം ദയവായി ശ്രദ്ധിക്കുക.

9. Zentyal Web Administration Tool (https://zentyal_IP) തുറന്ന് Domain -> Group Policy Objects -> Default എന്നതിലേക്ക് പോകുക ഡൊമെയ്ൻ നയം -> GPO എഡിറ്റർ.

10. എഡിറ്റ് ചെയ്യുക എന്നതിൽ ക്ലിക്ക് ചെയ്യുക, ഉപയോക്തൃ കോൺഫിഗറേഷൻ -> പുതിയ ലോഗൺ സ്ക്രിപ്റ്റ് ചേർക്കുക-ലേക്ക് സ്ക്രോൾ ചെയ്യുക, നിങ്ങളുടെ സ്ക്രിപ്റ്റ് സൃഷ്ടിച്ച പാതയിൽ ബ്രൗസ് ചെയ്ത് < അമർത്തുക b>ചേർക്കുക.

അഭിനന്ദനങ്ങൾ! ഇപ്പോൾ നിങ്ങൾ അടുത്ത തവണ ഡൊമെയ്uനിലേക്ക് ലോഗിൻ ചെയ്യുമ്പോൾ നിങ്ങളുടെ ഡിഫോൾട്ട് ബ്രൗസർ നിങ്ങളുടെ ഉപയോക്തൃനാമവുമായി ബന്ധപ്പെട്ട ഒരു വ്യക്തിഗത വെബ് പേജ് തുറക്കും.

ഘട്ടം 2: പാസ്uവേഡ് പ്രൊട്ടക്റ്റ് വെബ് ഡയറക്uടറി

ഈ ഭാഗത്തിന് അപ്പാച്ചെ മൊഡ്യൂളിൽ കൂടുതൽ വിപുലമായ കോൺഫിഗറേഷൻ ആവശ്യമാണ്, അത് Zentyal Web Interface എന്ന രൂപത്തിൽ നേടാനാകില്ല, എന്നാൽ കമാൻഡ് ലൈനിൽ നിന്നും ചില Zentyal Apache module ടെംപ്ലേറ്റിൽ മാറ്റം വരുത്തുന്നു.

ഒരു ലിനക്സ് സെർവറിൽ നിങ്ങൾ സാധാരണയായി ചെയ്യുന്നതുപോലെ അപ്പാച്ചെ കോൺഫിഗറേഷൻ നേരിട്ട് പരിഷ്കരിക്കാൻ ശ്രമിക്കുകയാണെങ്കിൽ, ഉണ്ടാക്കിയ എല്ലാ കോൺഫിഗറേഷനുകളും നഷ്uടപ്പെടും, കാരണം റീബൂട്ട് അല്ലെങ്കിൽ സർവീസ് പുനരാരംഭിച്ചതിന് ശേഷം ഓരോ സേവന കോൺഫിഗറേഷൻ ഫയലുകളും മാറ്റിയെഴുതുന്ന ചില ടെംപ്ലേറ്റുകൾ Zentyal ഉപയോഗിക്കുന്നു.

Apache പ്രാമാണീകരണം ഉപയോഗിച്ച് യഥാർത്ഥത്തിൽ ഒരു വെബ് ഫോൾഡർ പരിരക്ഷിക്കുന്നതിനും മാറ്റങ്ങൾ ശാശ്വതമാക്കുന്നതിനും “AllowOverride” നിർദ്ദേശം പരിഷ്uക്കരിക്കേണ്ടതുണ്ട് കൂടാതെ “auth_basic” മൊഡ്യൂൾ ലോഡുചെയ്uത് Apache വെബ്uസെർവറിൽ പ്രവർത്തനക്ഷമമാക്കേണ്ടതുണ്ട്. .

11. എല്ലാ കോൺഫിഗറേഷനുകളും പ്രവർത്തനക്ഷമമാക്കുന്നതിന്, റൂട്ട് അക്കൗണ്ട് ഉപയോഗിച്ച് Zentyal സെർവറിൽ Putty ഉപയോഗിച്ച് കമാൻഡ് ലൈനിലൂടെ ഫിസ്റ്റ് ലോഗിൻ ചെയ്യുക.

12. ഇനിപ്പറയുന്ന കമാൻഡ് നൽകി auth_basic പ്രവർത്തനക്ഷമമാക്കുക, തുടർന്ന് zentyal വെബ് സേവനം പുനരാരംഭിക്കുക.

# a2enmod auth_basic
# service zentyal webserver restart

13. മൊഡ്യൂൾ ലോഡുചെയ്uതതിനുശേഷം, “/usr/share/zentyal/stubs/webserver/” എന്നതിൽ സ്ഥിതി ചെയ്യുന്ന Zentyal Apache Vhost ടെംപ്ലേറ്റ് പരിഷ്uക്കരിക്കുന്നതിനുള്ള സമയമാണ്, കൂടാതെ “ >അനുവദിക്കുക ഓവർറൈഡ്“.

ആദ്യ ബാക്കപ്പ് vhost.mas ഫയൽ.

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

തുടർന്ന് ഒരു എഡിറ്റർ തുറന്ന്, ഫയലിന്റെ താഴെയായി നാവിഗേറ്റ് ചെയ്യുക, സ്uക്രീൻഷോട്ടിലെ പോലെ ഓവർറൈഡ് അനുവദിക്കുക ഡയറക്uടീവ് ലൈനിൽ ഒന്നും ഇല്ല മാറ്റി പകരം എല്ലാം .

14. നിങ്ങൾ എഡിറ്റിംഗ് പൂർത്തിയാക്കിയ ശേഷം പുതിയ മാറ്റങ്ങൾ പ്രയോഗിക്കുന്നതിന് Zentyal Webserver മൊഡ്യൂൾ പുനരാരംഭിക്കുക.

# service zentyal webserver restart

അപ്പാച്ചെ റൂട്ടിൽ (/etc/apache2/) ഉപയോഗിച്ചതിൽ നിന്ന് വ്യത്യസ്തമായ മറ്റ് ഫയലുകളിൽ നിന്നുള്ള അപ്പാച്ചെ കോൺഫിഗറേഷനുകൾ ഓരോ പാത്ത് അടിസ്ഥാനത്തിൽ ഡൈനാമിക് ആയി മാറ്റുക എന്നതാണ് AllowOverride നിർദ്ദേശത്തിന്റെ പ്രധാന ലക്ഷ്യം. .htacess ഫയൽ.

15. ഒരു വെബ് ഉള്ളടക്ക ഡയറക്ടറി പാസ്uവേഡ് പരിരക്ഷിതമായി ബ്രൗസ് ചെയ്യാൻ അനുവദിക്കുന്ന ചില ഉപയോക്താക്കളെ സൃഷ്ടിക്കാനുള്ള സമയമാണിത്. ആദ്യം നമ്മൾ സബ്ഡൊമെയ്ൻ പാത്തിന് പുറത്ത് സ്ഥാപിച്ചിട്ടുള്ള ഒരു ഡയറക്ടറി സൃഷ്ടിക്കേണ്ടതുണ്ട്, അവിടെ .htpasswd ഫയൽ ഹോസ്റ്റ് ചെയ്യുകയും പരിരക്ഷിക്കുകയും ചെയ്യും.

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

16. ഇപ്പോൾ .htpasswd ഫയൽ സൃഷ്uടിക്കാനും htpasswd കമാൻഡ് ഉപയോഗിച്ച് കുറച്ച് ഉപയോക്താക്കളെ ചേർക്കാനും സമയമായി. ആദ്യ ഉപയോക്താവ് സൃഷ്uടിക്കുമ്പോൾ, ഫയൽ സൃഷ്uടിക്കാൻ \–c” (സൃഷ്ടിക്കുക) കമാൻഡ് സ്വിച്ച് ചേർക്കുക, ഉപയോക്താവിനെ ചേർക്കുക, തുടർന്ന് ഉപയോക്തൃ പാസ്uവേഡ് നൽകി സ്ഥിരീകരിക്കുക.

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

17. ഇപ്പോൾ .htpasswd ഫയൽ MD5 സാൾട്ട് അൽഗോരിതം ഉപയോഗിച്ച് സൃഷ്uടിക്കുകയും എൻക്രിപ്റ്റ് ചെയ്യുകയും ചെയ്യുന്നു, കൂടാതെ നിങ്ങൾക്ക് ആവശ്യമുള്ളത്ര വെബ് ഫോൾഡർ ഉള്ളടക്കം ആക്uസസ് ചെയ്യാൻ ആവശ്യമായത്ര ഉപയോക്താക്കളെ ചേർക്കാനും കഴിയും.

18. ഇപ്പോൾ നിങ്ങൾക്ക് മറ്റ് ഉപയോക്താക്കളിൽ നിന്ന് http://www.mydomain.com URL പരിരക്ഷിക്കണമെന്ന് അനുമാനിക്കാം, തുടർന്ന് ഉപഡൊമെയ്uൻ ആക്uസസ് ചെയ്യുന്നതിന് നിങ്ങളുടെ htpasswd ഫയലിൽ സൃഷ്uടിച്ചവ. ഈ സ്വഭാവം പ്രവർത്തനക്ഷമമാക്കാൻ, www.mydomain.com സിസ്റ്റം പാത്തിൽ ഒരു .htaccess ഫയൽ സൃഷ്uടിച്ച് ഇനിപ്പറയുന്ന ഉള്ളടക്കം ചേർക്കുക.

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

.htacses ഫയൽ വേഡ് റീഡബിൾ പരിരക്ഷിതമാണെന്ന് ഉറപ്പാക്കുക.

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

അഭിനന്ദനങ്ങൾ! നിങ്ങൾ ഇപ്പോൾ നിങ്ങളുടെ വെബ്uസൈറ്റിലെ www.mydomain.com ഉപഡൊമെയ്uൻ വിജയകരമായി പാസ്uവേഡ് പരിരക്ഷിതമാക്കി, വെബ്uസൈറ്റ് ഉള്ളടക്കം ആക്uസസ് ചെയ്യുന്നതിന് ഉപയോക്താക്കളോട് അവരുടെ ക്രെഡൻഷ്യലുകൾ നൽകാൻ ആവശ്യപ്പെടും.

കൂടാതെ, നിങ്ങളുടെ സെർവറിൽ സൃഷ്uടിച്ച മറ്റ് ഡൊമെയ്uനുകളോ സബ്uഡൊമെയ്uനുകളോ ഇതിനകം സൃഷ്uടിച്ച ക്രെഡൻഷ്യലുകൾ ഉപയോഗിച്ച് പരിരക്ഷിക്കണമെങ്കിൽ, നിങ്ങളുടെ സബ്uഡൊമെയ്uൻ അപ്പാച്ചെ പാതയിലെ .htaccess ഫയൽ പകർത്തി www-data വായിക്കാൻ പ്രവേശനമുണ്ട്.

Apache Web Direcory Password Protect ന്റെ സഹായത്തോടെ Zentyal Weberver നിങ്ങളുടെ ഡൊമെയ്uനുകളിൽ പോസ്uറ്റ് ചെയ്uതിരിക്കുന്ന തന്ത്രപ്രധാനമായ വിവരങ്ങൾ പുറത്തുകൊണ്ടുവരുന്നതിന് ചില അധിക സുരക്ഷാ പാളികൾ ഉപയോഗിച്ച് കെട്ടിച്ചമയ്uക്കാം, എന്നാൽ ഈ രീതി ഡയറക്uടറികളെ മാത്രമേ പരിരക്ഷിക്കുന്നുള്ളൂവെന്നും ഫയലുകളും പാസ്uവേഡുകളും കൈമാറുന്നില്ലെന്നും അറിയിക്കുക. ബ്രൗസർ വഴി വ്യക്തമായതിനാൽ ഉപയോക്തൃ ക്രെഡൻഷ്യലുകൾ തടസ്സപ്പെടുത്തുന്നതിന് പരിരക്ഷിക്കുന്നതിന് HTTPS പ്രോട്ടോക്കോൾ ഉപയോഗിക്കാൻ ശ്രമിക്കുക.