Centos માં Memcache ઇન્સ્ટોલ અને ગોઠવી રહ્યું છે. એક ફાઇલ માટે પરવાનગીઓ સેટ કરી રહ્યું છે

મેમરી ઑબ્જેક્ટ કેશીંગ સિસ્ટમ્સ જેમ કે મેમકેશ્ડ, મેમરીમાં વારંવાર એક્સેસ કરાયેલા અથવા તાજેતરમાં પુનઃપ્રાપ્ત થયેલા રેકોર્ડ્સને અસ્થાયી રૂપે સંગ્રહિત કરીને ડેટાબેઝની કામગીરીને ઑપ્ટિમાઇઝ કરી શકે છે. આમ, તેઓ ડેટાબેઝમાં સીધી ક્વેરીઝની સંખ્યા ઘટાડે છે.

જો યોગ્ય રીતે ગોઠવેલ ન હોય તો Memcached જેવી સિસ્ટમ સર્વરને ડોસ હુમલાઓ માટે ખુલ્લી પાડી શકે છે, તેથી અગાઉથી Memcached સર્વરની સુરક્ષા સુનિશ્ચિત કરવી મહત્વપૂર્ણ છે. આ ટ્યુટોરીયલમાં, તમે સ્થાનિક અથવા ખાનગી નેટવર્ક ઈન્ટરફેસ સાથે ઈન્સ્ટોલેશનને જોડીને અને Memcached ઉદાહરણ માટે અધિકૃત વપરાશકર્તા બનાવીને મેમકેશ્ડ સર્વરને કેવી રીતે સુરક્ષિત કરવું તે શીખી શકશો.

જરૂરીયાતો

કામ કરવા માટે તમારે આની જરૂર પડશે:

  • CentOS 7 સર્વર સાથે ગોઠવેલ છે.
  • FirewallD, મેન્યુઅલ અનુસાર ગોઠવેલ.

અધિકૃત રીપોઝીટરીમાંથી Memcached ઇન્સ્ટોલ કરી રહ્યું છે

જો તમારા સર્વર પર Memcached પહેલેથી ઇન્સ્ટોલ કરેલ નથી, તો તમે તેને અધિકૃત CentOS રિપોઝીટરીઝમાંથી ઇન્સ્ટોલ કરી શકો છો. પ્રથમ, તમારા સ્થાનિક પેકેજ ઇન્ડેક્સને અપડેટ કરો:

પછી સત્તાવાર પેકેજ ઇન્સ્ટોલ કરો:

sudo yum memcached ઇન્સ્ટોલ કરો

તમે libmemcached-tools પણ ઇન્સ્ટોલ કરી શકો છો, એક લાઇબ્રેરી કે જે Memcached સર્વર સાથે કામ કરવા માટે ઘણા સાધનો પૂરા પાડે છે:

sudo yum install libmemcached

Memcached હવે સેવા તરીકે ઇન્સ્ટોલ કરેલ છે, અને સર્વર પાસે એવા સાધનો પણ છે જે તમને તેની કનેક્ટિવિટી ચકાસવા દેશે. તમે રૂપરેખાંકન પર જઈ શકો છો.

Memcached રક્ષણ

Memcached ઉદાહરણ સ્થાનિક ઈન્ટરફેસ 127.0.0.1 પર સાંભળી રહ્યું છે તેની ખાતરી કરવા માટે, તમારે /etc/sysconfig/memcached રૂપરેખાંકન ફાઈલમાં ડિફોલ્ટ સેટિંગ તપાસવાની જરૂર છે અને UDP લિસનરને પણ નિષ્ક્રિય કરો. આ ક્રિયાઓ સર્વરને સેવા હુમલાના ઇનકારથી સુરક્ષિત કરશે.

/etc/sysconfig/memcached ફાઇલ ખોલો:

OPTIONS ચલ શોધો:

. . .
વિકલ્પો=""

સ્થાનિક નેટવર્ક ઈન્ટરફેસ સાથે કનેક્ટ થવાથી એક જ મશીન પર ક્લાયન્ટ્સ માટે ટ્રાફિક મર્યાદિત થઈ જશે. આ કરવા માટે, OPTIONS વેરીએબલમાં -l 127.0.0.1 ઉમેરો. આ મર્યાદા ચોક્કસ વાતાવરણ માટે ખૂબ પ્રતિબંધિત હોઈ શકે છે, પરંતુ તે સુરક્ષા ગોઠવવામાં સારી શરૂઆત છે.

UDP નો ઉપયોગ TCP કરતા વધુ અસરકારક રીતે ડોસ હુમલાઓમાં થતો હોવાથી, તમે UDP લિસનરને પણ અક્ષમ કરી શકો છો. આ કરવા માટે, OPTIONS ચલમાં -U 0 પેરામીટર ઉમેરો. પરિણામી ફાઇલ આના જેવી હોવી જોઈએ:

PORT="11211"
USER="મેમકેશ્ડ"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1 -U 0"

ફાઇલ સાચવો અને બંધ કરો.

ખાતરી કરો કે Memcached સ્થાનિક ઇન્ટરફેસ સાથે બંધાયેલ છે અને માત્ર TCP કનેક્શન્સ માટે જ સાંભળે છે:

sudo netstat -plunt


. . .
tcp 0 0 127.0.0.1:11211 0.0.0.0:* 2383/memcached સાંભળો
. . .

આ પુષ્ટિ કરે છે કે memcached 127.0.0.1 સાથે બંધાયેલ છે અને માત્ર TCP વાપરે છે.

અધિકૃત વપરાશકર્તાઓ ઉમેરવાનું

Memcached માં અધિકૃત વપરાશકર્તાઓને ઉમેરવા માટે, તમે સિમ્પલ ઓથેન્ટિકેશન એન્ડ સિક્યુરિટી લેયર (SASL) નો ઉપયોગ કરી શકો છો, એક ફ્રેમવર્ક જે એપ્લીકેશન પ્રોટોકોલ્સમાંથી પ્રમાણીકરણ પ્રક્રિયાને અલગ પાડે છે. Memcached રૂપરેખાંકન ફાઇલમાં SASL ને સક્ષમ કરો અને પછી પ્રમાણીકરણ ઓળખપત્રો સાથે વપરાશકર્તા ઉમેરો.

SASL આધાર

પ્રથમ, તમારે memcstat આદેશનો ઉપયોગ કરીને Memcached ઉદાહરણની કનેક્ટિવિટી તપાસવાની જરૂર છે. આ રૂપરેખાંકન ફેરફારો કર્યા પછી SASL અને વપરાશકર્તા પ્રમાણીકરણ સક્ષમ છે તેની પુષ્ટિ કરવામાં મદદ કરશે.

Memcached ચાલુ છે તે ચકાસવા માટે, નીચેના દાખલ કરો:

memstat --servers="127.0.0.1"
સર્વર: 127.0.0.1 (11211)
પીઆઈડી: 3831
અપટાઇમ: 9
સમય: 1520028517
સંસ્કરણ: 1.4.25
. . .

હવે તમે SASL ને સક્ષમ કરી શકો છો. પ્રથમ, તમારે /etc/sysconfig/memcached.conf માં OPTIONS ચલમાં -S વિકલ્પ ઉમેરવાની જરૂર છે. ફાઇલ ફરીથી ખોલો:

sudo vi /etc/sysconfig/memcached

OPTIONS ચલમાં -S અને -vv પરિમાણો ઉમેરો. બાદમાં /var/log/memcached માં વિગતવાર આઉટપુટ પ્રદાન કરશે, જે મુશ્કેલીનિવારણ માટે ઉપયોગી છે.

રેખા આના જેવી હોવી જોઈએ:

. . .
OPTIONS="-l 127.0.0.1 -U 0 -S -vv"

ફાઇલ સાચવો અને બંધ કરો.

Memcached સેવા પુનઃપ્રારંભ કરો:

sudo systemctl restart memcached

પછી તમારે SASL સપોર્ટ સક્ષમ છે તેની ખાતરી કરવા માટે લોગ જોવાની જરૂર છે:

sudo journalctl -u memcached

તમારે નીચેની લાઇન જોવી જોઈએ, જે SASL સમર્થનની પુષ્ટિ કરે છે:

. . .
Mar 05 18:16:11 memcached-server memcached: પ્રારંભિક SASL.
. . .

તમે હવે ફરીથી કનેક્શનનું પરીક્ષણ કરી શકો છો, પરંતુ SASL સપોર્ટને સક્ષમ કર્યા પછી આ આદેશને અપ્રમાણિત ભૂલ પરત કરવી જોઈએ:

memstat --servers="127.0.0.1"

આ આદેશ સ્ક્રીન પર પરિણામ બતાવતું નથી. તેની સ્થિતિ તપાસવા માટે નીચેના દાખલ કરો:

$? છેલ્લા પૂર્ણ થયેલ આદેશનો આઉટપુટ કોડ હંમેશા પરત કરશે. સામાન્ય રીતે, 0 સિવાયનો કોઈપણ પ્રતિભાવ સૂચવે છે કે પ્રક્રિયા નિષ્ફળ ગઈ છે. આ કિસ્સામાં, તમારે 1 ની બહાર નીકળવાની સ્થિતિ જોવી જોઈએ, જેનો અર્થ છે કે memcstat આદેશ યોગ્ય રીતે ચલાવવામાં આવ્યો ન હતો.

વપરાશકર્તા બનાવી રહ્યા છીએ

હવે તમારે બે પેકેજો ડાઉનલોડ કરવાની જરૂર છે જે સાયરસ SASL લાઇબ્રેરી અને પ્રમાણીકરણ મિકેનિઝમ્સ સાથે કામ પૂરું પાડે છે, જેમાં PLAIN પ્રમાણીકરણ સ્કીમ્સને સપોર્ટ કરતા પ્લગઇન્સનો સમાવેશ થાય છે. cyrus-sasl-devel અને cyrus-sasl-plain પેકેજો તમને વપરાશકર્તા બનાવવા અને પ્રમાણીકરણ કરવા માટે પરવાનગી આપશે. પેકેજો ઇન્સ્ટોલ કરો:

sudo yum cyrus-sasl-devel cyrus-sasl-plain ઇન્સ્ટોલ કરો

આગળ, તમારે એક ડિરેક્ટરી અને ફાઇલ બનાવવાની જરૂર છે જ્યાં Memcached SASL રૂપરેખાંકન સેટિંગ્સને તપાસશે.

sudo mkdir -p /etc/sasl2
sudo vi /etc/sasl2/memcached.conf

ફાઇલમાં નીચેના ઉમેરો:

mech_list: સાદા
લોગ_લેવલ: 5
sasldb_path: /etc/sasl2/memcached-sasldb2

લોગીંગ લેવલ ઉપરાંત, અહીં તમારે mech_list પરિમાણનો ઉલ્લેખ કરવાની જરૂર છે અને તેને સાદા મૂલ્યની સોંપણી કરવાની જરૂર છે, જેના કારણે Memcached તેની પોતાની પાસવર્ડ ફાઇલનો ઉપયોગ કરી શકશે અને ફોર્મમાં પાસવર્ડ્સ ચેક કરી શકશે. સાદો લખાણ. તમારે વપરાશકર્તા ડેટાબેઝ ફાઇલનો પાથ પણ સ્પષ્ટ કરવાની જરૂર છે, જે આગળ બનાવવામાં આવશે. ફાઇલ સાચવો અને બંધ કરો.

હવે આપણે વપરાશકર્તાના ઓળખપત્રો સાથે SASL ડેટાબેઝ બનાવવાની જરૂર છે. -c વિકલ્પનો ઉપયોગ કરીને ડેટાબેઝમાં વપરાશકર્તા માટે નવી એન્ટ્રી કરવા માટે saslpasswd2 આદેશનો ઉપયોગ કરો. અહીં વપરાશકર્તાને પરંપરાગત રીતે 8host કહેવામાં આવે છે, પરંતુ તમે આ નામ બદલી શકો છો. -f વિકલ્પની મદદથી, તમે ડેટાબેઝનો પાથ સ્પષ્ટ કરી શકો છો (તમે /etc/sasl2/memcached.conf ડિરેક્ટરીમાં સ્પષ્ટ કરેલ પાથ):

sudo saslpasswd2 -a memcached -c -f /etc/sasl2/memcached-sasldb2 8host

હવે SASL ડેટાબેઝને memcache વપરાશકર્તા અધિકારો આપો.

sudo chown memcached:memcached /etc/sasl2/memcached-sasldb2

Memcached સેવા પુનઃપ્રારંભ કરો:

sudo systemctl restart memcached

memcstat આદેશ ફરીથી પુષ્ટિ કરશે કે શું પ્રમાણીકરણ પ્રક્રિયા કામ કરે છે. આ વખતે ઓળખપત્રો સાથે આદેશ ચલાવો:

memstat --servers="127.0.0.1" --username=8host --password=your_password

તમને પરિણામ મળશે:

સર્વર: 127.0.0.1 (11211)
પીઆઈડી: 3831
અપટાઇમ: 9
સમય: 1520028517
સંસ્કરણ: 1.4.25
. . .

Memcached હવે SASL અને વપરાશકર્તા પ્રમાણીકરણને આધાર આપે છે.

ખાનગી નેટવર્ક ઍક્સેસ સેટ કરી રહ્યું છે

હવે તમે જાણો છો કે સ્થાનિક ઈન્ટરફેસ પર સાંભળવા માટે મેમકેશ્ડને કેવી રીતે ગોઠવવું, જે સેવાના હુમલાને નકારવાથી અટકાવી શકે છે અને મેમકેશ્ડ ઈન્ટરફેસને પ્રભાવિત થવાથી બચાવી શકે છે. બાહ્ય પક્ષો. જો કે, કેટલાક કિસ્સાઓમાં Memcached ને અન્ય સર્વર્સને ઍક્સેસ કરવાની મંજૂરી આપવાની જરૂર છે. આ કરવા માટે, તમે Memcached ને ખાનગી નેટવર્ક ઈન્ટરફેસ સાથે બાંધી શકો છો.

ફાયરવોલમાં IP એડ્રેસ દ્વારા એક્સેસને પ્રતિબંધિત કરવું

તમે રૂપરેખાંકન શરૂ કરો તે પહેલાં, એ આગ્રહણીય છે કે તમે Memcached સર્વરની ઍક્સેસને પ્રતિબંધિત કરવા માટે ફાયરવોલ નિયમોને રૂપરેખાંકિત કરો. જો તમે પૂર્ણ કરી લો અને બીજા હોસ્ટમાંથી Memcached સાથે જોડાવાની યોજના નથી, તો તમારે ફાયરવોલ નિયમો બદલવાની જરૂર નથી. તમારો સ્ટેન્ડઅલોન મેમકેશ્ડ દાખલો 127.0.0.1 પર સાંભળવો જોઈએ જે તમે અગાઉ વ્યાખ્યાયિત કરેલ OPTIONS ચલને આભારી છે, તેથી આવનારા ટ્રાફિક વિશે ચિંતા કરવાની કોઈ જરૂર નથી. તેમ છતાં, જો તમે અન્ય યજમાનોમાંથી તમારા મેમકેશ્ડ સર્વરને ઍક્સેસ કરવાની મંજૂરી આપવાનું આયોજન કરો છો, તો તમારે firewall-cmd આદેશનો ઉપયોગ કરીને તમારા ફાયરવોલ સેટિંગ્સમાં ફેરફાર કરવાની જરૂર પડશે.

પ્રથમ, તમારી ફાયરવોલ્ડ પોલિસીમાં સમર્પિત મેમકેશ્ડ ઝોન ઉમેરો:

sudo firewall-cmd --permanent --new-zone=memcached

પછી ખોલવા માટે પોર્ટ સ્પષ્ટ કરો. મૂળભૂત રીતે Memcached 11211 વાપરે છે.

sudo firewall-cmd --permanent --zone=memcached --add-port=11211/tcp

આગળ, ક્લાઈન્ટોના આંતરિક IP સરનામાઓનો ઉલ્લેખ કરો કે જે Memcached ને ઍક્સેસ કરવા સક્ષમ હોવા જોઈએ.

sudo firewall-cmd --permanent --zone=memcached --add-source=client_server_private_IP

નિયમો અપડેટ કરવા માટે, ફાયરવોલને ફરીથી પ્રારંભ કરો:

sudo firewall-cmd --reload

ક્લાયન્ટ IP એડ્રેસ પરથી આવતા પેકેટો હવે સમર્પિત મેમકેશ્ડ ઝોનમાં નિયમો અનુસાર પ્રક્રિયા કરવા જોઈએ. અન્ય તમામ જોડાણો ડિફોલ્ટ જાહેર ઝોનમાં પ્રક્રિયા કરવામાં આવશે.

પછી તમે Memcached ને ખાનગી નેટવર્ક ઈન્ટરફેસ સાથે બાંધી શકો છો.

ખાનગી નેટવર્ક ઈન્ટરફેસને આધાર આપવા માટે Memcached ને રૂપરેખાંકિત કરી રહ્યા છે

હવે જ્યારે ફાયરવોલ તૈયાર છે, તમે OPTIONS વેરીએબલને સંપાદિત કરીને 127.0.0.1 ને બદલે સર્વરના ખાનગી ઈન્ટરફેસ સાથે Memcached ને બાંધી શકો છો.

ખોલો /etc/sysconfig/memcached:

sudo vi /etc/sysconfig/memcached

અંદર, OPTIONS ચલ શોધો. હવે તમારે -l 127.0.0.1 બદલવાની અને Memcached સર્વરનું આંતરિક IP સરનામું સ્પષ્ટ કરવાની જરૂર છે:

. . .
OPTIONS="-l memcached_servers_private_IP -U 0 -S -vv"

ફાઇલ સાચવો અને બંધ કરો.

Memcached પુનઃપ્રારંભ કરો:

sudo systemctl restart memcached

ચકાસો કે netstat આદેશનો ઉપયોગ કરીને બધું યોગ્ય રીતે કાર્ય કરી રહ્યું છે:

sudo netstat -plunt
સક્રિય ઇન્ટરનેટ કનેક્શન્સ (માત્ર સર્વર્સ)
Proto Recv-Q મોકલો-Q સ્થાનિક સરનામું વિદેશી સરનામું રાજ્ય PID/પ્રોગ્રામ નામ
. . .
tcp 0 0 memcached_servers_private_IP:11211 0.0.0.0:* સાંભળો 2383/memcached
. . .

તમે હજી પણ સેવાને ઍક્સેસ કરી શકો છો તેની ખાતરી કરવા માટે બાહ્ય ક્લાયંટનું કનેક્શન તપાસો. ફાયરવોલ કનેક્શનને મંજૂરી આપશે નહીં તેની ખાતરી કરવા માટે અનધિકૃત ક્લાયન્ટની ઍક્સેસનું પરીક્ષણ કરવાની પણ ભલામણ કરવામાં આવે છે.

નિષ્કર્ષ

હવે તમે જાણો છો કે Memcached કેવી રીતે ઇન્સ્ટોલ કરવું અને આ સેવાની સુરક્ષા કેવી રીતે સુનિશ્ચિત કરવી.

Memcached વિશે વધુ જાણવા માટે, તપાસો

આ નોંધમાં હું તે શું છે તે પ્રશ્ન પર વિગતવાર ધ્યાન આપીશ નહીં. જો પ્રશ્ન ઊભો થાય છે કે "તે કેવી રીતે ઇન્સ્ટોલ કરવું", તો તમારી પાસે પહેલાથી જ "તે શું છે" (ઓછામાં ઓછું અંદાજિત) નો જવાબ છે! 🙂

પરંતુ માં સામાન્ય રૂપરેખા memcache એ એક વિશિષ્ટ પ્રોગ્રામ છે જે તમને સર્વરની રેમમાં ડેટા (ઉદાહરણ તરીકે, SQL ક્વેરીઝના પરિણામો, સ્ક્રિપ્ટ્સના તૈયાર પરિણામો, છબીઓ = સામાન્ય રીતે, કાર્ય માટે જરૂરી કોઈપણ ઑબ્જેક્ટ્સ) કેશ કરવાની મંજૂરી આપે છે. આ મેમરી સેંકડો (ક્યારેક હજારો) ગણી ઝડપી છે હાર્ડ ડ્રાઈવો, તેથી, તેમાં ડેટા સંગ્રહિત કરવું, વધુ ખર્ચાળ હોવા છતાં, પ્રદર્શનની દ્રષ્ટિએ અનેક ગણું વધુ કાર્યક્ષમ છે, જે સર્વર પરના લોડ અને સાઇટ સ્ક્રિપ્ટ્સની ઝડપ બંને પર ખૂબ જ સકારાત્મક અસર કરે છે.

વેબ સર્વર પર મેમકેશ કેવી રીતે ઇન્સ્ટોલ કરવું.

મેમકેશ્ડ સર્વર પોતે જ ઇન્સ્ટોલ કરો

Yum -y memcached ઇન્સ્ટોલ કરો

તેની રૂપરેખાને સંપાદિત કરો જેથી તે ફક્ત સર્વરને જ સાંભળે અને બહારની વિનંતીઓ પર પ્રક્રિયા ન કરે (આ સામાન્ય સમજ અને સુરક્ષા બંનેની બાબત છે - તમારી મેમરીમાં ત્યાં શું સંગ્રહિત છે તે શા માટે કોઈ જોશે?)

આ કરવા માટે, સંપાદન માટે ફાઇલ ખોલો /etc/sysconfig/memcached

અને સાથે OPTIONS લાઇન બદલો

OPTIONS="-l 127.0.0.1"

ડિફૉલ્ટ રૂપે, memcache ઑપરેશન માટે સમાન રૂપરેખામાં, તે દર્શાવેલ છે કે RAM ની 64 MB માહિતી સંગ્રહ માટે ફાળવેલ છે. જો તમારે વધુ સેટ કરવાની જરૂર હોય, તો પછી ફક્ત લાઇનમાં મૂલ્ય બદલો

CACHESIZE="64"

તમને જે જોઈએ છે તેના માટે.

પણ યાદ રાખો, કે વધુ પડતી મેમરી ફાળવવાની જરૂર વગર, ખાસ કરીને જો તે બધી પાછળથી ઉપયોગમાં લેવામાં આવશે નહીં, તે પણ હાનિકારક છે! (જો માત્ર એટલા માટે કે RAM એ વેબ સર્વરનું મૂલ્યવાન સંસાધન છે, જે સૌથી અયોગ્ય ક્ષણે સમાપ્ત થઈ જાય છે)

હવે તે રહે છે મેમકેશ ડિમન શરૂ કરોઅને તેને સ્ટાર્ટઅપમાં ઉમેરો (અન્યથા, જ્યારે તમે સમગ્ર સર્વરને પુનઃપ્રારંભ કરો છો, ત્યારે તમારે તેને મેન્યુઅલી શરૂ કરવું પડશે):

/etc/init.d/memcached ચાલુ કરો chkconfig memcached ચાલુ કરો

મેમકેશ મોડ્યુલ ઇન્સ્ટોલ કરવા માટેના છેલ્લા પગલાં છે:

Yum -y php-pecl-memcache ઇન્સ્ટોલ કરો

....અને અપાચે પુનઃપ્રારંભ કરો:

/etc/init.d/httpd પુનઃપ્રારંભ કરો

અંતે, તમે આ રીતે તપાસી શકો છો કે મેમકેશ પોર્ટ 11211 પર સાંભળી રહ્યું છે કે કેમ: .

બધા. હવે તમારે ફક્ત સાઇટ કેશીંગ સેટિંગ્સમાં સ્પષ્ટ કરવાની જરૂર છે

સર્વર સરનામું: 127.0.0.1 (અથવા લોકલહોસ્ટ એ જ વસ્તુ છે)

બંદર: 11211

અને આ કેશીંગ પદ્ધતિના તમામ ફાયદાઓનો આનંદ લો.

વારંવાર પૂછાતા પ્રશ્નો

    ફાઇલની સંપૂર્ણ સામગ્રીને કાઢી નાખવાની સૌથી સરળ રીત (તેને સાફ કરો) એ છે કે તેમાં /dev/null ફાઇલની "સામગ્રી" ની નકલ કરવી (*nix માં /dev/null એ ખાલીપણું માટે સમાનાર્થી છે. બધું જે છે તેમાં નકલ કરવામાં આવે છે તે ખોવાઈ જાય છે, તેમાંથી જે નકલ કરવામાં આવે છે તે ખાલીપણું છે).

    તમે ચલાવીને આ કરી શકો છો:

    Cp /dev/null file.ext

    , જ્યાં file.ext એ સાફ કરવાની ફાઇલનું નામ છે.

    સૌથી સહેલો રસ્તો- આદેશ ચલાવો:

    /path/to/folder શોધો | wc -l

    જ્યાં /path/to/folder એ ડિસ્કના રુટમાંથી ચકાસાયેલ ફોલ્ડરનો પાથ છે.

    શોધો. -મનની ઊંડાઈ 2 | awk -F/ "( પ્રિન્ટ $2"/" )" | સૉર્ટ કરો | uniq -c | sort -n

    પરંતુ ઘણીવાર આવી વિગતોની જરૂર હોતી નથી - તે 2-3 ફોલ્ડર્સ જોવા માટે પૂરતું છે જેમાં સૌથી વધુ તત્વો હોય છે. આ કરવા માટે, સમાન આદેશના અંતે ઉમેરો | પૂંછડી -3(તેમાં "3" એ તત્વોની સંખ્યા છે જે બતાવવામાં આવશે):

    શોધો. -મનની ઊંડાઈ 2 | awk -F/ "( પ્રિન્ટ $2"/" )" | સૉર્ટ કરો | uniq -c | sort -n | પૂંછડી -3

  • એક ફાઇલ માટે પરવાનગીઓ સેટ કરવી:

    chmod 644 /path/to/file/filename.ext જ્યાં,
    • /path/to/file/ - રૂટમાંથી ફાઈલનો પાથ
    • filename.ext - ફાઇલનું નામ
    વધુ સરળ - સાઇટ ફોલ્ડર પર જાઓ અને ચલાવો: chmod 644 filename.ext

    બધી ફાઇલો પર પરવાનગીઓ કેવી રીતે સેટ કરવી (સબફોલ્ડરમાં ફાઇલો સહિત)

    ફોલ્ડર પર જાઓ જ્યાં ફાઇલો છે અને ચલાવો: શોધો. -પ્રકાર f -exec chmod 644 () \;
  • જેમ જેમ તે બહાર આવ્યું છે, ઘણા વપરાશકર્તાઓ જાણતા નથી કે સર્વર સાથે આગળ કામ કરવા માટે shh (તેના કન્સોલની ઍક્સેસ મેળવો) દ્વારા કેવી રીતે કનેક્ટ કરવું. આ પોસ્ટમાં હું આ જ્ઞાનના અંતરને સુધારવાનો પ્રયત્ન કરીશ! :) SSH દ્વારા રિમોટ સર્વર સાથે કનેક્ટ થવા માટે તમારે વધુ જરૂર નથી:

    • 1) SSH ક્લાયંટ
    • 2) સર્વર સાથે કનેક્ટ થવા માટેનો ડેટા (તેનું IP સરનામું, વપરાશકર્તા નામ અને પાસવર્ડ) - આ તમને સર્વર પ્રદાન કરનાર પ્રદાતા પાસેથી મેળવી શકાય છે.

    ચાલો પ્રથમ બિંદુથી શરૂ કરીએ.

    વિન્ડોઝમાંથી SSH દ્વારા કનેક્ટ થઈ રહ્યું છે

    આ યોજના વિન્ડોઝના તમામ સંસ્કરણો માટે સમાન છે. પ્રથમ તમારે પુટ્ટી નામનો એક વિશેષ ક્લાયંટ પ્રોગ્રામ ડાઉનલોડ કરવાની જરૂર છે: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html ( putty-0.63-installer.exe પર ક્લિક કરો) તેને ઇન્સ્ટોલ કરો અને તેને ચલાવો, હોસ્ટનામ ફીલ્ડમાં સર્વર સરનામું દાખલ કરો (પોર્ટ ફીલ્ડનું મૂલ્ય 22 હોવું જોઈએ):

    પુટ્ટી સાથે ssh દ્વારા કનેક્ટ થઈ રહ્યું છે


    પુષ્ટિ કરો કે નોડ વિશ્વસનીય છે


    તમારું વપરાશકર્તા નામ દાખલ કરો

    તે પછી, પાસવર્ડ દાખલ કરો અને બસ - તમે ssh દ્વારા સર્વર સાથે કનેક્ટ થયા છો!

    ધ્યાન આપો!પાસવર્ડ દાખલ કરતી વખતે, સુરક્ષા કારણોસર, "તારા" પણ પ્રદર્શિત થતા નથી! તે આ રીતે હોવું જોઈએ - ફક્ત પાસવર્ડ દાખલ કરો અને દબાવો " દાખલ કરો"

    Linux થી SSH દ્વારા કનેક્ટ થઈ રહ્યું છે

    જો તમારા વર્ક કોમ્પ્યુટર પર કોઈપણ Linux નું કોઈપણ સંસ્કરણ ઇન્સ્ટોલ કરેલું છે, તો બધું ખૂબ જ સરળ છે - ટર્મિનલ ખોલો અને આદેશ દાખલ કરો

    Ssh [ઇમેઇલ સુરક્ષિત]

    અને તમારો પાસવર્ડ દાખલ કરોક્યાં, વપરાશકર્તા નામ - વપરાશકર્તા નામ. 111.222.333.444 - સર્વર IP સરનામું જો પ્રથમ વખત કનેક્ટ થઈ રહ્યું હોય, તો તમારે "શબ્દ લખીને તમારા ઇરાદાની પુષ્ટિ કરવાની પણ જરૂર પડશે. હા"અને દબાવીને" દાખલ કરો".

મેમરી ઑબ્જેક્ટ કેશીંગ સિસ્ટમ્સ જેમ કે મેમકેશ્ડ, મેમરીમાં અસ્થાયી રૂપે માહિતી સંગ્રહિત કરીને, વારંવાર અથવા તાજેતરમાં વિનંતી કરાયેલ રેકોર્ડ્સને જાળવી રાખીને બેકએન્ડ ડેટાબેઝ પ્રદર્શનને ઑપ્ટિમાઇઝ કરી શકે છે. આ રીતે, તેઓ તમારા ડેટાબેસેસને સીધી વિનંતીઓની સંખ્યા ઘટાડે છે.

જો અયોગ્ય રીતે રૂપરેખાંકિત કરેલ હોય તો Memcached જેવી સિસ્ટમો સેવા હુમલાઓને નકારવામાં યોગદાન આપી શકે છે, તમારા Memcached સર્વર્સને સુરક્ષિત કરવું મહત્વપૂર્ણ છે. આ માર્ગદર્શિકામાં, અમે તમારા ઇન્સ્ટોલેશનને સ્થાનિક અથવા ખાનગી નેટવર્ક ઇન્ટરફેસ સાથે બાંધીને અને તમારા Memcached ઉદાહરણ માટે અધિકૃત વપરાશકર્તા બનાવીને તમારા Memcached સર્વરને કેવી રીતે સુરક્ષિત કરવું તે આવરીશું.

પૂર્વજરૂરીયાતો

આ ટ્યુટોરીયલ ધારે છે કે તમારી પાસે બિન-રુટ સુડો વપરાશકર્તા અને મૂળભૂત ફાયરવોલ સાથે સર્વર સેટઅપ છે. જો તે કિસ્સો નથી, તો નીચે આપેલ સેટઅપ અને ઇન્સ્ટોલ કરો:

  • એક CentOS 7 સર્વર, અમારા અનુસરીને સેટ અપ કરે છે.
  • FirewallD, CentOS 7 સાથે FirewallD નો ઉપયોગ કરવા પર અમારી માર્ગદર્શિકાના વિભાગને અનુસરીને ગોઠવેલ.

આ પૂર્વજરૂરીયાતો સાથે, તમે તમારા Memcached સર્વરને ઇન્સ્ટોલ અને સુરક્ષિત કરવા માટે તૈયાર હશો.

અધિકૃત રિપોઝીટરીઝમાંથી Memcached ઇન્સ્ટોલ કરી રહ્યું છે

જો તમે પહેલાથી તમારા સર્વર પર Memcached ઇન્સ્ટોલ કરેલ નથી, તો તમે તેને અધિકૃત CentOS રિપોઝીટરીઝમાંથી ઇન્સ્ટોલ કરી શકો છો. પ્રથમ, ખાતરી કરો કે તમારું સ્થાનિક પેકેજ ઇન્ડેક્સ અપડેટ થયેલ છે:

  • સુડો યમ અપડેટ

આગળ, નીચે પ્રમાણે સત્તાવાર પેકેજ ઇન્સ્ટોલ કરો:

  • sudo yum memcached ઇન્સ્ટોલ કરો

અમે libmemcached , એક લાઇબ્રેરી પણ ઇન્સ્ટોલ કરી શકીએ છીએ જે કામ કરવા માટે ઘણા ટૂલ્સ પ્રદાન કરે છે તમારી સાથેમેમકેશ્ડ સર્વર:

  • sudo yum install libmemcached

Memcached હવે તમારા સર્વર પર સેવા તરીકે ઇન્સ્ટોલ થવી જોઈએ, તે સાધનો સાથે કે જે તમને તેની કનેક્ટિવિટી ચકાસવા દેશે. હવે આપણે તેના રૂપરેખાંકન સેટિંગ્સને સુરક્ષિત કરવા માટે આગળ વધી શકીએ છીએ.

Memcached રૂપરેખાંકન સેટિંગ્સ સુરક્ષિત

અમારું Memcached ઉદાહરણ સ્થાનિક ઈન્ટરફેસ 127.0.0.1 પર સાંભળી રહ્યું છે તેની ખાતરી કરવા માટે, અમે /etc/sysconfig/memcached પર સ્થિત રૂપરેખાંકન ફાઈલમાં OPTIONS ચલને સંશોધિત કરીશું. અમે UDP લિસનરને પણ અક્ષમ કરીશું. આ બંને ક્રિયાઓ અમારા સર્વરને સેવા હુમલાના ઇનકારથી સુરક્ષિત કરશે.

તમે vi સાથે /etc/sysconfig/memcached ખોલી શકો છો:

OPTIONS ચલ શોધો, જે શરૂઆતમાં આના જેવો દેખાશે:

/etc/sysconfig/memcached

વિકલ્પો=""

અમારા સ્થાનિક નેટવર્ક ઇન્ટરફેસ સાથે બંધન એ સમાન મશીન પરના ક્લાયંટ માટે ટ્રાફિકને પ્રતિબંધિત કરશે. અમે અમારા OPTIONS વેરીએબલમાં -l 127.0.0.1 ઉમેરીને આ કરીશું. આ ચોક્કસ વાતાવરણ માટે ખૂબ પ્રતિબંધિત હોઈ શકે છે, પરંતુ તે સુરક્ષા માપદંડ તરીકે સારો પ્રારંભિક બિંદુ બનાવી શકે છે.

કારણ કે UDP પ્રોટોકોલ TCP કરતાં સર્વિસ હુમલાઓને નકારવા માટે વધુ અસરકારક છે, અમે UDP લિસનરને પણ અક્ષમ કરી શકીએ છીએ. આ કરવા માટે, અમે અમારા OPTIONS વેરીએબલમાં -U 0 પેરામીટર ઉમેરીશું. સંપૂર્ણ ફાઇલ આના જેવી હોવી જોઈએ:

/etc/sysconfig/memcached

PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="64" OPTIONS="-l 127.0.0.1 -U 0"

જ્યારે તમે પૂર્ણ કરી લો ત્યારે ફાઇલને સાચવો અને બંધ કરો.

તમારા ફેરફારો લાગુ કરવા માટે તમારી Memcached સેવા પુનઃપ્રારંભ કરો:

ચકાસો કે Memcached હાલમાં સ્થાનિક ઈન્ટરફેસ સાથે બંધાયેલ છે અને ફક્ત TCP કનેક્શન્સ માટે ટાઈપ કરીને સાંભળી રહ્યું છે:

  • sudo netstat -plunt

તમારે નીચેનું આઉટપુટ જોવું જોઈએ:

સક્રિય ઇન્ટરનેટ કનેક્શન્સ (માત્ર સર્વર્સ) પ્રોટો Recv-Q મોકલો-Q સ્થાનિક સરનામું વિદેશી સરનામું રાજ્ય PID/પ્રોગ્રામ નામ. . . tcp 0 0 127.0.0.1 :11211 0.0.0.0:* 2383/memcached સાંભળો. . .

આ પુષ્ટિ કરે છે કે memcached માત્ર TCP નો ઉપયોગ કરીને 127.0.0.1 સરનામાં સાથે બંધાયેલ છે.

અધિકૃત વપરાશકર્તાઓ ઉમેરવાનું

તમારી Memcached સેવામાં પ્રમાણિત વપરાશકર્તાઓ ઉમેરવા માટે, સરળ પ્રમાણીકરણ અને સુરક્ષા સ્તર (SASL) નો ઉપયોગ કરવો શક્ય છે, એક ફ્રેમવર્ક કે જે એપ્લિકેશન પ્રોટોકોલ્સમાંથી પ્રમાણીકરણ પ્રક્રિયાઓને ડી-કપલ્સ કરે છે. અમે અમારી Memcached રૂપરેખાંકન ફાઇલમાં SASL ને સક્ષમ કરીશું અને પછી પ્રમાણીકરણ ઓળખપત્રો સાથે વપરાશકર્તાને ઉમેરવા માટે આગળ વધીશું.

SASL સપોર્ટને ગોઠવી રહ્યું છે

અમે મેમસ્ટેટ કમાન્ડ વડે પહેલા અમારા મેમકેશ્ડ ઇન્સ્ટન્સની કનેક્ટિવિટી ચકાસી શકીએ છીએ. આ અમને એ સ્થાપિત કરવામાં મદદ કરશે કે અમે અમારી રૂપરેખાંકન ફાઈલોમાં ફેરફારો કર્યા પછી SASL અને વપરાશકર્તા પ્રમાણીકરણ સક્ષમ છે.

Memcached ચાલુ છે અને ચાલી રહ્યું છે તે ચકાસવા માટે, નીચેનાને ટાઇપ કરો:

  • memstat --servers="127.0.0.1"

હવે આપણે SASL ને સક્ષમ કરવા તરફ આગળ વધી શકીએ છીએ. પ્રથમ, અમે /etc/sysconfig/memcached માં અમારા OPTIONS ચલમાં -S પરિમાણ ઉમેરી શકીએ છીએ, જે SASL ને સક્ષમ કરશે. ફાઇલ ફરીથી ખોલો:

  • sudo vi /etc/sysconfig/memcached

અમે અમારા OPTIONS વેરીએબલમાં -S અને -vv બંને પેરામીટર ઉમેરીશું. -vv વિકલ્પ /var/log/memcached ને વર્બોઝ આઉટપુટ આપશે, જે અમને ડિબગ કરવા માટે મદદ કરશે. આ વિકલ્પોને OPTIONS ચલમાં નીચે પ્રમાણે ઉમેરો:

/etc/sysconfig/memcached

OPTIONS="-l 127.0.0.1 -U 0 -S -vv "

ફાઇલ સાચવો અને બંધ કરો.

  • sudo systemctl restart memcached

આગળ, SASL સપોર્ટ સક્ષમ કરવામાં આવ્યો છે તેની ખાતરી કરવા માટે અમે લોગ પર એક નજર નાખી શકીએ:

  • sudo journalctl -u memcached

તમારે નીચેની લીટી જોવી જોઈએ, જે દર્શાવે છે કે SASL સપોર્ટ શરૂ કરવામાં આવ્યો છે:

Mar 05 18:16:11 memcached-server memcached: પ્રારંભિક SASL. . . .

અમે ફરીથી કનેક્ટિવિટી તપાસી શકીએ છીએ, પરંતુ કારણ કે SASL શરૂ કરવામાં આવ્યું છે, આ આદેશ પ્રમાણીકરણ વિના નિષ્ફળ થવો જોઈએ:

  • memstat --servers="127.0.0.1"

આ આદેશ આઉટપુટ ઉત્પન્ન થવો જોઈએ નહીં. તેની સ્થિતિ ચકાસવા માટે અમે નીચે મુજબ લખી શકીએ છીએ:

  • ઇકો $?

$? બહાર નીકળેલા છેલ્લા આદેશનો એક્ઝિટ કોડ હંમેશા પરત કરશે. સામાન્ય રીતે, 0 સિવાય કંઈપણ પ્રક્રિયા નિષ્ફળતા સૂચવે છે. આ કિસ્સામાં, આપણે 1 ની બહાર નીકળવાની સ્થિતિ જોવી જોઈએ, જે અમને કહે છે કે મેમસ્ટેટ આદેશ નિષ્ફળ ગયો છે.

અધિકૃત વપરાશકર્તા ઉમેરવાનું

હવે અમે બે પેકેજો ડાઉનલોડ કરી શકીએ છીએ જે અમને સાયરસ SASL લાઇબ્રેરી સાથે કામ કરવાની મંજૂરી આપશે અને તેનાપ્રમાણીકરણ મિકેનિઝમ્સ, પ્લગઈનો સહિત કે જે સપોર્ટ કરે છે સાદોપ્રમાણીકરણ યોજનાઓ. આ પેકેજો, cyrus-sasl-devel અને cyrus-sasl-plain, અમને અમારા વપરાશકર્તાને બનાવવા અને પ્રમાણિત કરવાની મંજૂરી આપશે. ટાઈપ કરીને પેકેજો ઇન્સ્ટોલ કરો:

  • sudo yum cyrus-sasl-devel cyrus-sasl-plain ઇન્સ્ટોલ કરો

આગળ, અમે ડિરેક્ટરી અને ફાઇલ બનાવીશું જે Memcached તેની SASL રૂપરેખાંકન સેટિંગ્સ માટે તપાસશે:

  • sudo mkdir -p /etc/sasl2
  • sudo vi /etc/sasl2/memcached.conf

SASL રૂપરેખાંકન ફાઇલમાં નીચેના ઉમેરો:

/etc/sasl2/memcached.conf

Mech_list: પ્લેન log_level: 5 sasldb_path: /etc/sasl2/memcached-sasldb2

અમારા લોગીંગ સ્તરને સ્પષ્ટ કરવા ઉપરાંત, અમે mech_list ને સાદા પર સેટ કરીશું, જે Memcachedને કહે છે કે તેણે તેની પોતાની પાસવર્ડ ફાઇલનો ઉપયોગ કરવો જોઈએ અને સાદા લખાણ પાસવર્ડની ચકાસણી કરવી જોઈએ. અમે વપરાશકર્તા ડેટાબેઝ ફાઇલનો પાથ પણ સ્પષ્ટ કરીશું જે અમે આગળ બનાવીશું. જ્યારે તમે પૂર્ણ કરી લો ત્યારે ફાઇલને સાચવો અને બંધ કરો.

હવે અમે અમારા વપરાશકર્તા ઓળખપત્રો સાથે SASL ડેટાબેઝ બનાવીશું. અમે -c વિકલ્પનો ઉપયોગ કરીને અમારા ડેટાબેઝમાં અમારા વપરાશકર્તા માટે નવી એન્ટ્રી કરવા માટે saslpasswd2 આદેશનો ઉપયોગ કરીશું. અમારા વપરાશકર્તા હશે સેમીઅહીં, પરંતુ તમે આ નામને તમારા પોતાના વપરાશકર્તા સાથે બદલી શકો છો. -f વિકલ્પનો ઉપયોગ કરીને, અમે અમારા ડેટાબેઝનો પાથ સ્પષ્ટ કરીશું, જે અમે /etc/sasl2/memcached.conf માં સેટ કરેલ પાથ હશે:

  • sudo saslpasswd2 -a memcached -c -f /etc/sasl2/memcached-sasldb2 sammy

છેલ્લે, અમે SASL ડેટાબેઝ પર મેમકેશ્ડ વપરાશકર્તાની માલિકી આપવા માંગીએ છીએ:

  • sudo chown memcached:memcached /etc/sasl2/memcached-sasldb2

Memcached સેવા પુનઃપ્રારંભ કરો:

  • sudo systemctl restart memcached

મેમસ્ટેટ ફરીથી ચલાવવાથી પુષ્ટિ થશે કે અમારી ઓથેન્ટિકેશન પ્રક્રિયા કામ કરે છે કે નહીં. આ વખતે અમે તેને અમારા પ્રમાણીકરણ ઓળખપત્રો સાથે ચલાવીશું:

  • memstat --servers="127.0.0.1" --username=sammy --password=your_password

તમારે આઉટપુટ જોવું જોઈએ જેમ કેનીચેના:

સર્વર: 127.0.0.1 (11211) pid: 3831 અપટાઇમ: 9 સમય: 1520028517 સંસ્કરણ: 1.4.25. . .

અમારી Memcached સેવા હવે SASL સપોર્ટ અને વપરાશકર્તા પ્રમાણીકરણ સાથે સફળતાપૂર્વક ચાલી રહી છે.

પ્રાઇવેટ નેટવર્ક પર એક્સેસ કરવાની મંજૂરી આપી રહી છે

અમે સ્થાનિક ઈન્ટરફેસ પર સાંભળવા માટે Memcached ને કેવી રીતે ગોઠવવું તે આવરી લીધું છે, જે Memcached ઈન્ટરફેસને બહારના પક્ષકારોના સંપર્કમાં આવવાથી સુરક્ષિત કરીને સેવા હુમલાના અસ્વીકારને અટકાવી શકે છે. જો કે, એવા કિસ્સાઓ હોઈ શકે છે કે જ્યાં તમારે અન્ય સર્વર્સથી ઍક્સેસની મંજૂરી આપવાની જરૂર પડશે. આ કિસ્સામાં, તમે Memcached ને ખાનગી નેટવર્ક ઈન્ટરફેસ સાથે જોડવા માટે તમારી રૂપરેખાંકન સેટિંગ્સને સમાયોજિત કરી શકો છો.

નોંધ:અમે ઉપયોગ કરીને ફાયરવોલ સેટિંગ્સ કેવી રીતે ગોઠવવી તે આવરીશું ફાયરવોલ ડીઆ વિભાગમાં, પરંતુ આ સેટિંગ્સ બનાવવા માટે DigitalOcean Cloud Firewalls નો ઉપયોગ કરવો પણ શક્ય છે. DigitalOcean Cloud Firewalls સેટ કરવા વિશે વધુ માહિતી માટે, અમારા જુઓ. આવનારા ટ્રાફિકને ચોક્કસ મશીનો પર કેવી રીતે મર્યાદિત કરવા તે વિશે વધુ જાણવા માટે, આ ટ્યુટોરીયલનો વિભાગ અને અમારી ચર્ચા તપાસો.

ફાયરવોલ સાથે IP એક્સેસ મર્યાદિત કરવી

તમે તમારા રૂપરેખાંકન સુયોજનોને સમાયોજિત કરો તે પહેલાં, તમારા Memcached સર્વર સાથે જોડાઈ શકે તેવા મશીનોને મર્યાદિત કરવા માટે ફાયરવોલ નિયમો સુયોજિત કરવા એ સારો વિચાર છે. જો તમે પૂર્વજરૂરીયાતોનું પાલન કર્યું હોય અને તમારા સર્વર પર FirewallD ઇન્સ્ટોલ કર્યું હોય અને કરો નથીબીજા યજમાનમાંથી મેમકેશ્ડ સાથે કનેક્ટ કરવાની યોજના બનાવો, પછી તમારે તમારા ફાયરવોલ નિયમોને સમાયોજિત કરવાની જરૂર નથી. તમારું સ્ટેન્ડઅલોન મેમકેશ્ડ ઉદાહરણ 127.0.0.1 પર સાંભળવું જોઈએ, અમે અગાઉ વ્યાખ્યાયિત કરેલ OPTIONS ચલને આભારી છે, અને તેથી આવનારા ટ્રાફિક વિશે કોઈ ચિંતા હોવી જોઈએ નહીં. જો તમે તમારા Memcached સર્વરને અન્ય યજમાનોમાંથી ઍક્સેસ કરવાની મંજૂરી આપવાનું આયોજન કરો છો, તેમ છતાં, તમારે firewall-cmd આદેશનો ઉપયોગ કરીને તમારા ફાયરવોલ સેટિંગ્સમાં ફેરફાર કરવાની જરૂર પડશે.

તમારી ફાયરવૉલ્ડ નીતિમાં સમર્પિત મેમકેશ્ડ ઝોન ઉમેરીને પ્રારંભ કરો:

  • sudo firewall-cmd --permanent --new-zone=memcached

પછી, સ્પષ્ટ કરો કે તમે કયા પોર્ટને ખુલ્લા રાખવા માંગો છો. Memcached મૂળભૂત રીતે પોર્ટ 11211 નો ઉપયોગ કરે છે:

  • sudo firewall-cmd --permanent --zone=memcached --add-port=11211/tcp

આગળ, ખાનગી IP સરનામાઓનો ઉલ્લેખ કરો કે જેને Memcached ને ઍક્સેસ કરવાની મંજૂરી હોવી જોઈએ. આ માટે, તમારે તમારા જાણવાની જરૂર પડશે ક્લાયંટ સર્વરનું ખાનગી IP સરનામું:

  • sudo firewall-cmd --permanent --zone=memcached --add-source=client_server_private_IP

નવા નિયમો અમલમાં આવે તેની ખાતરી કરવા માટે ફાયરવોલ ફરીથી લોડ કરો:

  • sudo firewall-cmd --reload

તમારા ક્લાયંટના IP એડ્રેસમાંથી પેકેટો હવે સમર્પિત મેમકેશ્ડ ઝોનમાંના નિયમો અનુસાર પ્રક્રિયા કરવા જોઈએ.

આ ફેરફારો સાથે, અમે અમારી Memcached સેવામાં જરૂરી રૂપરેખાંકન ફેરફારો કરવા માટે આગળ વધી શકીએ છીએ, તેને અમારા સર્વરના ખાનગી નેટવર્કિંગ ઈન્ટરફેસ સાથે બાંધી શકીએ છીએ.

ખાનગી નેટવર્ક ઈન્ટરફેસ માટે મેમકેશને બંધનકર્તા

અમારા સર્વરના ખાનગી નેટવર્કિંગ ઈન્ટરફેસને બંધન કરવા માટેનું પ્રથમ પગલું અમે અગાઉ સેટ કરેલ વિકલ્પો ચલને સંશોધિત કરવાનું છે.

અમે ટાઇપ કરીને /etc/sysconfig/memcached ને ફરીથી ખોલી શકીએ છીએ:

  • sudo vi /etc/sysconfig/memcached

અંદર, OPTIONS ચલ શોધો. અમારા Memcached સર્વરના ખાનગી IP ને પ્રતિબિંબિત કરવા માટે હવે અમે -l 127.0.0.1 ને સંશોધિત કરી શકીએ છીએ:

/etc/sysconfig/memcached

OPTIONS="-l memcached_servers_private_IP -U 0 -S -vv"

જ્યારે તમે પૂર્ણ કરી લો ત્યારે ફાઇલને સાચવો અને બંધ કરો.

Memcached સેવા ફરી શરૂ કરો:

  • sudo systemctl restart memcached

ફેરફારની પુષ્ટિ કરવા માટે netstat સાથે તમારી નવી સેટિંગ્સ તપાસો:

  • sudo netstat -plunt
સક્રિય ઇન્ટરનેટ કનેક્શન્સ (માત્ર સર્વર્સ) પ્રોટો Recv-Q મોકલો-Q સ્થાનિક સરનામું વિદેશી સરનામું રાજ્ય PID/પ્રોગ્રામ નામ. . . tcp 0 0 memcached_servers_private_IP :11211 0.0.0.0:* 2383/memcached સાંભળો. . .

તમે હજી પણ સેવા સુધી પહોંચી શકો છો તેની ખાતરી કરવા માટે તમારા બાહ્ય ક્લાયન્ટથી કનેક્ટિવિટીનું પરીક્ષણ કરો. તમારા ફાયરવોલ નિયમો અસરકારક છે તેની ખાતરી કરવા માટે બિન-અધિકૃત ક્લાયન્ટની ઍક્સેસ પણ તપાસવી એ સારો વિચાર છે.

નિષ્કર્ષ

આ ટ્યુટોરીયલમાં અમે તમારા Memcached સર્વરને તમારા સ્થાનિક અથવા ખાનગી નેટવર્ક ઈન્ટરફેસ સાથે જોડવા માટે તેને ગોઠવીને અને SASL પ્રમાણીકરણને સક્ષમ કરીને કેવી રીતે સુરક્ષિત કરવું તે આવરી લીધું છે.

M emcache ઘણી એપ્લિકેશનો માટે ઈન્ફ્રાસ્ટ્રક્ચરનો મુખ્ય ભાગ છે. ડેટાબેસેસ, કતાર અને દૂરસ્થ સેવાઓ ઘણીવાર હોય છે અડચણવેબ વિનંતીઓ, પરંતુ ઘણા કિસ્સાઓમાં તેઓ જે માહિતી ધરાવે છે તે બદલાતી નથી. Memcache એ પ્રમાણભૂત ડિમન છે જે મનસ્વી મૂલ્યોને કેશ કરી શકે છે, અને MySQL ક્વેરીઝથી REST ક્વેરીઝ સુધીની દરેક વસ્તુને ઝડપી બનાવી શકે છે.

Memcache સાથે પ્રારંભ કરી રહ્યા છીએ

આ માર્ગદર્શિકાને પૂર્ણ કરવા માટે, તમારે નીચેનાની જરૂર પડશે:

  • CentOS 7 સાથે 1 નોડ (ક્લાઉડ અથવા ) અને સ્ટેક ઇન્સ્ટોલ કરેલ છે

જ્યારે અમે પૂર્ણ કરી લઈએ, ત્યારે LAMP સ્ટેકને Memcache સાથે વિસ્તૃત કરવામાં આવશે અને તમે તેને હાલની સાઇટ્સ અને એપ્લિકેશન્સમાં એકીકૃત કરવાનું શરૂ કરી શકો છો.

મેનેજમેન્ટ

પ્રથમ, અમે પેકેજ ઇન્સ્ટોલ કરીશું Memcached .

Yum -y memcached ઇન્સ્ટોલ કરો

પેકેજ હવે ઇન્સ્ટોલ થઈ ગયું છે, પરંતુ તે ચાલતું હોવું જોઈએ. જ્યારે સિસ્ટમ બુટ થાય ત્યારે શરૂ કરવા માટે આપણે તેને રૂપરેખાંકિત કરવું પડશે.

Systemctl memcached.service શરૂ કરો systemctl memcached.service સક્ષમ કરો

Memcached હવે શ્રેષ્ઠ ઉપયોગ માટે રૂપરેખાંકિત થયેલ હોવું જોઈએ. અમે તેનું ધ્યાન રાખીશું.

નેનો /etc/sysconfig/memcached

શું તમે Memcached માટે મેમરી ફાળવવા માંગો છો? આ CACHESIZE મૂલ્યને કેશને ફાળવેલ RAM ની ઇચ્છિત રકમમાં બદલીને પ્રાપ્ત થાય છે.

PORT="11211"
USER="મેમકેશ્ડ"
MAXCONN="1024"
CACHESIZE="64"
વિકલ્પો=""

તમે હમણાં જ રૂપરેખાંકન બદલ્યું હોવાથી, તમારે નવા મૂલ્યોને પ્રભાવિત કરવા માટે Memcached પુનઃપ્રારંભ કરવાની જરૂર છે.

Systemctl restart memcached.service

PHP થી Memcached નો ઉપયોગ કરવા માટે, એક્સ્ટેંશન જરૂરી છે. અમે નીચેના ઉદાહરણમાં ઇન્સ્ટોલ કરીશું.

Yum -y php-pecl-memcache ઇન્સ્ટોલ કરો

હવે જ્યારે PHP અપડેટ કરવામાં આવ્યું છે, તમારે અપાચેને ફરીથી શરૂ કરવાની જરૂર છે. પણ, Memcached પુનઃપ્રારંભ કરો.

Systemctl પુનઃપ્રારંભ httpd.service systemctl પુનઃપ્રારંભ memcached.service

ચાલો Memcached મોડ્યુલનું લોડિંગ તપાસીએ.

Php -m | grep memcache memcache

મોડ્યુલની સ્થિતિ વધુ તપાસવા માટે, અમે PHP માહિતી પૃષ્ઠ બનાવીશું. આ કાર્ય રૂપરેખાંકન માહિતી આપે છે પર્યાવરણ PHP. જો Memcached યોગ્ય રીતે રૂપરેખાંકિત થયેલ હોય તો તેમાં સમાવેશ થશે વિગતવાર માહિતી Memcached આધાર વિશે.

નેનો /var/www/html/index.php

હવે આપણે છેલ્લે મોડ્યુલની સ્થિતિ તપાસીશું Memcached PHP માં. તમે હમણાં જ બનાવેલ પૃષ્ઠની મુલાકાત લો: http://your_main_ip/index.php

નિષ્કર્ષ

Memcached એવી સિસ્ટમ છે જે મેમરીમાં તમામ ડેટાને કેશ કરે છે. આનો અર્થ એ છે કે તમે સૌથી વધુ કેશ જનરેટ કરી શકો છો ઝડપી રીતેજે તમને પાયથોન, PHP, રૂબી વગેરે જેવી સૌથી આધુનિક પ્રોગ્રામિંગ ભાષાઓ સાથે એપ્લિકેશનનો ઝડપથી ઉપયોગ કરવાની મંજૂરી આપશે. મારા વિષયમાં "યુનિક્સ/લિનક્સ (સેન્ટોસ/ડેબિયન/ઉબુન્ટુ) પર મેમકેશ ઇન્સ્ટોલ કરવું" માં હું તમને કહીશ કે તમે યુનિક્સ/લિનક્સ પર મેમકૅશ કેવી રીતે ઇન્સ્ટોલ કરી શકો છો અને મેં તે કેવી રીતે કર્યું તે બતાવવા માટે તૈયાર ઉદાહરણનો ઉપયોગ કરીશ. પરીક્ષણ માટે, મેં CentOS 6 અને ડેબિયન 8 પસંદ કર્યું.

Debian/Ubuntu પર memcached ઇન્સ્ટોલ કરી રહ્યું છે

$ sudo apt-get update

હવે Memcached ઇન્સ્ટોલ કરવા માટે નીચેના આદેશનો ઉપયોગ કરો:

$ sudo apt-get install memcached

હવે હું થોડા જરૂરી પેકેજો સાથે PHP ઇન્સ્ટોલ કરીશ:

# apt-get install php5 php5-dev php-pear php5-memcached

તમારે PHP માટે MemCache મોડ્યુલ પણ ઇન્સ્ટોલ કરવાની જરૂર છે:

# apt-get install libmemcached-dev build-essential

છેલ્લે અમે PECL નો ઉપયોગ કરીને Memcache php એક્સ્ટેંશન ઇન્સ્ટોલ કરીએ છીએ:

# pecl memcache ઇન્સ્ટોલ કરો

હવે ચાલો PHP માં MemCache સપોર્ટને સક્ષમ કરીએ. નવી ફાઇલ બનાવતા પહેલા ફક્ત ખાતરી કરો કે તે પહેલાથી જ અસ્તિત્વમાં છે અને જો ફાઇલ પહેલેથી જ અસ્તિત્વમાં છે તો ફક્ત નીચેનો આદેશ ચલાવો:

$ echo "extension=memcache.so" > /etc/php5/apache2/conf.d/20-memcache.ini

બધા ફેરફારો પછી, અપાચે સેવા પુનઃપ્રારંભ કરો:

# સેવા apache2 પુનઃપ્રારંભ કરો

RedHat/CentOS/Fedora પર memcached ઇન્સ્ટોલ કરી રહ્યું છે

પ્રથમ, ચાલો OS ને અપડેટ કરીએ:

# યમ અપડેટ

અપડેટ પછી, memcached ઇન્સ્ટોલ કરો:

# yum memcached ઇન્સ્ટોલ કરો

memcached સુયોજિત કરી રહ્યા છીએ

ચાલો ફાઈલ સંપાદિત કરીએ:

$ vim /etc/sysconfig/memcached

ખાતરી કરો કે આ રૂપરેખાંકન ફાઇલમાં નીચેની લીટીઓ છે:

PORT="11211" USER="memcached" MAXCONN="256" CACHESIZE="64" OPTIONS="-l 127.0.0.1"

પોર્ટ 11211 Memcached માટે મૂળભૂત સાંભળવાનું પોર્ટ છે.
USER— આ મેમકેશ્ડ વપરાશકર્તા છે જેમાંથી ડિમન લોન્ચ થશે.
મેક્સકોન— શક્ય જોડાણોની મહત્તમ સંખ્યા.
CACHESIZE- આ ઉપયોગ કરવા માટે મેગાબાઇટ્સ (64 MB) ની સંખ્યા છે, જો તમારી પાસે ઘણો ટ્રાફિક હોય, તો મોટાભાગની નાની/મધ્યમ સાઇટ્સ માટે આ સારું છે. વ્યસ્ત સર્વર માટે, તમે તેને 512 અથવા 1 GB (1024 MB) વધારી શકો છો.
વિકલ્પો=”-l 127.0.0.1″- આનો અર્થ એ છે કે memcached માત્ર લોકલહોસ્ટ પર સાંભળશે, કોઈપણ બાહ્ય જોડાણોને ટાળીને. તમે સર્વર IP સરનામું સેટ કરી શકો છો. મૂળભૂત રીતે તે INADDR_ANY પર સેટ છે. આ એક મહત્વપૂર્ણ વિકલ્પ છે કારણ કે ઇન્સ્ટોલેશનની ખાતરી કરવા માટે અન્ય કોઈ રીત નથી. આંતરિક અથવા ગેટવે ઇન્ટરફેસ સાથે જોડવાનું સૂચન કરવામાં આવે છે.

CentOS/RHEL 6/5 માટે:

મેમકેશ્ડ લોંચ થઈ ગયું છે:

# સેવા મેમકેશ્ડ પ્રારંભ

ચાલો OS બુટમાં memcached ઉમેરીએ:

# chkconfig memcached ચાલુ

CentOS/RHEL 7 માટે:

# systemctl enable memcached # systemctl start memcached

Memcached સાથે PHP એક્સ્ટેન્શન્સ ઇન્સ્ટોલ કરવું.

કરવું:

# yum php-pear pecl_http php-devel ઇન્સ્ટોલ કરો

અને અમે અમલ કરીએ છીએ:

$ pecl memcache ઇન્સ્ટોલ કરો

જો PECL તમને ઈન્સ્ટોલેશન દરમિયાન નીચે દેખાતો પ્રશ્ન પૂછે, તો ફક્ત ENTER દબાવો:

"મેમકેશ સત્ર હેન્ડલર સપોર્ટને સક્ષમ કરીએ?"

મને એક ભૂલ મળી:

ભૂલ: `/var/tmp/memcache/configure --enable-memcache-session=yes" નિષ્ફળ

સુધારી રહ્યું છે:

# yum libmemcached libmemcached-devel ઇન્સ્ટોલ કરો

નીચે આપેલ મળ્યું:

zlib સ્થાન માટે તપાસ કરી રહ્યું છે... રૂપરેખાંકિત કરો: ભૂલ: memcached સપોર્ટને ZLIB ની જરૂર છે. --with-zlib-dir= નો ઉપયોગ કરો

ઉપસર્ગ સ્પષ્ટ કરવા માટે જ્યાં ZLIB હેડરો અને લાઇબ્રેરી સ્થિત છે ERROR: `/var/tmp/memcached/configure" નિષ્ફળ

# yum zlib zlib-devel ઇન્સ્ટોલ કરો

php.ini માં memcache.so મોડ્યુલ ઉમેરો

# echo "extension=memcache.so" >> /etc/php.ini

અમે સેવાઓ ફરી શરૂ કરીએ છીએ.

જો તમારા સર્વર પર php-fpm ઇન્સ્ટોલ કરેલ હોય, તો તેને પુનઃપ્રારંભ કરવા માટે, ચલાવો:

# સેવા php-fpm ફરીથી લોડ કરો

જો અપાચે તમારા સર્વર પર ઇન્સ્ટોલ કરેલું છે, તો પછી તેને ફરીથી શરૂ કરવા માટે, ચલાવો:

CentOS/RHEL 7 માટે:

# systemctl પુનઃપ્રારંભ httpd

CentOS/RHEL 6/5 માટે:

# સેવા httpd પુનઃપ્રારંભ કરો

Memcached ઑપરેશનનું પરીક્ષણ/તપાસ

MemCache સેટિંગ્સ તપાસી રહ્યું છે

Memcached સેવા સામાન્ય રીતે ચાલી રહી છે તેની ખાતરી કરવા અને તેની ખાતરી કરવા માટે નીચેના આદેશનો ઉપયોગ કરો:

$ echo "આંકડા સેટિંગ્સ" | nc લોકલહોસ્ટ 11211

હવે આપણે એક્સ્ટેંશન સક્ષમ છે કે કેમ તે તપાસવાની જરૂર છે અને ખાતરી કરો કે તે યોગ્ય રીતે કાર્ય કરે છે. તમારી હોમ ડિરેક્ટરીમાં એક ફાઇલ બનાવો અને નીચેનો PHP કોડ લખો:

# પડઘો"" > /var/www/html/php_info.php

જો તમે સાઇટ ખોલો છો, તો તમે જોશો:

Memcached એ PHP મોડ્યુલ તરીકે ઇન્સ્ટોલ કરેલ છે કે કેમ તે તપાસો:

# php -i | grep memcache -i

Memcached માટે ફાયરવોલ સુયોજિત કરી રહ્યા છીએ

કનેક્શનને મંજૂરી આપવા માટે નીચેના નિયમો ઉમેરો (મેમકેશ્ડ કામ કરવા માટે):

Iptables -A INPUT -p tcp --ગંતવ્ય-પોર્ટ 11211 -m રાજ્ય -- રાજ્ય NEW -m iprange --src-range 192.168.1.10-192.168.1.15 -j iptables સ્વીકારો -A INPUT -p udp -- destination-port 11211 -m state --state NEW -m iprange --src-રેન્જ 192.168.108 -192.168.1.15 -j સ્વીકારો

તપાસો કે શું મેમકેશ્ડ ડિમન OS પર ચાલી રહ્યું છે:

$ps -aux | grep memcached

આ સાથે, લેખ "યુનિક્સ/લિનક્સ (સેન્ટોસ/ડેબિયન/ઉબુન્ટુ) માં મેમકેશ ઇન્સ્ટોલ કરવું" પૂર્ણ થયો.



શું તમને લેખ ગમ્યો? તમારા મિત્રો સાથે શેર કરો!