Nginx-ലെ വെബ് ഡയറക്uടറികൾ എങ്ങനെ പാസ്uവേഡ് പരിരക്ഷിക്കാം


വെബ് പ്രോജക്റ്റുകളുടെ മാനേജർമാർ പലപ്പോഴും അവരുടെ ജോലി ഒരു തരത്തിൽ അല്ലെങ്കിൽ മറ്റൊന്ന് സംരക്ഷിക്കേണ്ടതുണ്ട്. തങ്ങളുടെ വെബ്uസൈറ്റ് വികസനത്തിലായിരിക്കുമ്പോൾ തന്നെ എങ്ങനെയാണ് പാസ്uവേഡ് പരിരക്ഷിക്കുകയെന്ന് പലപ്പോഴും ആളുകൾ ചോദിക്കാറുണ്ട്.

ഈ ട്യൂട്ടോറിയലിൽ, Nginx-നെ വെബ് സെർവറായി പ്രവർത്തിപ്പിക്കുമ്പോൾ എങ്ങനെ പാസ്uവേഡ് പരിരക്ഷിത വെബ് ഡയറക്uടറി എങ്ങനെ ചെയ്യാം എന്ന ലളിതവും എന്നാൽ ഫലപ്രദവുമായ ഒരു സാങ്കേതികത ഞങ്ങൾ നിങ്ങൾക്ക് കാണിച്ചുതരാൻ പോകുന്നു.

നിങ്ങൾ അപ്പാച്ചെ വെബ് സെർവർ ഉപയോഗിക്കുന്നുണ്ടെങ്കിൽ, ഒരു വെബ് ഡയറക്uടറി പരിരക്ഷിക്കുന്ന പാസ്uവേഡിനായി നിങ്ങൾക്ക് ഞങ്ങളുടെ ഗൈഡ് പരിശോധിക്കാം:

  1. അപ്പാച്ചെയിലെ വെബ് ഡയറക്uടറികൾ പാസ്uവേഡ് പരിരക്ഷിക്കുക

ഈ ട്യൂട്ടോറിയലിലെ ഘട്ടങ്ങൾ പൂർത്തിയാക്കാൻ, നിങ്ങൾക്ക് ഇനിപ്പറയുന്നവ ആവശ്യമാണ്:

  • Nginx വെബ് സെർവർ ഇൻസ്റ്റാൾ ചെയ്തു
  • സെർവറിലേക്കുള്ള റൂട്ട് ആക്സസ്

ഘട്ടം 1: ഉപയോക്താവും പാസ്uവേഡും സൃഷ്uടിക്കുക

1. ഞങ്ങളുടെ വെബ് ഡയറക്uടറിയെ പാസ്uവേഡ് പരിരക്ഷിക്കുന്നതിന്, ഞങ്ങളുടെ എൻക്രിപ്റ്റ് ചെയ്uത ഉപയോക്തൃനാമവും പാസ്uവേഡും അടങ്ങുന്ന ഫയൽ സൃഷ്uടിക്കേണ്ടതുണ്ട്.

അപ്പാച്ചെ ഉപയോഗിക്കുമ്പോൾ, നിങ്ങൾക്ക് htpasswd യൂട്ടിലിറ്റി ഉപയോഗിക്കാം. നിങ്ങളുടെ സിസ്റ്റത്തിൽ ആ യൂട്ടിലിറ്റി ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ടെങ്കിൽ, പാസ്uവേഡ് ഫയൽ സൃഷ്ടിക്കാൻ നിങ്ങൾക്ക് ഈ കമാൻഡ് ഉപയോഗിക്കാം:

# htpasswd -c /path/to/file/.htpasswd username

ഈ കമാൻഡ് പ്രവർത്തിപ്പിക്കുമ്പോൾ, മുകളിലുള്ള ഉപയോക്താവിനായി ഒരു രഹസ്യവാക്ക് സജ്ജീകരിക്കാൻ നിങ്ങളോട് ആവശ്യപ്പെടും, അതിനുശേഷം നിർദ്ദിഷ്ട ഡയറക്ടറിയിൽ .htpasswd ഫയൽ സൃഷ്ടിക്കപ്പെടും.

2. നിങ്ങൾക്ക് ആ ഉപകരണം ഇൻസ്റ്റാൾ ചെയ്തിട്ടില്ലെങ്കിൽ, നിങ്ങൾക്ക് .htpasswd ഫയൽ സ്വമേധയാ സൃഷ്ടിക്കാൻ കഴിയും. ഫയലിന് ഇനിപ്പറയുന്ന വാക്യഘടന ഉണ്ടായിരിക്കണം:

username:encrypted-password:comment

നിങ്ങൾ ഉപയോഗിക്കുന്ന ഉപയോക്തൃനാമം നിങ്ങളെ ആശ്രയിച്ചിരിക്കുന്നു, നിങ്ങൾക്ക് ഇഷ്ടമുള്ളത് തിരഞ്ഞെടുക്കുക.

ആ ഉപയോക്താവിനായി നിങ്ങൾ പാസ്uവേഡ് സൃഷ്ടിക്കുന്ന രീതിയാണ് ഏറ്റവും പ്രധാനപ്പെട്ട ഭാഗം.

ഘട്ടം 2: എൻക്രിപ്റ്റ് ചെയ്ത പാസ്uവേഡ് സൃഷ്ടിക്കുക

3. പാസ്uവേഡ് സൃഷ്uടിക്കാൻ, Perl-ന്റെ സംയോജിത ക്രിപ്റ്റ് ഫംഗ്uഷൻ ഉപയോഗിക്കുക.

ആ കമാൻഡിന്റെ ഒരു ഉദാഹരണം ഇതാ:

# perl -le 'print crypt("your-password", "salt-hash")'

ഒരു യഥാർത്ഥ ജീവിത ഉദാഹരണം:

# perl -le 'print crypt("#12Dfsaa$fa", "1xzcq")'

ഇപ്പോൾ ഒരു ഫയൽ തുറന്ന് നിങ്ങളുടെ ഉപയോക്തൃനാമവും അതിൽ ജനറേറ്റുചെയ്uതതും അർദ്ധവിരാമം ഉപയോഗിച്ച് വേർതിരിച്ച സ്ട്രിംഗിൽ ഇടുക.

എങ്ങനെയെന്നത് ഇതാ:

# vi /home/tecmint/.htpasswd

നിങ്ങളുടെ ഉപയോക്തൃനാമവും പാസ്uവേഡും ഇടുക. എന്റെ കാര്യത്തിൽ, ഇത് ഇതുപോലെ കാണപ്പെടുന്നു:

tecmint:1xV2Rdw7Q6MK.

Esc എന്നതിന് ശേഷം :wq അമർത്തി ഫയൽ സംരക്ഷിക്കുക.

ഘട്ടം 3: Nginx കോൺഫിഗറേഷൻ അപ്ഡേറ്റ് ചെയ്യുക

4. ഇപ്പോൾ നിങ്ങൾ പ്രവർത്തിക്കുന്ന സൈറ്റുമായി ബന്ധപ്പെട്ട Nginx കോൺഫിഗറേഷൻ ഫയൽ തുറന്ന് എഡിറ്റ് ചെയ്യുക. ഞങ്ങളുടെ കാര്യത്തിൽ ഞങ്ങൾ സ്ഥിരസ്ഥിതി ഫയൽ ഇവിടെ ഉപയോഗിക്കും:

# vi /etc/nginx/conf.d/default.conf       [For CentOS based systems]
OR
# vi /etc/nginx/nginx.conf                [For CentOS based systems]


# vi /etc/nginx/sites-enabled/default     [For Debian based systems]

ഞങ്ങളുടെ ഉദാഹരണത്തിൽ, nginx-നുള്ള ഡയറക്uടറി റൂട്ട് ഞങ്ങൾ പാസ്uവേഡ് പരിരക്ഷിക്കും, അതായത്: /usr/share/nginx/html.

5. ഇപ്പോൾ നിങ്ങൾ പരിരക്ഷിക്കാൻ ആഗ്രഹിക്കുന്ന പാതയുടെ കീഴിൽ ഇനിപ്പറയുന്ന രണ്ട് വരികൾ ചേർക്കുക.

auth_basic "Administrator Login";
auth_basic_user_file /home/tecmint/.htpasswd;

ഇപ്പോൾ ഫയൽ സംരക്ഷിച്ച് Nginx പുനരാരംഭിക്കുക:

# systemctl restart nginx
OR
# service nginx restart

6. ഇപ്പോൾ ആ IP വിലാസം നിങ്ങളുടെ ബ്രൗസറിൽ പകർത്തി/ഒട്ടിക്കുക, നിങ്ങളോട് പാസ്uവേഡ് ആവശ്യപ്പെടും:

അത്രയേയുള്ളൂ! നിങ്ങളുടെ പ്രധാന വെബ് ഡയറക്ടറി ഇപ്പോൾ പരിരക്ഷിച്ചിരിക്കുന്നു. നിങ്ങൾക്ക് സൈറ്റിലെ പാസ്uവേഡ് പരിരക്ഷ നീക്കം ചെയ്യണമെങ്കിൽ, .htpasswd ഫയലിലേക്ക് നിങ്ങൾ ഇപ്പോൾ ചേർത്ത രണ്ട് വരികൾ നീക്കം ചെയ്യുക അല്ലെങ്കിൽ ഒരു പാസ്uവേഡ് ഫയലിൽ നിന്ന് ചേർത്ത ഉപയോക്താവിനെ നീക്കം ചെയ്യാൻ ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിക്കുക.

# htpasswd -D /path/to/file/.htpasswd username