Friday, January 3, 2020

ქსელური უსაფრთხოების ბანალური შეცდომები

პრაქტიკულად დღე არ გავა ისე, რომ რომელიმე მსხვილი ან პოპულარული რესურსის გატეხვის ან მისგან მონაცემების გაჟონვის ამბავი არ გავრცელდეს. რიგ შემთხვევებში ეს არქიტექტორული შეცდომების ბრალია, მაგრამ ხშირად ადამიანური უყურადღებობის ან კიბერუსაფრთხოების ელემენტარული წესების დარღვევის შედეგია.
ამ პოსტში ჩვენ შევეცდებით განვხილოთ მონაცემთა  დამუშავების, შენახვის და გადაცემის სისტემების კონფიგურაციის ყველაზე ხშირი და ამავე დროს ბანალური შეცდომები.

 

მონაცემების ქსელში ღია სახით გადაცემა

ერთ-ერთი ყველაზე ხშირი და ამავე დროს ელემენტარული შეცდომაა. ჯერ კიდევ არსებობს უამრავი პროტოკოლი, რომელიც ღია დაუშიფრავი სახით გადასცემს ქსელში ინფორმაციას (HTTP,  LDAP, Telnet, საფოსტო პროტოკოლები შიფრაციის გარეშე). ღია არხით გადაიცემა მათ შორის მომხმარებელთა იუზერები და პაროლები და სხვა საიდუმლო ინფორმაციაც, რომლიც წაკითხვა ბოროტმოქმედისთვის ძალზედ ადვილია.  ღიად ინფორმაციას შეიძლება გადასცემდეს:
                ვებ-სერვერი - ამ შემთხვევაში საჭიროა HTTP-დან HTTPS-ზე გადასვლა. კომპანიის შიდა რესურსებისთვის დასაშვებია გამოიყენოთ თქვენს მიერვე ხელმოწერილი სერტიფიკატები, რომლებიც შემოწმდებიან სერტიფიკაციის შიდა სისტემის მიერ.  საზოგადოებისთვის ხელმისაწვდომი საიტებისთვის ჯობია გამოიყენოთ სანდო ცენტრების მიერ გამოშვებული სერტიფიკატები.
                LDAP .  LDAP პროტოკოლის გამოყენებისას ჯობია გამოიყენოთ აუთენტიფიკაცია Kerberos-ის მეშვეობით. ასევე ჩართოთ LDAPS და კლიენტები მომართოთ TLS-ის გამოყენებაზე LDAP სერვერისთვის მიმართვის დროს.  მაიკროსოფტმა საკმაოდ დეტალური ინსტრუქცია მოამზადა ამ საკითხზე.
                საფოსტო კლიენტები. კლიენტების (და სერვერების) პარამეტრებში TLS-ის დაყენება. სტანდარტული POP3, IMAP, SMTP პორტების გამოყენების ნაცვლად გამოიყენეთ დაცული პორტები თქვენი პროვაიდერის ინსტრუქციების თანახმად. თუ რაღაც მიზეზების გამო პროვაიდერი არ გაძლევთ ასეთ შესაძლებლობას ჯობია დაფიქრდეთ მის შეცვლაზე.
                Telnet.  აქ ყველაფერი მარტივია. ტელნეტის გამოყენებაზე საერთოდ უნდა თქვათ უარი და გადახვიდეთ SSH-ზე
                FTP. FTP-ს საჭიროების შემთხვევაში უნდა  გადახვიდეთ FTPS - ეს არის FTP  SSL პროტოკოლის გამოყენებით. სიტუაცია სერტიფიკატებთან აქ იგივეა, როგორიც ვებ-სერვერების შემთხვევაში. თუ FTP სერვერზე პარალელურად ssh წვდომაც გაქვთ შეგიძლიათ  გამოიყენოთ SFTP, რომელიც ზუსტად რომ ssh არხს იყენებს. შესაბამისად ნაკლები კონფიგურაცია მოგიწევთ

რემოუთ წვდომის უტილიტების გამოყენება

რემოუთ წვდომის უტილიტების გამოყენება მკაცრი კონტროლის ქვეშ უნდა იყოს აყვანილი. რიგი პროტოკოლი (როგორიცაა მაგალითად RDP) პოტენციური ხვრელია უსაფრთხოებაში. შესაბამისად რემოუთ წვდომის საშუალება უნდა ქონდეთ, მხოლოდ იმ მომხმარებლებს ვისაც ეს ნამდვილად ჭირდება. ამის მიღწევა შეიძლება მაგალითად ორგანიზაციაში სოფტის თეთრი სიის პრინციპის დანერგვით - მომხმარებლებს შეეძლებათ მხოლოდ იმ პროგრამების გამოყენება, რომელიც უშუალოდ მოცემულია სიაში, ყველაფერი დანარჩენი ავტომატურად აკრძალულია. რა თქმა უნდა რემოუთ წვდომის ყველა პროგრამა და პროტოკოლი ბოლო ვერსიამდე უნდა იყოს განახლებული

LLNMR და NetBios

ეს ორი პროტოკოლი საშუალებას აძლევს ბოროტმოქმედს ჩაატაროს MITM (man in the middle) შეტევა. საქმე იმაშია რომ აღნიშნული პროტოკოლები იძლევიან საშუალებას DNS სერვერის გარეშეც კომპიუტერებმა ბროადქასთ რექვესტების მეშვეობით დაარეზოლვონ „მეზობელი“ კომპიუტერები. შიდა ქსელში აღმოჩენილი ბოროტმოქმედი უპასუხებს ბროადქასტ რეკვესტს და გადაამისამართებს შესაბამის მოთხოვნებს თავის კონტროლირებად სერვერზე. ასეთი გზით ბოროტმოქმედს პრაქტიკულად ნებისმიერი ინფორმაციის მიღება შეუძლია.
LLNMR გათიშვა შეიძლება პოლიტიკით Turn Off Multicast Name Resolution, რომელც განლაგებულია Computer Configuration -> Administrative Templates -> Network -> DNS Client. პოლიტიკის ამუშავებისთვის მინი მნიშვნელობა უნდა იყოს:  Enabled
Netbios -ის გასათიშად  გამოიყენეთ dhcpmgmt.msc. Server Options: ჩანართ Advanced -> Microsoft Windows 2000 Options -> Microsoft Disable Netbios Option.  დააყენეთ მნიშვნელობა 0x2.


NetBios -ის გათიშვა შეიძლება ასევე Powershell-ის სკტიპტის მეშვეობით ჯგუფური პოლიტიკების დამხარებით. სკრიპტი ასე გამოიყერება:
$regkey = "HKLM:SYSTEM\CurrentControlSet\services\NetBT\Parameters\Interfaces"
Get-ChildItem $regkey |foreach { Set-ItemProperty -Path "$regkey\$($_.pschildname)" -Name NetbiosOptions -Value 2 -Verbose}

როგორც ხედავთ NetBios გათიშვა შეიძლება უშუალოდ  რეესტრიდანაც:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters\Interfaces -ში NetbiosOptions 2-ზე გადაყვანით.

სანამ ამ ორი პროტოკოლის გლობალურ გათიშვას გადაწყვეტთ დარწმუნდით რომ კორპორატიული სოფტიდან არც ერთი არაა დამოკიდებული ამ პროტოკოლებზე. გარდა ამისა თუ ქსელში ჯერ კიდევ შემორჩენილია Windows XP ან Windows 2000 ჯობია ეს პროტოკოლები არ გათიშოთ. (ჯერ აღნიშნული კომპიუტერების შეცვლა იქნება უპირველესი ამოცანა)

ქსელის კონფიგურაციის შეცდომები

საბნეტებს შორის ზედმეტად მაღალი ნდობის შემთხვევაში ბოროტმოქმედმა საკმარისია ერთ-ერთი მაინც ჩაიგდოს ხელში, რომ მთელი ქსელი და სერვერები კონტროლზე აიყვანოს.  საბნეტებს შორის შესაძლებელია ACL (access control list) პოლიტიკების გაწერა (მართალია ამისთვის ტპ-ლინკის დონის აპარატურა არ გამოგადგებათ).
შიდა რესურსების წვდომა გარე DNS სერვერებთან საჭიროების გარეშე. თუ ქსელში არსებობს შიდა DNS სერვერი  და დომენური სახელების სისტემა მნიშნველოვანია რომ შესაბამისი ინფორმაცია დამუშავდეს მხოლოდ შიგნით და ამ მიზნებისთვის არ იყოს ხელმისაწვდომი public DNS სერვერები.
და რა თქმა უნდა საჭიროების გარეშე გახსნილი ქსელური პორტები და სერვისები. აქაც ჯობია იმოქმედოთ თეთრი სიის პოლიტიკით. გახსნილი პორტები და სერვისები სახელდობრ უნდა იყოს აღწერილი, ყველაფერი დანარჩენი კი დახურული
სასურველია იუზერებს აუკრძალოთ თავისი ქსელური პარამეტრების შეცვლა შემდეგი პოლიტიკით: User Configuration -> Administrative Templates -> Network -> Network Connections.

ტრაფიკის დამალვა

მომხმარებლებს არ უნდა შეეძლოთ თვითნებურად VPN-ის, Tor-ის,  proxy-ს და სხვა მსგავსი ინსტრუმენტების გამოყენება.  ასეთ ინსტრუმენტებთან ბრძოლის საშუალებებია:
                ლოკალური იუზერის უფლებების ადეკვატური შეზღუდვა
                გამოსაყენებელი პროგრამების თეთრი სიის პოლიტიკა
                ფაირვოლის ეფექტური კონფიგურაცია და მონიტორინგი
                ქსელური პორტების დახურვა
აღნიშნული მეთოდები შეიძლება ვებრძოლოთ ასევე ისეთ საფრთხეებს, როგორიცაა მაინერები, ტორენტ კლიენტები, კრიპტატორები და ა.შ.

Monday, December 23, 2019

Excel-ის სარჩევის წიგნი


Excel-ის წიგნში 15-20 მეტ გვერდის (sheet) არსებობისას ტრადიციული გზით გვერდებს შორის ნავიგაცია ძალზედ რთულდება. გამოსავალია ან წიგნის დაყოფა რამდენიმე ფაილად  ან სპეციალური გვერდის შექმნა, სადაც მოთავსდება სარჩევი თავისი ლინკებით.


სარჩევის შექმნისთვის ჯერ გვერდების სიის თავში შევქმნათ ახალი გვერდი და დავარქვათ sarchevi. ახლად შექმნილ ცარიელ გვერდზე, გამოიყენეთ ბრძანება Insert->Link (ctrl+k). გახსნილ დიალოგურ ფანჯარაში აირჩიეთ Place in This  Document და მერე სასურველი გვერდის სათაური. 

რა თქმა უნდა სარჩევის ეფექტური გამოყენებისთვის საჭიროა, რომ ყველა გვერდიდან მარტივად შეიძლებოდეს სარჩევში დაბრუნება. ამისთვის მონიშნეთ ყველა გვერდი  (shift ღილაკზე დაჭერით დააკლიკეთ პირველ გვერდს (თვითონ სარჩევის გვერდის გამოკლებით) და ბოლო გვერდს) და ნებისმიერ სასურველ უჯრაში ჩაწერეთ
=hyperlink(“#sarchevi!A1”;”სარჩევი). აღნიშნული ფორმულა დაამატებს ყველა გვერდზე ჰიპერლინკს სახელით სარჩევი, რომელზე დაკლიკებისას თქვენ გადახვალთ გვერდ sarchevi-ზე


Tuesday, December 10, 2019

ხელმოწერა აუთლუქში


ელექტრონული ფოსტის მეშვეობით საქმიანი მიმოწერის ეტიკეტში მნიშვნელოვან როლს თამაშობს წერილის ბოლოს არსებული signature ანუ ხელმოწერა.
Outlook-ის საფოსტო კლიენტში ასეთი ხელმოწერა შეიძლება რამდენიმეც გქონდეთ და გამოიყენოთ ის სხვადასხვა სიტუაციისთვის.

ბიზნეს მეილის ხელმოწერა როგორ წესი უნდა შეიცავდეს:
  • თქვენ სახელს და გვარს, თქვენ პოზიციას კომპანიაში და საკუთრივ კომპანიის სახელწოდებას
  • საკონტაქტო ინფორმაციას:
    • თქვენი კომპანიის ვებ-საიტის მისამართს
    • მინიმუმ ერთ საკონტაქტო ნომერს
დამატებით ხელმოწერაში შეიძლება განთავსდეს:
  • კომპანიის ლოგო
  • კომპანიის სოციალური ქსელების ლინკები
  • თქვენი ფოტო (საქმიანი სტილის)
  • იურიდიული ხასიათის შენიშნვნები (ასეთის აუცილებლობის შემთხვევაში)

ხელმოწერაში შეიძლება გამოყენებულ იქნეს ფერები. სასურველია არ გამოიყენოთ მყვირალა ფერები. არჩევანი შეარჩიეთ ერთ-ორ მშვიდ ფერზე.

ხელმოწერის გაკეთება ძალიან მარტივია. შექმენით ახალი წერილი და Message  ჩანართში აირჩიეთ  Signature->Signatures…

ახალ გახსნილ ფანჯარაში დააჭირეთ New და შეიყვანეთ ხელმოწერის სახელი. ამ სახელს მნიშვნელობა აქვს მხოლოდ თქვენთვის - რამდენიმე ხელმოწერის შემთხვევაში უფრო გაგიადვილდებათ მათში ორიენტირება. ხელმოწერის შექმნის მერე Edit Signature-ში შეიყვანეთ სასურველი ტექსტი. ხელმოწერაში შეიძლება განსხვავებული ფონტის, ფერის, დახრილობის და განლაგების გამოყენება. ხელმოწერაში შეიძლება  ლინკის ან სურათის ჩასმა (მაგალითად, თქვენი კომპანიის ლოგო და ვებსაიტი)

იმისთვის, რომ ხელმოწერა ავტომატურად ჩაჯდეს ახალი წერილის დაწერისას ის უნდა იყოს მითითებული New Message-ს გასწვრივ.


Replies/forwards გასწვრივ ხელმოწერის მითითება შეიძლება გამოიწვიოს მიმოწერის გადატვირთვა, განსაკუთრებით გრძელვადიანი მიმოწერების დროს.  ასე რომ ეს საკითხი ინდივიდუალურად გადაწყვიტეთ, მითუმეტეს ყოველთვის არსებობს წერილში ხელმოწერის ხელით ჩასმის შესაძლებლობა.


Saturday, November 30, 2019

რა არის DC (Domain Controller)?

  • DC - არის კომპიუტერი (სერვერი), რომელიც მუშაობს Windows Server OS (Operating System) ქვეშ და ამავე დროს მასზე განლაგებულია AD (active directory) მონაცემთა ბაზა
  • DC პასუხისმგებელია დანარჩენი კომპიუტერების აუთენთიკაციის და ავტორიზაციის მოთხოვნაზე
  • DC უზრუნველყოფს მომხმარებელთა წვდომას დომენთან და დომენში არსებულ რესუსრსებთან თავ-თავიანთი იუზერებით და პაროლებით

რა არის RODC (Read-Only Domain Controller)?

  • RODC არის AD-ს read-only (მხოლოდ წაკითხვის რეჟიმი - ცვლილებების შეტანის შეუძლებლობა) ასლი
  • გამოიყენება ისეთ ადგილებში (ძირითადად ფილიალებში) სადაც არაა გარანტირებული სერვერების ფიზიკური უსაფრთხოება (არის საფრთხე, რომ უცხო პირებს შეიძლეა ხელი მიუწვდომოდეთ ფიზიკურ სერვერზე)
  • შემოღებულია Windows Server 2008-დან

რა არის Child DC?

Child DC არის ქვე-DC, რომელიც ეკუთვნის ძირითად (root) DC -ს, და ერთ სახელს (namespace) იყოფენ

რა არის Member Server?

  • Member Server - არის სერვერი, რომელიც მართალია გაწევრიანებულია დომენში, მაგრამ არ აქვს DC როლი
  • Member Server-ზე შესაძლოა დაყენდეს სხვადასხვა როლები და features ები, ასევე სერვისები.

რა არის Stand-Alone computer?

Stand-Alone computer ითვლება კომპიუტერი, რომელიც workgroup-ის წევრია და შესაბამისად არაა გაწევრიანებული დომენში.

What is AD DS (Active Directory Domain Services)?

Active Directory Domain Services (AD DS)  ეს არის Active Directory-ს 5 ფუნქციიდან ერთ-ერთი, რომლის მიზანია უზრუნველყოს მომხმარებელთა წვდომა დომენთან და დომენში არსებულ რესურსებთან თავ-თავიანთი იუზერებით და პაროლებით

რა არის ADAC (Active Directory Administrative Center)?

  • ADAC არის გრაფიკული ინტერფეისის მქონე ინსტრუმენტი, რომელიც უადვილებს სისადმინს აქტივ დირექტორიის ადმინისტრირებას, მათ შორის ერთდროულად რამოდენიმე დომენთან მიმართებაში
  • ADAC შემოღებული იყო Windows Server 2008 R2-ში

სად არის უშუალოდ განლაგებული AD ბაზა?

ბაზა განლაგებულია %systemroot%\NTDS -ფოლდერში

რა არის Netlogon share?

  • აღნიშნული შეარი არის DC-ს სერვერზე %SystemRoot%\sysvol\sysvol\{DOMAIN}\scripts  ფოლდერის შეარი.
  • ეს შეარი შეიცავს ძირითადად logon/logoff/startup/shutdown სკრიპტებს

რა არის sysvol (system volume)?

  • sysvol არის დაშეარებული ფოლდერი, რომელიც შეიცავს დომენის საზოგადო ფაილების ასლს. ეს ფაილები შემდგომ რეპლიცირდება ყველა DC-ზე მოცემულ დომეინში
  • sysvol შეიცავს:
    • group policy objects
    • სკრიპტებს

რისთვისაა ბრძანება adprep?

adprep ბრძანება გამოიყენება დომენის სქემის (schema) მომზადებისას სერვერის აფგრეიდისთვის

რისთვისაა ბრძანება netdom?

  • netdom გამოიყენება AD დომენებისა და trust-ების სამართავად
  • ის გამოიყენება მხოლოდ DC სერვერზე
  • მას შეუძლია:
    • კომპიუტერის გაწევრიანება დომენში
    • trust-ების მართვა დომენებს შორის (ცალ-მხრივი და ორმხრივი) და ა.შ.

რა საჭიროა ბრძანება ntdsutil?

ntdsutil გამოიყენება:
  • AD DS-ის მონაცემთა ბაზის მოვლა-მხარდაჭერისთვის
  • AD ბექაფირების და აღდგენისთვის
  • partition management-სთვის

რაში გამოიყენება ბრძანება ldifde?

ამ ბრძანებას შეუძლია შექმნას, წაშალოს ან შეცვალოს დირექტორიის ობიექტები, ასევე მოახდინოს მონაცემების ექსპორტი სხვა დირექტორიის სერვისებიდან.

Tuesday, November 19, 2019

File Ownership


FILE OWNERSHIP

ლინუქსში ყველა ფაილს (ფოლდერს) აქვს მფლობელი იუზერი (User Owner) და მფლობელი ჯგუფი (Group Owner). ახალი ფაილის შექმნისას მისი შემქნელი იუზერი ხდება User Owner, ხოლო Group Owner ხდება იუზერის მიმდინარე ჯგუფი. თანამდეროვე  სისტემებში, როგორც წესი იუზერი ეკუთვნის თავისივე სახელის მქონე პრივატულ ჯგუფს და ზუსტად ეს ჯგუფი ითვლება იუზერის დეფოლთ ჯგუფად. იმისთვის რომ გაარკვიოთ რა ID აქვს თქვენ იუზერს, ჯგუფს და ა.შ. საკმარისია ბრძანება id



თუ იუზერი გაწევრიანებულია რამდენიმე ჯგუფში, მაშინ მას შეუძლია შეცვალოს მიმდინარე ჯგუფი ბრძანებით sg (switch GID) და შემდგომ შექმნას ფაილი და ფოლდერი. ასეთ შემთხვევაში ახლად შემქნილი ფაილის/ფოლდერის მფლობელი ჯგუფი უკვე სხვა იქნება. იმისთვის რომ დაუბრუნდეთ წინა ჯგუფს საკმარისია აკრიფოთ ბრძანება exit
გაითვალისწინეთ რომ ყოველი sg გამოყენებისას სისტემა ხსნის ახალ-ახალ shell-ს. შესაბამისად მნიშნველოვანია exit-ის გამოყენება და არა ისევ sg-ს. წინააღმდეგ შემთხვევაში ჩვენ შეგვიძლია ძალიან ბევრი shell დავტოვოთ გახსნილი, რაც სერვერის რესურსების ამოწურვაც კი შეიძლება გამოიწვიოს.

File Ownership-ის შეცვლა


ლინუქსში არსებობს 2 ბრძანება ფაილის ან ფოლდერის Ownership-ის შეცვლისთვის. 
Chown
ბრძანება chown შეიქმენა სპეციალურად ფაილის მფლობელი იუზერის შეცვლისთვის, თუმცა ამ ბრძანებას შეუძლია შეცვალოს არამარტო იუზერი, არამედ ჯგუფიც ან ორივე ერთად. თუ ცვლით იუზერსაც და ჯგუფსაც ერთდროულად მაშინ ბრძანებაში ისინი უნდა გაყოთ წერტილით (.) ან ორი წერტილით (:). თუ ცვლით მარტო იუზერს, მაშინ არანაირი გამყოფის გამოყენება არ დაგჭირდებათ. თუ ცვლით მარტო ჯგუფს მაშინ ჯგუფის სახელს მაინც უნდა უსწრებდეს წინ გამყოფი.

Chgrp
ბრძანება chgrp შექმნილია სპეციალურად მფლობელი ჯგუფის შეცვლისთვის. იუზერს შეუძლია შეცვალოს ფაილის მფლობელი ჯგუფი ნებისმიერ ჯგუფზე, რომელშიც თვითონ არის გაწევრიანებული. Root-ს რა თქმა უნდა, შეუძლია ნებისმიერ ჯგუფი მიუთითოს შეცვლის დროს.



Saturday, October 12, 2019

რა? როგორ? როდის? - IT მხარდაჭერის სპეციალისტის მთავარი კითხვები


არ აქვს მნიშნველობა თუ რა პოზიციაზე იმყოფებით აიტი მხარდაჭერის სამყაროში. თქვენ შეიძლება იყოთ მხარდაჭერის პირველ, მეორე ან თუნდაც მესამე ხაზზე, ემსახურებოდეთ რამოდენიმე პატარა ორგანიზაციას, ან იყოთ რომელიმე მსხვილი საფინანსო დაწესებულების აიტი სპეციალისტი. ნებისმიერ ამ პოზიციაზე პროფესიული ამოცანების გადაწყვეტისას თქვენ უნდა უპასუხოთ სამ მთავარ კითხვას: რა? როგორ? როდის?
რა შეიცვალა ან რა მოხდა უშუალოდ პრობლემის წინ? როდის აღმოცენდა პრობლემა? როგორ იქნა გამოწვეული პრობლემა? ეს კითხვები ძალიან მნიშვნელოვანია. აიტი სპეციალისტის ამოცანა არის არა მარტო შექმნილი პრობლემის მოგვარება, არამედ მომავალში მსგავსი პრობლემებისგან თავის არიდება. შესაბამისად თუ თქვენ სწორად და ამომწურავად გაეცით ზემოთაღნიშნულ კითხვებს პასუხი, თქვენ შეიმუშავებთ სწორ პრევენციულ მექანიზმებს, ინსტრუქციებს, პოლიტიკებს. ეს კი ბევრად შეამცირებს ორგანიზაციის ფუჭად დაკარგულ დროს და მეტ დროს დაგიტოვებთ თვითგანვითარებისთვის (ან ტანკების სათამაშოდ).
რა? როგორ?
კითხვა რა ერთ-ერთი პირველი კითხვაა, რომელიც თქვენ უნდა დაუსვათ თქვენ თავს ან მომხმარებელს. რა შეიცვალა? დაიმახსოვრეთ, თუ არაფერი იცვლება კომპიუტერი მუშაობს გამართულად.

მაგალითი 1.
მოხმარებელი ხსნის თიქეთს ჩივილით, რომ ის ვეღარ ბეჭდავს. პირველი კითხვა, რომელსაც თქვენ უსვავთ არის რა შეიცვალა? რა მოხდა რის მერე თქვენ ვეღარ ბეჭდავთ? შესაძლებელია აღმოჩნდეს, რომ წინა ნოუთბუქი, რომელზეც ეს პრინტერი შეერთებული და დაშეარებული იყო პატრონმა მივლინებაში წაიღო და თანამშრომლებმა უბრალოდ უსბ კაბელი გადაერთეს სხვა კომპიუტერზე. არასპეციალისტისთვის თითქოს არაფერი შეიცვალა. უსბ ხომ უსბ კაბელია და ის შეერთებულია კომპიუტერზე.

მაგალითი 2.
კოპმანიიდან რომელსაც დრო და დრო ემსახურებით, რეკავენ და ამბობენ რომ დაკარგეს შეარებზე წვდომა. მართალია კომპანიის თანამშრომლების თქმით არაფერი შეცვლილა, მაგრამ კონკრეტული კომმპიუტერების ნახვის მერე თქვენ აღმოაჩენთ რომ დაყენდა Windows-ის მორიგი განახლებები, რომლებიც ცვლიან უსაფრთხოების გარკვეულ პარამეტრებს სისტემაში

თუ თქვენ კარგად გამოიძიებთ თუ რა შეიცვლა, რა მოხდა სინამდვილეში თქვენ ბევრად შეავიწროებთ „ეჭვმიტანილების“ სიას.
კითხვა რა გააკეთეთ ან  როგორ მოხდა ეს ერთ-ერთი ყველაზე რთული კითხვაა. უმეტესი მოხმარებლისთვის კომპიუტერი დაახლოებით იგივეა რაც ტელევიზორი ან მაცივარი. კომპიუტერი უბრალოდ მუშაობს და რადგანაც მომხარებლებმა არ იციან მისი მუშაობის სპეციფიკა ხშირად ვერ აღიქვამენ თავიანთი მოქმედების პოტენციურ საფრთხეს. ეს ნიშნავს იმას, რომ კითხვაზე  რას აკეთებდით ან როგორ მოხდა ეს პრობლემა შეიძლება მიიღოთ პასუხი: „აიტი სპეციალისტი თქვენ ხართ აბა მე რა ვიცი“. ამ შემთხვევებში შეეცადეთ მოახდინოთ კითხვების უფრო ზუსტად დასმა. მაგალითად, თუ აღმოჩნდა რომ პრობლემა ვლინდება კომპიუტერის გათიშვისას, კითხეთ კომპიუტერი shut down ბრძანებით გათიშა, გათიშვის ღილაკზე დაჭერით თუ უბრალოდ შტეპსელიდან გამოაძრო დენის კაბელი.
აქვე უნდა დავძინოთ, რომ პრობლემის გადაწყვეტისას არ უნდა გამორიცხოთ რაიმე მიზეზი რომელიც თქვენ გეჩვენაბათ უაზროდ (მაგალითად კომპიუტერის გათიშვა დენიდან გამოძრობით). შეისწავლეთ ყველა შესაძლო რა და როგორ.

როდის?
როცა ჩვენ ვსაუბრობთ „ეჭვმიტანილების“ სიაზე მნიშნველოვანია უპასუხოთ კითხვას როდის? როცა თქვენ ზუსტად დაადგენთ პრობლემების აღმოცენების დროს თქვენ შეიძლება მოახდინოთ პრობლემის იდენტიციფიცირება კონკრეტულ მოვლენასთან. მაგალითად თუ აღმოჩნდა, რომ კომპიუტერებს პრობლემების დაწყება დაემთხვა თვის მეორე სამშაბათს დიდი შანსია რომ Microsoft-ის დიდი განახლება კვლავ ბაგების შემცვლელი აღმოჩნდა. რა თქმა უნდა თქვენ უნდა შეამოწმოთ სხვა შესაძლო როდისებიც? მაგალითად ვინდოუსის განახლების თარიღი და პრობლემის აღმოცენების თარიღი შეიძლება უბრალო დამთხვევა იყოს და მოხმარებლებმა უბრალოდ არ დააყენეს ახალი რთული პაროლები, რის შესახებაც 2 კვირით ადრე იყვნენ გაფრთხილებულებულები და შესაბამისად ვერ გადიან ავტორიზაციას.


Tuesday, April 9, 2019

ფაილებზე წვდომის უფლებების კონტროლი. ნაწილი 1 - Permission bits.


ლინუქსი დასაწყისიდანვე იყო შექმნილი როგორც მრავალმომხარებლიანი ოპერაციული სისტემა. შესაბამისად მასში დიდი ყურადღება ეთმობა უფლებებს ფაილებზე (file permissions) და ფაილების მფლობელობის (ownership) საკითხებს.

ნებისმიერ ობიექტს ლინუქსში აქვს მფლობელი, ჯგუფი და უფლებების ნაკრები, რომლებიც განსაზღვრავენ ვის და რა მოცულობით ექნება წვდომა ამ ფაილთან.
ლინუქსში უფლებების სუბიექტები (ანუ კონკრეტულად ვის შეიძლება ქონდეს რაიმე უფლება) გვყავს სამი:  u (user იგულისხმება ობიექტის მფლობელი იუზერი), g (group ანუ ჯგუფი) და o (other ანუ სხვა ნებისმიერი ვინმე, დანარჩენი სამყარო )

როცა ვსაუბრობთ უფლებების სუბიექტებზე, უნდა ვახსენოთ ერთი იუზერი, რომელზეც ფაქტობრივად არ მოქმედებს რაიმე შეზღუდვა. ასეთი იუზერი არის რა თქმა უნდა root (სუპერიუზერი). მას შეუძლია ფაქტიურად ნებისმიერი ფაილის წაკითვა და ჩაწერა. ფაილის შესრულებაზე გაშვებისთვის (execute) როგორც წესი შესაბამისი უფლება ჩართული უნდა იყოს. მაგრამ ვინაიდან სუპერიუზერს ასეთი უფლების ჩართვა ნებისმიერ დროს შეუძლია - აქაც არ არსებობს რაიმე არსებითი დაბრკოლება.

ძირითადი უფლებები განისაზღვრება წაკითხვის (read), ჩაწერის (write - ცვლილებების შეტანის, წაშლის) და გაშვების  (execute -  ძირითადად იგულისხმება პროგრამების, სკრიპტების და ა.შ. ფაილების გაშვება) უფლებებით.

execute უფლება ფოლდერებზე ნიშნავს მათში დასერჩვის უფლებას, ამიტომ როგორც წესი თუ ფოლდერზე  დაშვებულია წაკითხვის უფლება execute უფლებაც უნდა იყოს მითითებული.

ფაილზე წვდომის წესების შესაცვლელად გამოიყენება ბრძანება chmod (сhange mode). ამ ბრძანებას ჭირდება როგორც სუბიექტ(ებ)ის მითითება, ასევე უფლებების მითითება.
უფლებების მისანიჭებლად და არსებული უფლებების საჩვენებლად ლინუქსში იყენებენ 2 მიდგომას: ანბანურს და ციფრულს.

ანბანურ მიდგომაში უფლებები იწერება როგორც: r (read), w (write), x (execute)
ფაილზე არსებული უფლებების  სანახავად გამოიყენება  ბრძანება ls –l
პასუხად ჩვენ დაგვიბრუნდება დაახლოებით ასეთი ინფორმაცია:

-rw- - r - - r - -   1 mint mint  1 Apr 18 18:17 myfile.txt

როგორც უკვე აღვნიშნეთ უფლებების სუბიექტი არის სამი, შესაბამისად აქ ჩამოთვლილია 9 უფლება (თითო სუბიექტის სამივე უფლების მდომარეობა). გავშიფროთ ეს კონკრეტული მაგალითი:  პირველი ტირე გვაქვს იმიტომ, რომ საქმე გვაქვს ფაილთან. დირექტორიის (ფოლდერის) შემთხვევაში) გვექნებოდა d ასო, შემდეგი სამი სიმბოლო ეკუთვნის ფაილის მფლობელ იუზერს. როგორც ვხედავთ იუზერს აქვს წაკითხვის და ჩაწერის უფლება, ხოლო შესრულების უფლების ნაცვლად აქვს ტირე ანუ ასეთი უფლება არ აქვს. მომდევნო სამი სიმბოლო ეკუთვნის ჯგუფს. მოცემულ მაგალითში ჯგუფს აქვს მხოლოდ წაკითხვის უფლება. ხოლო ბოლო სამი სიმბოლო ეკუთვნის სხვა ნებისმიერი იუზერის უფლებრივ მდგომარეობას, რომელიც ამ შემთხვევაში მხოლოდ წაკითხვით შემოიფარგლება.

საბოლოო ჯამში უფლებების განმსაზრღრელი ჩანაწერი შედგება 10 ბიტისგან. პირველი ბიტი განსაზღვრავს ე.წ. file type code-ს (ანუ რა ტიპის ფაილთან გვაქვს საქმე), ხოლო დანარჩენი 9 უფლებებს



თუ ჩვენ გვინდა myfile.txt-ს ცვლილების შეტანის უფლება მივცეთ სისტემაში არსებულ სხვა იუზერებს ჩვენ გამოგვაგდება ბრძანება:

chmod o+w myfile.txt 

შესაბამისად უფლების მოსანიჭებლად გამოიყენება +, ხოლო უფლების წასართმევად -. მაგალითად: 

chmod o-w myfile.txt 

იგივე იუზერებს წაერთმევათ ფაილში ცვლილებების შეტანის უფლება

რათქმა უნდა ჩვენ შეგვიძლია უფლებების მინიჭება ან წართმევა პაკეტურად, მაგალითად:

chmod ugo+w myfile.txt 

ნიშნავს იმას, რომ იუზერს, ჯგუფს და სხვებსასაც მიენიჭება ჩაწერის უფლება.

პაკეტურად შეიძლება ასევე უფლებების ჩამორთმევაც, მაგალითად:

chmod ugo-rwx