Friday, September 11, 2015

SSH - Secure Shell (2)

Cryptography key pair 1ක් බාවිතා කරල SSH හරහා server 1ට connect වෙන්නේ කොහොමද කියල අද බලමු?
මෙහිදී key files 2ක් තියෙනවා, 1ක් Public key file 1ක අනෙක Private key file 1ක. Public key 1ක server පරිගණකයේ save කරලා තියන්නේ. Private key 1ක තම අපේ පරිගණකයේ තියාගන්නේ. SSH  කරනකොට password 1ක වෙනුවට Private key 1ක යවනවා.

දැන් බලමු කොහොමද Cryptography key pair 1ක් හදාගන්නේ කියල.
Linux/Mac බාවිතා කරන අයට bash terminal 1න් මේ වැඩේ කරගන්න පුළුවන්, windows බාවිතා කරන අයට 3rd party software වල සහය ගන්න වෙනවා.
 Terminal window 1කේ පහත command 1ක මගින් Cryptography key pair 1ක් හදාගන්න පුළුවන්.
ssh-keygen -t rsa
මෙවිට පළමුවෙන් අපෙන් අහනවා file 1ක save කරන්න තැනක් හා save වෙන්න ඕනි නම. 

Default save වෙන්නේ home folder 1කේ .ssh/id_rsa විදියට,  කැමතිනම් path 1ක වෙනස් කරන්න පුළුවන්. දෙවනියට අහනවා password 1ක්. මේ password 1න් වෙන්නේ Private key file 1ක lock වෙන 1ක. Private key 1ක බාවිතා කරනකොට මෙතනදි දෙන password 1ක අහනවා. Password 1ක් නොදී තිබුනොත් අපේ Private key file 1ක අරගෙන ඕන කෙනෙකුට server 1ට log වෙන්න පුළුවන්. එහෙම වීම වලක්වගන්න password 1ක් දෙන 1ක ගොඩක් හොදයි.

.ssh folder 1කේ අපේ keys 2ක තියෙනවා. id_rsa කියල තියෙන්නේ අපේ Private key 1ක, id_rsa.pub කියල තියෙන්නේ Public key 1ක. Public key 1ක server පරිගණකයේ home folder 1කේ .ssh folder 1ට copy කරන්න ඕනි. Linux වලනම් මේ වැඩේ හරිම ලේසියි.
ssh-copy-id -i path_to_public_key_file username@ip 

command 1න් මේ වැඩේ කරගන්න පුළුවන්. නැත්තම් scp command 1න් මේ වැඩේ කරගන්න පුළුවන්. scp බාවිතා කලොත් copy කරගත්තට පස්සේ id_rsa.pub 1කේ තියෙන content 1ක .ssh folder 1කේ authorized_keys කියල file 1ට copy කරන්න ඕනි. cat id_rsa.pub .ssh/authorized_keys command 1න් ඔයාලට මේ වැඩේ කරගන්න පුළුවන්.
දැන් බලමු අපේ Private key 1න් server 1ට connect වෙන්නේ කොහොමද කියල.
ssh -i path_to_private_key_file username@ip

command 1න් අපට සේර්වේර් පරිගණකයට connect වෙන්න පුළුවන්. Private key file 1ට password 1ක් දුන්නනම් අපෙන් password 1ක අහනවා. 

Windows වල මේ වැඩේ කරගන්න PuTTYgen download කරගන්න ඕනි.(http://the.earth.li/~sgtatham/putty/latest/x86/puttygen.exe) PuTTYgen 1කේ තියෙන Generate button 1ක click කරලා mouse 1ක ටිකක් move කර කර ඉන්න ඕනි, එතකොට key file generate වෙනවා.

Private key file 1ක save කරගන්න. PuTTY වලින් server 1ට connect වෙලා generate වෙන public key 1කේ content 1ක .ssh/authorized_keys file 1ට save කරන්න. දැන් PuTTY open කරලා Connection -> SSH -> Auth වලට ගිහින් අපේ Private key file 1ක තෝරන්න. දැන් අපට හදාගත්ත keys වලින් connect වෙනකොට වෙන්න පුළුවන්. 

No comments:

Post a Comment