இயக்க முறைமைகள்

SSH கட்டளைகள் மூலம் Linux சர்வர் மேலாண்மை: வெப்மாஸ்டர்களுக்கான அடிப்படை கட்டளைகள்

  • 14 படிக்க நிமிடங்கள்
  • Hostragons குழு
SSH கட்டளைகள் மூலம் Linux சர்வர் மேலாண்மை: வெப்மாஸ்டர்களுக்கான அடிப்படை கட்டளைகள்

SSH கட்டளைகள் மூலம் Linux சர்வர் மேலாண்மை என்பது, ஒரு வெப்மாஸ்டர் தன் தொலை Linux சர்வருடன் பாதுகாப்பாக இணைந்து, கோப்புகள், சேவைகள், பயனர்கள், log-கள், பாதுகாப்பு மற்றும் செயல்திறன் தொடர்பான பணிகளை terminal வழியாக நிர்வகிப்பதைக் குறிக்கும். அடிப்படை தேவைகளுக்கு ssh kullanıcı@sunucu-ip கட்டளையால் சர்வருடன் இணைக்கலாம்; ls, cd, pwd, cp, mv, rm, nano, systemctl, journalctl, top, df, du, chmod, chown, tar, scp மற்றும் rsync போன்ற கட்டளைகளால் ஒரு வலைத்தளத்தை live செய்யலாம், பிழைகளைப் பார்க்கலாம், சேவைகளை restart செய்யலாம், backup-களை நிர்வகிக்கலாம். குறிப்பாக hosting, VPS அல்லது dedicated server பயன்படுத்தும் வெப்மாஸ்டர்கள் தினசரி வேலைகளில் அதிகம் தேவைப்படும் அடிப்படை கட்டளைகளை நடைமுறை உதாரணங்களுடன் இந்த வழிகாட்டி விளக்குகிறது.

ஒரு வலைத்தளத்தை control panel மூலமாக மட்டும் நிர்வகிப்பது பல நேரங்களில் போதுமானதாக இருந்தாலும், traffic அதிகரிக்கும் போது, custom software தேவைப்படும் போது, error log-களை பார்க்க வேண்டிய நேரத்தில் அல்லது அவசர திருத்தம் செய்ய வேண்டிய சூழலில் SSH தெரிந்திருப்பது மிகப் பெரிய பலமாகும். உதாரணமாக, உங்கள் WordPress தளத்தில் 500 error வந்தால் panel திறக்க காத்திருக்காமல் சில கட்டளைகளால் disk space, PHP-FPM நிலை, Nginx அல்லது Apache log-கள், சமீபத்தில் மாற்றப்பட்ட கோப்புகள் ஆகியவற்றை நிமிடங்களில் சரிபார்க்கலாம். இதனால் downtime குறையும்; அதே நேரத்தில் SEO செயல்திறனையும் காப்பாற்ற உதவும். நீங்கள் சர்வர் அடித்தளத்தைத் தேர்வு செய்யும் கட்டத்தில் இருந்தால் VPS சேவையகம் மற்றும் வலை ஹோஸ்டிங் விருப்பங்களை உங்கள் தேவைகளுடன் ஒப்பிட்டு பார்க்குவது பயனுள்ளதாக இருக்கும்.

SSH என்றால் என்ன? வெப்மாஸ்டர்களுக்கு ஏன் முக்கியம்?

SSH என்பது Secure Shell என்பதன் சுருக்கம். இது தொலைவில் உள்ள சர்வருடன் encrypted, பாதுகாப்பான இணைப்பை உருவாக்கப் பயன்படும் protocol ஆகும். FTP பெரும்பாலும் கோப்புப் பரிமாற்றத்திற்காக மட்டுமே பயன்படுத்தப்படும்; ஆனால் SSH உங்களுக்கு சர்வரின் command line-ஐ தருகிறது. அதன் மூலம் web root directory-க்கு செல்லலாம், file permission-களை சரிசெய்யலாம், services-ஐ restart செய்யலாம், firewall-ஐ பார்க்கலாம், database backup எடுக்கலாம், log கோப்புகளை real-time-ஆக கண்காணிக்கலாம்.

ஒரு வெப்மாஸ்டரின் பார்வையில் SSH அறிவு மூன்று முக்கிய நன்மைகளை தருகிறது. முதலில் வேகம்; பெரிய கோப்புகளை panel வழியாக download செய்வதற்குப் பதிலாக சர்வருக்குள் compress செய்வது சில விநாடிகள் அல்லது நிமிடங்கள் மட்டுமே ஆகலாம். இரண்டாவது தெளிவான கண்காணிப்பு; log-கள், CPU usage, RAM usage, disk நிலை போன்றவை நேரடியாக தெரியும். மூன்றாவது கட்டுப்பாடு; permission பிரச்சினை, service crash, தவறான configuration போன்றவை காத்திருக்காமல் உடனடியாக சரி செய்ய முடியும். குறிப்பாக VPS, cloud server மற்றும் dedicated server சூழலில் SSH என்பது விருப்பத் திறன் அல்ல; அடிப்படை நிர்வாகத் திறன்.

SSH இணைப்பைத் தொடங்குவதற்கு முன் அறிந்திருக்க வேண்டியவை

SSH இணைப்பிற்கு பொதுவாக மூன்று தகவல்கள் தேவை: சர்வர் IP முகவரி அல்லது domain name, user name, authentication முறை. பெரும்பாலான Linux அமைப்புகளில் default port 22 ஆக இருக்கும்; பாதுகாப்பிற்காக வேறு port பயன்படுத்தப்படலாம். இணைப்பதற்கான மிக எளிய கட்டளை: ssh kullanıcı@sunucu-ip. Port வேறாக இருந்தால் ssh -p 2222 kullanıcı@sunucu-ip போல இணைக்கலாம்.

முதல் முறையாக இணையும் போது, terminal சர்வரின் fingerprint-ஐ உறுதிப்படுத்தச் சொல்லும். இது நீங்கள் சரியான சர்வருடன்தான் இணைகிறீர்கள் என்பதை உறுதி செய்யும் பாதுகாப்பு படி. Yes என்று எழுதிப் தொடர்ந்தால், அந்த சர்வர் விவரம் உங்கள் கணினியில் உள்ள known_hosts கோப்பில் சேர்க்கப்படும். பின்னர் சர்வர் மாறியிருந்தால் அல்லது IP மீண்டும் assign செய்யப்பட்டிருந்தால் security warning வரலாம்; அப்போது முதலில் நீங்கள் உண்மையில் சரியான சர்வருக்கே இணைகிறீர்களா என்பதை உறுதி செய்ய வேண்டும்.

கடவுச்சொல் மூலம் இணைப்பு மற்றும் SSH key இடையிலான வேறுபாடு

Password மூலம் login செய்வது எளிது; ஆனால் brute force attack-களுக்கு இது அதிகம் வெளிப்படையாக இருக்கும். SSH key முறை உங்கள் கணினியில் private key, சர்வரில் public key என்ற அமைப்பில் இயங்கும்; இது மிகவும் பாதுகாப்பானது. Key உருவாக்க ssh-keygen -t ed25519 கட்டளையைப் பயன்படுத்தலாம். Public key-ஐ சர்வருக்கு சேர்க்க ssh-copy-id kullanıcı@sunucu-ip கட்டளை பயனுள்ளதாக இருக்கும். Key அமைத்து முடித்த பிறகு password login-ஐ முடக்குவது பாதுகாப்புத் தரத்தை குறிப்பிடத்தக்க அளவு உயர்த்தும்.

கடவுச்சொல் மூலம் இணைப்பு மற்றும் SSH key இடையிலான வேறுபாடு
முறைநன்மைஆபத்துபரிந்துரைக்கப்படும் பயன்பாடு
Password மூலம் SSHஅமைப்பது வேகமானதுபலவீனமான password இருந்தால் தாக்குதல் ஆபத்து அதிகம்தற்காலிக அணுகல் மற்றும் முதல் அமைப்பு
SSH keyமிகவும் பாதுகாப்பானது; automation-க்கும் ஏற்றதுPrivate key பாதுகாக்கப்படாவிட்டால் ஆபத்து உருவாகும்நிரந்தர சர்வர் மேலாண்மை
வேறு portBot scan-களை குறைக்கும்இதுவே தனியாக போதுமான பாதுகாப்பு அல்லKey மற்றும் firewall உடன் சேர்த்து
Root login முடக்கம்அதிகாரத் தவறான பயன்பாட்டை குறைக்கும்தவறான sudo அமைப்பு அணுகலை சிரமப்படுத்தலாம்Production server-கள்

அடிப்படை வழிசெலுத்தல் மற்றும் கோப்புப் பட்டியல் கட்டளைகள்

Linux terminal-ல் முதலில் கற்றுக்கொள்ள வேண்டிய கட்டளைகள், நீங்கள் எந்த directory-ல் இருக்கிறீர்கள் என்பதை பார்க்குதல், directory மாற்றுதல், கோப்புகளை பட்டியலிடுதல் ஆகியவை. pwd கட்டளை தற்போதைய இடத்தை காட்டும். cd /var/www/html கட்டளை web root directory-க்கு அழைத்துச் செல்லும். cd .. ஒரு level மேலே செல்லும்; cd மட்டும் தட்டினால் user-ன் home directory-க்கு திரும்பும். ls கட்டளை கோப்புகளை பட்டியலிடும்; ls -la மறை கோப்புகளுடன் permission, ownership, size, date போன்ற விவரங்களையும் காட்டும்.

வெப்மாஸ்டர்களுக்கு குறிப்பாக .htaccess, wp-config.php, robots.txt, sitemap.xml மற்றும் index.php போன்ற கோப்புகளை விரைவாக கண்டுபிடிப்பது முக்கியம். ls -lah கட்டளை file size-ஐ மனிதர் எளிதில் படிக்கும் வடிவில் காட்டும். உதாரணமாக 1048576 என்பதற்குப் பதிலாக 1.0M என்று தெரியும். ஒரு directory-யில் கோப்புகள் அதிகமாக இருந்தால் ls -lt கட்டளை சமீபத்தில் மாற்றப்பட்ட கோப்புகளை மேலே காட்டும். இது hack நடந்த பிறகு மாற்றப்பட்ட கோப்புகளை அல்லது புதிதாக upload செய்யப்பட்ட plugin கோப்புகளைப் பார்க்க உதவும்.

நடைமுறை சூழல்: Web root directory-யை சரிபார்ப்பது

ஒரு தளத்தின் கோப்புகள் பொதுவாக /var/www, /home/kullanici/public_html அல்லது /usr/share/nginx/html கீழ் இருக்கும். ஒரு உதாரண ஓட்டம் இப்படியாக இருக்கலாம்: pwd மூலம் நீங்கள் எங்கு இருக்கிறீர்கள் என்பதைப் பாருங்கள், cd /var/www/siteadi மூலம் site directory-க்கு செல்லுங்கள், ls -lah மூலம் கோப்புகளை பட்டியலிடுங்கள், du -sh . மூலம் அந்த directory-யின் மொத்த அளவை சரிபாருங்கள். ஒரே சர்வரில் பல தளங்களை host செய்தால் ஒவ்வொரு தளத்தையும் தனி user மற்றும் தனி directory கீழ் வைத்திருப்பது பாதுகாப்பிற்கும் பராமரிப்பிற்கும் நல்லது. Domain நிர்வாகத்துக்கு டொமைன் வினவல் மற்றும் site live செய்யும் செயல்முறைகளுக்கு விற்பனை அமைவு வழிகாட்டிகளுடன் சேர்த்து முன்னேறலாம்.

கோப்பு மற்றும் folder பணிகள்: உருவாக்குதல், copy, move, delete

கோப்பு உருவாக்க touch dosya.txt, folder உருவாக்க mkdir klasor-adi கட்டளை பயன்படுத்தப்படும். Nested folders-ஐ ஒரே கட்டளையில் உருவாக்க mkdir -p yedekler/2026/ocak என்று எழுதலாம். கோப்பு copy செய்ய cp kaynak hedef, folder copy செய்ய cp -r kaynak-klasor hedef-klasor என்று பயன்படுத்தலாம். Move செய்ய அல்லது பெயர் மாற்ற mv eski-ad yeni-ad கட்டளை உதவும்.

Delete கட்டளைகள் மிகவும் கவனமாக பயன்படுத்தப்பட வேண்டும். rm dosya.txt ஒரு கோப்பை நீக்கும்; rm -r klasor-adi folder-ஐ அதன் உள்ளடக்கத்துடன் நீக்கும். rm -rf கட்டளை உறுதிப்படுத்தல் கேட்காமல் force delete செய்யும்; தவறான directory-யில் இதைப் பயன்படுத்தினால் பெரிய இழப்பு ஏற்படும். Production server-ல் rm -rf பயன்படுத்துவதற்கு முன் pwd மூலம் உங்கள் இடத்தை உறுதி செய்யவும்; ls மூலம் இலக்கை சரிபார்க்கவும். முக்கியமான பணிகளுக்கு முன் tar அல்லது rsync மூலம் சிறிய backup எடுப்பது சில நிமிட வேலைதான்; ஆனால் தவறு நடந்தால் மணிநேரங்களாக நீளும் recovery-யை தவிர்க்க உதவும்.

பாதுகாப்பான delete பழக்கம்

புதியவர்களுக்கு பாதுகாப்பான நடைமுறை, உடனே delete செய்வதற்குப் பதிலாக கோப்பை முதலில் quarantine folder-க்கு move செய்வது. உதாரணமாக mkdir /root/karantina மற்றும் mv supheli-dosya.php /root/karantina/ கட்டளைகளால் கோப்பை அழிக்காமல் தனிமைப்படுத்தலாம். தளம் பிரச்சினையில்லாமல் இயங்கினால் பின்னர் நிரந்தரமாக delete செய்யலாம். Malware cleanup, plugin remove, theme change போன்ற நேரங்களில் இந்த அணுகுமுறை மிகவும் பயனுள்ளது.

கோப்பு உள்ளடக்கத்தைப் பார்க்கும் மற்றும் திருத்தும் கட்டளைகள்

ஒரு கோப்பின் முழு உள்ளடக்கத்தைக் காண cat dosya.txt, பக்கம்தோறும் பார்க்க less dosya.txt பயன்படுத்தப்படும். பெரிய log கோப்புகளில் cat பயன்படுத்தினால் terminal தேவையில்லாமல் நிரம்பிவிடும்; எனவே less சிறந்தது. கோப்பின் முதல் வரிகளை பார்க்க head dosya.txt, கடைசி வரிகளை பார்க்க tail dosya.txt பயன்படுத்தலாம். Live log monitoring-க்கு tail -f /var/log/nginx/error.log மிக முக்கியமான கட்டளை.

கோப்புகளை edit செய்ய nano, vim அல்லது micro போன்ற editor-களைப் பயன்படுத்தலாம். தொடக்கநிலையினருக்கு nano மிகவும் எளிது. nano .htaccess கட்டளையால் கோப்பை திறந்து, மாற்றம் செய்த பிறகு Ctrl+O மூலம் save செய்து Ctrl+X மூலம் வெளியேறலாம். PHP configuration, Nginx server block, Apache virtual host அல்லது robots.txt போன்றவற்றை திருத்தும் போது ஒரு சிறிய syntax பிழை கூட தளத்தை பாதிக்கலாம் என்பதை மறக்காதீர்கள். மாற்றத்திற்கு முன் cp dosya dosya.bak கட்டளையால் backup copy எடுப்பது நல்ல நிர்வாக பழக்கம்.

Permission மற்றும் ownership நிர்வாகம்: chmod மற்றும் chown

Linux server-களில் file permission-கள் ஒரு தளத்தின் செயல்பாடு மற்றும் பாதுகாப்பிற்கு மிக முக்கியம். chmod கட்டளை permission-களை மாற்றும்; chown கட்டளை ownership-ஐ மாற்றும். சாதாரண web site-ல் folders-க்கு 755, files-க்கு 644 அதிகம் பயன்படுத்தப்படும் மதிப்புகள். உதாரணமாக chmod 644 wp-config.php கோப்பு permission-ஐ சரி செய்யும். Folders-க்கு bulk permission அமைக்க find . -type d -exec chmod 755 {} ; என்ற logic பயன்படுத்தலாம்; files-க்கு find . -type f -exec chmod 644 {} ; அணுகுமுறை பயன்படுத்தப்படும்.

Ownership பகுதியில் chown -R www-data:www-data /var/www/siteadi போன்ற கட்டளைகள் பயன்படுத்தப்படலாம்; ஆனால் இந்த மதிப்பு Linux distribution மற்றும் web server அமைப்பைப் பொறுத்து மாறும். Ubuntu-வில் Apache அல்லது Nginx பெரும்பாலும் www-data பயன்படுத்தும்; cPanel போன்ற அமைப்புகளில் ஒவ்வொரு தளத்திற்கும் தனி user இருக்கலாம். தவறான ownership upload problem அல்லது 403 error ஏற்படுத்தலாம். 777 போன்ற மிக அதிகமான permission-கள் குறுகிய காலத்தில் பிரச்சினை சரியானது போல தோன்றினாலும் பாதுகாப்பு துளையை உருவாக்கும். குறிப்பாக upload directory-களில் executable file-களைத் தடுக்கவும், write permission-களை வரம்புபடுத்தவும் வேண்டும்.

Disk, RAM மற்றும் CPU கண்காணிக்க அடிப்படை கட்டளைகள்

Performance பிரச்சினை வந்தால் முதலில் பார்க்க வேண்டியது resource usage. df -h கட்டளை disk partition-களின் நிறைவு அளவை காட்டும். Root partition 100 சதவீதம் நிரம்பிவிட்டால் services log எழுத முடியாது, database lock ஆகலாம், தளம் 500 error காட்டலாம். du -sh * கட்டளை தற்போதைய directory-யில் உள்ள folder அளவுகளை சுருக்கமாக காட்டும். பெரிய log, cache அல்லது backup file-களை கண்டுபிடிக்க du -ah /var/www | sort -h | tail பயன்படுத்தலாம்.

RAM மற்றும் processor பயன்பாட்டிற்கு top அல்லது htop கட்டளைகள் பயன்படுத்தப்படும். htop install செய்யப்படவில்லை என்றால் apt install htop அல்லது dnf install htop மூலம் நிறுவலாம். free -m கட்டளை RAM மற்றும் swap நிலையை காட்டும். uptime கட்டளை system எவ்வளவு நேரமாக இயங்குகிறது, load average என்ன என்பதைக் காட்டும். Single-core server-ல் load value நீண்ட நேரம் 1-க்கு மேல் இருந்தால், multi-core server-ல் core எண்ணிக்கையை தொடர்ந்து மீறினால், அது performance பிரச்சினைக்கு அறிகுறி. Traffic அதிகரிப்பு வழக்கமானதாகி விட்டால், அதிக திறன் கொண்ட plan அல்லது optimization தேவைப்படலாம்; அப்போது லினக்ஸ் VPS மற்றும் கொரும்சல் ஹோஸ்டிங் விருப்பங்களை மதிப்பீடு செய்யலாம்.

Service மேலாண்மை: systemctl மூலம் Apache, Nginx, PHP மற்றும் MySQL கட்டுப்பாடு

நவீன Linux distribution-களில் service management பெரும்பாலும் systemctl மூலம் செய்யப்படுகிறது. ஒரு service-ன் நிலையைப் பார்க்க systemctl status nginx, restart செய்ய systemctl restart nginx, configuration-ஐ reload செய்ய systemctl reload nginx கட்டளைகள் பயன்படுத்தப்படும். Apache-க்கு apache2 அல்லது httpd, PHP-FPM-க்கு php8.2-fpm அல்லது அதே போன்ற version name, MySQL-க்கு mysql அல்லது mariadb service name ஆக இருக்கலாம்.

ஒவ்வொரு restart-க்கும் முன் configuration test செய்வது நல்ல பழக்கம். Nginx-க்கு nginx -t, Apache-க்கு apachectl configtest கட்டளை பயன்படுத்தலாம். Test தோல்வியடைந்தால் restart செய்வது தளம் down ஆகக் காரணமாகலாம். உதாரணமாக Nginx configuration-ல் semicolon குறைந்திருந்தால் nginx -t அந்தப் பிழையை line number உடன் காட்டும். முதலில் பிழையை சரி செய்து பின்னர் systemctl reload nginx இயக்குவது பாதுகாப்பான நடைமுறை.

வெப்மாஸ்டருக்கான விரைவான service check list

  • தளம் திறக்கவில்லை என்றால் முதலில் browser அல்லது ping மட்டும் பார்க்காமல், சர்வரில் systemctl status web-servisi மூலம் service நிலையை பார்க்கவும்.
  • 502 error வந்தால் PHP-FPM நிலை மற்றும் Nginx error log-ஐ பரிசோதிக்கவும்.
  • Database connection error இருந்தால் systemctl status mysql மற்றும் disk space-ஐ சரிபார்க்கவும்.
  • Configuration மாற்றியிருந்தால் restart-க்கு பதிலாக சாத்தியமான இடங்களில் reload பயன்படுத்தவும்.
  • ஒவ்வொரு மாற்றத்துக்கும் முன் தொடர்புடைய கோப்பின் .bak copy எடுக்கவும்.

Log ஆய்வு: பிழையின் மூலத்தை நிமிடங்களில் கண்டுபிடித்தல்

Log கோப்புகள் சர்வரின் கருப்பு பெட்டி போன்றவை. Nginx-க்கு /var/log/nginx/access.log மற்றும் /var/log/nginx/error.log, Apache-க்கு /var/log/apache2/access.log மற்றும் /var/log/apache2/error.log அடிக்கடி பயன்படுத்தப்படும். PHP-FPM log-கள் distribution-ஐ பொறுத்து /var/log/php8.2-fpm.log அல்லது journalctl-ல் இருக்கலாம். MySQL log-கள் /var/log/mysql/error.log கீழ் காணப்படலாம்.

journalctl -xe கட்டளை system service-களுடன் தொடர்புடைய சமீபத்திய பிழைகளை காட்டும். குறிப்பிட்ட service-க்கு journalctl -u nginx -n 100 என்று எழுதினால் Nginx service-ன் கடைசி 100 பதிவுகள் பட்டியலிடப்படும். Live monitoring-க்கு journalctl -u php8.2-fpm -f பயன்படுத்தலாம். Log-ல் குறிப்பிட்ட சொல் தேட grep கட்டளை பயன்படும். உதாரணமாக grep 500 access.log, 500 status code-களை கண்டுபிடிக்க உதவும். grep -i error dosya.log என்றால் uppercase/lowercase வேறுபாடின்றி தேடும்.

SEO நோக்கில் log analysis என்பது error தீர்வுக்காக மட்டும் அல்ல; crawl budget மற்றும் bot behavior புரிந்துகொள்ளவும் முக்கியம். Googlebot எந்த பக்கங்களைப் பார்வையிடுகிறது, எந்த URL-களில் 404 errors அதிகம், எந்த resources மெதுவாக பதிலளிக்கின்றன என்பதைக் access log மூலம் அறியலாம். Technical SEO audit-களுக்கு SEO உடன்படிக்கையின் ஹோஸ்டிங் மற்றும் வலைத்தள வேக மேம்படுத்தல் உள்ளடக்கங்களுடன் log analysis-ஐ ஒரு வழக்கமான பணியாக மாற்றுவது நல்லது.

தேடல், filter மற்றும் text processing கட்டளைகள்

தேடல், filter மற்றும் text processing கட்டளைகள்

சர்வரில் file அல்லது text தேட find, grep, awk மற்றும் sed கட்டளைகள் வலுவான கருவிகள். find /var/www -name wp-config.php குறிப்பிட்ட கோப்பைத் தேடும். find . -type f -mtime -1 கடந்த 24 மணி நேரத்தில் மாற்றப்பட்ட கோப்புகளை காட்டும். Unauthorized file change சந்தேகம் இருந்தால் இந்த கட்டளை மிகவும் உதவும். grep -R base64_decode . கட்டளை நீங்கள் இருக்கும் directory-யில் base64_decode உள்ள கோப்புகளைத் தேடும்; இந்த expression இருப்பது எப்போதும் malware என்று அர்த்தமல்ல, ஆனால் malicious PHP code-களில் இது அடிக்கடி காணப்படும்.

Log analysis-ல் awk மூலம் குறிப்பிட்ட column-களைப் பிரிக்கலாம். உதாரணமாக access log-ல் அதிக request அனுப்பிய IP address-களை பார்க்க awk மூலம் IP column எடுத்து, sort மற்றும் uniq -c மூலம் எண்ணலாம். இத்தகைய analysis அதிகப்படியான bot traffic, brute force முயற்சி, DDoS போன்ற நடத்தை ஆகியவற்றை ஆரம்பத்திலேயே கண்டறிய உதவும். Advanced நிலைமையில் fail2ban, rate limiting மற்றும் WAF தீர்வுகளுடன் சேர்த்து பயன்படுத்தலாம்.

கோப்புப் பரிமாற்றம்: scp, sftp மற்றும் rsync

SSH கட்டளைகளை இயக்குவதற்காக மட்டும் அல்ல; file transfer-க்கும் பயன்படுகிறது. scp yerel-dosya kullanıcı@sunucu-ip:/hedef/dizin கட்டளை உங்கள் கணினியில் உள்ள கோப்பை சர்வருக்கு அனுப்பும். சர்வரிலிருந்து கணினிக்கு எடுக்க scp kullanıcı@sunucu-ip:/dosya/yolu ./ என்று எழுதலாம். பெரிய folder-களுக்கு scp-க்கு பதிலாக rsync அதிக திறன் வாய்ந்தது; ஏனெனில் மாற்றப்படாத கோப்புகளை மீண்டும் அனுப்பாது.

rsync -avz kaynak/ kullanıcı@sunucu-ip:/hedef/ கட்டளை archive mode-ல், compression உடன், detailed transfer செய்கிறது. --delete parameter, destination-ல் இருந்து source-ல் இல்லாத கோப்புகளை நீக்கும்; அதனால் மிகவும் கவனமாக பயன்படுத்த வேண்டும். WordPress migration, staging environment-இலிருந்து live environment-க்கு file transfer, அல்லது backup server-க்கு synchronization ஆகியவற்றிற்கு rsync ஒரு வலுவான தீர்வு. SSL installation அல்லது HTTPS migration செய்யும் போது file transfer-க்கு முன் certificate மற்றும் redirect திட்டத்தை தெளிவாக அமைத்துக் கொள்ளுங்கள்; SSL சான்றிதழ் உள்ளடக்கம் இந்த செயல்முறையில் உதவும்.

Backup மற்றும் restore செய்ய SSH கட்டளைகள்

Backup என்பது சர்வர் மேலாண்மையின் காப்பீடு. File backup-க்கு tar -czf site-yedek.tar.gz /var/www/siteadi கட்டளை பயன்படுத்தலாம். இந்த கட்டளை directory-யை gzip compressed archive-ஆக மாற்றும். Archive-ஐ extract செய்ய tar -xzf site-yedek.tar.gz பயன்படுத்தலாம். பெரிய தளங்களில் backup-ஐ web directory-க்கு வெளியே வைத்திருப்பதும், முடிந்தால் remote storage-க்கு மாற்றுவதும் பாதுகாப்பானது.

Database backup-க்கு mysqldump -u kullanici -p veritabani_adi > yedek.sql கட்டளை பொதுவானது. Restore செய்ய mysql -u kullanici -p veritabani_adi < yedek.sql பயன்படுத்தப்படும். பெரிய database-களில் செயல்முறை நேரம் நீளலாம்; screen அல்லது tmux பயன்படுத்தினால் SSH connection துண்டிக்கப்பட்டாலும் வேலை தொடரும். உதாரணமாக screen -S yedek கட்டளையால் session திறந்து backup செயல்முறையை தொடங்கலாம்; Ctrl+A அதன் பின் D மூலம் session-இலிருந்து detach ஆகலாம். பின்னர் screen -r yedek மூலம் திரும்பலாம்.

பாதுகாப்பிற்கான முக்கியமான SSH அமைப்புகள்

SSH பாதுகாப்பு என்பது server security-யின் வாசல் கதவு. முதல் பரிந்துரை root user மூலம் நேரடி login-ஐ முடக்குவது. அதற்குப் பதிலாக sudo உரிமையுள்ள சாதாரண user உருவாக்க வேண்டும். adduser webmaster கட்டளை user சேர்க்கும்; usermod -aG sudo webmaster கட்டளை sudo permission தரும். அதன் பிறகு SSH configuration /etc/ssh/sshd_config கோப்பில் மாற்றப்படும். PermitRootLogin no மற்றும் PasswordAuthentication no போன்ற அமைப்புகள் key-based login உடன் சேர்த்து பயன்படுத்தப்படலாம்.

மாற்றத்திற்குப் பிறகு sshd configuration-ஐ test செய்வதும், இருக்கும் session-ஐ மூடாமல் புதிய terminal மூலம் connection முயற்சிப்பதும் மிகவும் முக்கியம். தவறான அமைப்பு செய்தால் உங்கள் சொந்த சர்வரிலிருந்து நீங்கள் lock out ஆகலாம். Firewall பகுதியில் ufw allow 2222/tcp மற்றும் ufw enable போன்ற கட்டளைகளால் தேவையான port-களையே திறக்க வேண்டும். ஆனால் SSH port மாற்றியிருந்தால் பழைய session-ஐ மூடுவதற்கு முன் புதிய port மூலம் இணைக்க முடிகிறதா என்பதை உறுதி செய்யுங்கள்.

குறைந்தபட்ச பாதுகாப்பு check list

  • வலுவான password அல்லது சிறந்த முறையாக SSH key பயன்படுத்தவும்.
  • Root login-ஐ முடக்கி, sudo உரிமையுள்ள user உருவாக்கவும்.
  • தேவையற்ற services-ஐ முடக்கி, அவசியமான port-களை மட்டும் திறக்கவும்.
  • System packages-ஐ தொடர்ந்து update செய்யவும்: apt update மற்றும் apt upgrade.
  • Log-களை வழக்கமாக பாருங்கள்; சந்தேகமான IP-களுக்கு fail2ban பயன்படுத்தவும்.
  • Backup-களை அதே சர்வரில் ஒரே copy-ஆக மட்டும் வைக்காதீர்கள்.

Package management மற்றும் update கட்டளைகள்

Ubuntu மற்றும் Debian அடிப்படையிலான system-களில் apt, AlmaLinux மற்றும் Rocky Linux போன்ற RHEL அடிப்படையிலான system-களில் dnf அல்லது yum பயன்படுத்தப்படும். Ubuntu-வில் apt update package list-ஐ புதுப்பிக்கும்; apt upgrade install செய்யப்பட்ட packages-ஐ மேம்படுத்தும். குறிப்பிட்ட package நிறுவ apt install nginx, நீக்க apt remove paket-adi கட்டளை பயன்படுத்தப்படும். RHEL அடிப்படையிலான system-களில் dnf update மற்றும் dnf install paket-adi இதே போன்ற பணியைச் செய்யும்.

Live server-ல் update-களை சீரற்ற நேரத்தில் இயக்குவதற்குப் பதிலாக maintenance window-வில் செய்வது சரியான அணுகுமுறை. குறிப்பாக PHP, MySQL, OpenSSL மற்றும் web server updates தளத்தின் நடத்தையை பாதிக்கலாம். Critical security updates-ஐ தாமதப்படுத்தக்கூடாது; ஆனால் முதலில் backup எடுப்பது, configuration-களை சரிபார்ப்பது, முடிந்தால் staging environment-ல் test செய்வது professional நடைமுறை.

வெப்மாஸ்டர்களுக்கான உதாரண அவசர நடவடிக்கை ஓட்டம்

ஒரு காலை உங்கள் தளம் திறக்கவில்லை என்று நினைத்துக் கொள்ளுங்கள். பதற்றப்படுவதற்குப் பதிலாக ஒரு standard flow பின்பற்றுவது வேகமான தீர்வைக் கொடுக்கும். முதலில் SSH மூலம் இணைக. uptime மூலம் server பதிலளிக்கிறதா, load value எப்படி உள்ளது என்பதைப் பாருங்கள். df -h மூலம் disk usage-ஐ சரிபாருங்கள். free -m மற்றும் top மூலம் RAM, CPU பயன்பாட்டைப் பாருங்கள். பின்னர் systemctl status nginx அல்லது apache2 மூலம் web service நிலையை பார்க்கவும். 502 error இருந்தால் PHP-FPM service நிலையைப் பாருங்கள். Database error இருந்தால் systemctl status mysql மற்றும் தொடர்புடைய log கோப்பைப் பார்க்கவும்.

அடுத்ததாக tail -n 100 hata logu மூலம் சமீபத்திய பிழைகளை வாசியுங்கள். பிரச்சினை புதிய plugin அல்லது theme update-க்குப் பிறகு தொடங்கியிருந்தால் ls -lt மூலம் சமீபத்தில் மாற்றப்பட்ட கோப்புகளை கண்டுபிடிக்கவும். தேவைப்பட்டால் அந்த folder-ஐ தற்காலிகமாக rename செய்யவும். Disk full என்றால் பழைய log-கள் அல்லது தேவையற்ற backup-களை கண்டறியவும்; நேரடியாக delete செய்வதற்கு முன் அவை என்ன என்பதை உறுதிப்படுத்தவும். இந்த படிகள் பெரும்பாலான அடிப்படை downtime சூழல்களில் 5 முதல் 15 நிமிடங்களில் காரணத்தை குறுகிய வட்டத்துக்குள் கொண்டுவர உதவும்.

SSH கட்டளைகளைப் பயன்படுத்தும் போது நடைபெறும் பொதுவான தவறுகள்

மிகவும் பொதுவான தவறு, command-ஐப் புரிந்துகொள்ளாமல் copy-paste செய்து இயக்குவது. இணையத்தில் காணப்படும் ஒவ்வொரு command-மும் உங்கள் சர்வருக்கு பொருந்தும் என்று அர்த்தமில்லை. குறிப்பாக rm -rf, chmod -R 777, chown -R மற்றும் database delete கட்டளைகள் பெரிய ஆபத்தைக் கொண்டவை. இரண்டாவது தவறு, எப்போதும் root user மூலம் வேலை செய்வது. Root permission தேவைப்படும் போது sudo பயன்படுத்துவது தவறுதலாக system file-களை மாற்றும் ஆபத்தை குறைக்கும்.

மூன்றாவது தவறு, backup இல்லாமல் மாற்றம் செய்வது. எளிய configuration file கூட தளத்தை offline ஆக்கிவிடலாம். நான்காவது தவறு, log-களை படிக்காமல் services-ஐ மீண்டும் மீண்டும் restart செய்வது. Restart சில நேரங்களில் தற்காலிக தீர்வு தரலாம்; ஆனால் உண்மையான காரணத்தை மறைக்கலாம். ஐந்தாவது தவறு, security updates-ஐ முற்றிலும் புறக்கணிப்பது. Update செய்யப்படாத PHP, CMS அல்லது server packages attack surface-ஐ பெரிதாக்கும்.

அடிப்படை SSH கட்டளைகள் சுருக்க அட்டவணை

அடிப்படை SSH கட்டளைகள் சுருக்க அட்டவணை
செயல்கட்டளைஎப்போது பயன்படுத்துவது?
இணைப்புssh kullanıcı@sunucu-ipசர்வருடன் terminal மூலம் இணைக்க
Directory பார்க்கpwdநீங்கள் எந்த folder-ல் இருக்கிறீர்கள் என்பதை அறிய
பட்டியலிடல்ls -lahகோப்பு, permission, owner மற்றும் size பார்க்க
Disk checkdf -hDisk usage சதவீதத்தை சரிபார்க்க
Folder sizedu -sh *எந்த folder அதிக இடம் பிடிக்கிறது என்பதை கண்டுபிடிக்க
Service நிலைsystemctl status nginxWeb service இயங்குகிறதா என்பதைப் பார்க்க
Log monitoringtail -f hata.logLive error-ஐ கண்காணிக்க
File backuptar -czf yedek.tar.gz klasorSite files-ஐ compress செய்ய
Transferrsync -avz kaynak hedefபெரிய files அல்லது folders-ஐ synchronize செய்ய
Permission மாற்றம்chmod 644 dosyaFile access permission-களை அமைக்க

முடிவு: SSH அறிவு வெப்மாஸ்டரின் வேலை வேகத்தை உயர்த்துகிறது

SSH கட்டளைகள் மூலம் Linux server management என்பது system administrator-கள் மட்டும் அறிந்திருக்க வேண்டிய திறன் அல்ல; முக்கியமான web projects-ஐ நிர்வகிக்கும் வெப்மாஸ்டர்களும் அறிந்திருக்க வேண்டிய அடிப்படை திறன். சரியான கட்டளைகளால் file management, log analysis, service control, backup மற்றும் security பணிகள் வேகமாகவும் அளவிடக்கூடிய முறையிலும் நடக்கும். தொடக்கத்தில் சில கட்டளைகள் போதுமானவை; காலப்போக்கில் அவற்றை பாதுகாப்பான பழக்கங்களுடன் இணைத்தால் நீங்கள் அதிகம் சுயாதீனமாகவும் தயாராகவும் இருப்பீர்கள்.

Hostragons-ல் hosting, VPS, domain மற்றும் SSL அடித்தளத்தை திட்டமிடும் போது SSH access, backup, security மற்றும் performance தேவைகளை ஒன்றாக மதிப்பீடு செய்வது நீண்ட காலத்தில் ஆரோக்கியமான முடிவுகளைத் தரும். உங்களுக்கு ஏற்ற server வகையைத் தேர்வு செய்ய அல்லது தற்போதைய அமைப்பை வலுப்படுத்த தொடர்புடைய Hostragons வழிகாட்டிகளைப் படித்து, உங்கள் project-க்கு ஏற்ற infrastructure-ஐ அமைதியாகவும் தொழில்நுட்ப தேவைகளின் அடிப்படையிலும் நிர்ணயிக்கலாம்.

அடிக்கடி கேட்கப்படும் கேள்விகள்

SSH கட்டளைகள் மூலம் Linux server management செய்ய root ஆக இருப்பது கட்டாயமா?

இல்லை. உண்மையில் production server-களில் நேரடியாக root பயன்படுத்துவது பரிந்துரைக்கப்படாது. Sudo permission உள்ள சாதாரண user மூலம் இணைந்து, தேவைப்படும் போது sudo கட்டளையால் நிர்வாக பணிகளைச் செய்வது பாதுகாப்பான அணுகுமுறை.

புதிய வெப்மாஸ்டர் முதலில் எந்த SSH கட்டளைகளை கற்றுக்கொள்ள வேண்டும்?

முதன்மையாக ssh, pwd, cd, ls -lah, cp, mv, rm, nano, df -h, du -sh, top, systemctl, tail -f, grep, tar, scp மற்றும் rsync கட்டளைகளில் கவனம் செலுத்த வேண்டும். இந்த கட்டளைகள் தினசரி file, service, log மற்றும் backup பணிகளின் பெரும்பகுதியை கையாள உதவும்.

SSH connection ஏன் மறுக்கப்படுகிறது?

பொதுவான காரணங்கள்: தவறான IP அல்லது port, SSH service இயங்காதது, firewall block, தவறான username, தவறான key file, அல்லது server-ல் PasswordAuthentication அமைப்பு முடக்கப்பட்டிருப்பது. முதலில் port, user மற்றும் service நிலையை சரிபார்க்க வேண்டும்.

chmod 777 பயன்படுத்துவது பாதுகாப்பானதா?

பொதுவாக இல்லை. chmod 777 ஒரு file அல்லது folder-ஐ அனைவரும் read, write, execute செய்யக்கூடியதாக மாற்றும். குறிப்பாக web directory-களில் இது security risk உருவாக்கும். பெரும்பாலான சூழல்களில் folders-க்கு 755, files-க்கு 644 பாதுகாப்பான தொடக்க மதிப்புகள்.

SSH மூலம் backup எடுப்பது நல்லதா, panel மூலம் backup எடுப்பது நல்லதா?

இரண்டையும் பயன்படுத்தலாம். Panel backup-கள் எளிதானவை; SSH backup-கள் அதிக flexibility மற்றும் automation-க்கு ஏற்றவை. பெரிய தளங்களில் tar, mysqldump மற்றும் rsync மூலம் SSH வழியாக backup எடுப்பது அதிக கட்டுப்பாட்டைக் கொடுக்கலாம். சிறந்த அணுகுமுறை என்பது வழக்கமான, test செய்யப்பட்ட, remote copy உடைய backup strategy ஆகும்.

இந்தக் கட்டுரையைப் பகிரவும்:

Hostragons குழு

ஹோஸ்டிங், சர்வர்கள் மற்றும் டொமைன் பெயர்கள் குறித்த எங்கள் நிபுணர் குழுவின் சமீபத்திய வழிகாட்டிகள். உங்கள் திட்டத்திற்கான சரியான தீர்வை நாம் இணைந்து கண்டறிவோம்.

எங்களைத் தொடர்பு கொள்ளுங்கள்