“දන්නා_හෝස්ට් වල නිවැරදි ධාරක යතුර එක් කරන්න” / ධාරක නාමයකට බහු ssh ධාරක යතුරු?


159

මා පාලනය කරන පරිගණකයකට මාරුවීමට උත්සාහ කරමින්, මට හුරුපුරුදු පණිවිඩය ලැබේ:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
[...].
Please contact your system administrator.
Add correct host key in /home/sward/.ssh/known_hosts to get rid of this message.
Offending RSA key in /home/sward/.ssh/known_hosts:86
RSA host key for [...] has changed and you have requested strict checking.
Host key verification failed.

මම ඇත්තටම යතුර වෙනස් කළා. මෙම ගැටළුව විසඳීමට මාර්ගය පැරණි යතුර known_hostsගොනුවෙන් මකා දැමීම බව පවසමින් මම පෝස්ට් දුසිම් කිහිපයක් කියවා ඇත්තෙමි .

නමුත් මා කැමති වන්නේ පැරණි යතුර සහ නව යතුර යන දෙකම ssh විසින් පිළිගැනීමයි. දෝෂ පණිවිඩයේ ඇති භාෂාව (" Add correct host key") යෝජනා කරන්නේ පැරණි එක ඉවත් නොකර නිවැරදි ධාරක යතුර එක් කිරීමට යම් ක්‍රමයක් තිබිය යුතු බවයි.

පැරණි එක ඉවත් නොකර නව ධාරක යතුර එකතු කරන්නේ කෙසේදැයි මට සිතා ගැනීමට නොහැකි විය.

මෙය කළ හැකිද, නැතහොත් දෝෂ පණිවිඩය අතිශයින් නොමඟ යවන සුළුද?


9
දෝෂය ජනනය කරන ධාරක යතුර මෙයයි. ධාරකයෙකුට එකම යතුරක් තිබිය යුතුය. මෙය සේවාදායකයා හෝ පරිශීලක යතුරු සමඟ කිසිදු සම්බන්ධයක් නැත. ඔබට එක් ධාරක හෝ වෙනත් දෙයක් අතර පාවෙන එක් IP ලිපිනයක් තිබේද?
ඩේවිඩ් ෂ්වාට්ස්

4
මගේ නඩුවේදී මම දන්නවා නුදුරු අනාගතයේ දී මම යතුරු දෙක අතර මාරුවීමට යන බව. ඔබ යෝජනා කරන බහු සත්කාරක තත්වයන් සහිත එක් IP එකක මෙය ප්‍රයෝජනවත් වනු ඇති බව පෙනේ. ප්‍රධාන වශයෙන් මට දැන ගැනීමට අවශ්‍ය වන්නේ මෙය කිසියම් විශේෂිත ප්‍රායෝගික යෙදුමකට අමතරව මගේ අධ්‍යාපනයට හැකි ද යන්නයි.
සැමුවෙල් එඩ්වින් වෝඩ්

Answers:


156
  1. ඔබේ සේවාදායකයේ rsa යතුර ලබා ගන්න, server_ipඔබේ සේවාදායකයේ IP ලිපිනය කොහිද 192.168.2.1:

    $ ssh-keyscan -t rsa server_ip
    

    නියැදි ප්‍රතිචාරය:

    # server_ip SSH-2.0-OpenSSH_4.3
    server_ip ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwH5EXZG...
    
  2. සහ සේවාදායකයා මත, සම්පූර්ණ ප්‍රතිචාර රේඛාව පිටපත් කර server_ip ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwH5EXZG...මෙම යතුර ඔබේ ~/.ssh/known_hostsගොනුවේ පහළට එක් කරන්න :

    server_ip ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAqx9m529...(the offending key, and/or the very bottom of the `known_hosts` file)
    server_ip ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwH5EXZG... (line you're adding, copied and pasted from above)
    

12
මෙය ක්‍රියාත්මක විය! කෙසේ වෙතත්, මම "HashKnownHosts" භාවිතා කරමි, එබැවින් පිවිසුම මඳක් එහායින් පෙනුනි. වාසනාවකට මෙන් ssh_config (5) මට ssh-keygen (1) වෙත යොමු කළේය. ඔබට ස්තුතියි!
සැමුවෙල් එඩ්වින් වෝඩ්

2
මෙය "ක්‍රියා කරයි" නමුත් ඔබ යතුර සත්‍යාපනය නොකෙරේ, එබැවින් ඔබ මිට්ම් ප්‍රහාරයන්ට ගොදුරු වේ ...
ජැස්පර් වොලස්

3
As ජැස්පර් වොලස්, ආරක්ෂිත සම්බන්ධතාවය හරහා පළමු පියවර සිදුකරන තාක් කල් (උදාහරණයක් ලෙස localhost භාවිතා කිරීම) එය ඉතා ආරක්ෂිත විය යුතුය, මම හිතන්නේ
ony

3
සියලුම ප්‍රධාන වර්ග සේවාදායකයෙන් ලබා ගැනීමට ක්‍රමයක් තිබේද? සමහර විට ඒවා RSA, DSA, ECDSA, RSA1 ... යනාදිය
දැයි ඔබ නොදනී

3
Man සොපලාජෝඩ් ඇරියරෙස් ද ඔබට කොමාව සමඟ වර්ග වෙන් කළ හැකි බව පවසයි, ssh-keyscan -t rsa1,dsa,rsa,ecdsa,ed25519 server_ipනමුත් එසේ කරන්න - නමුත් සොයා ගැනීමට rsa1සහ dsaයතුරු සොයා ගැනීමට ඇති එකම හේතුව යාවත්කාලීන කළ යුතු / නැවත සකස් කළ යුතු සේවාදායකයන් හඳුනා ගැනීමයි
kbolino

103

දන්නා_ හොස්ට් වලින් ඇතුල්වීම ඉවත් කරන්න:

ssh-keygen -R *ip_address_or_hostname*

මෙය දන්නා_හෝස්ට් ගොනුවෙන් ගැටළු සහගත IP හෝ ධාරක නාමය ඉවත් කර නැවත සම්බන්ධ වීමට උත්සාහ කරයි.

මෑන් පිටු වලින්:

-R hostname
දන්නා_හෝස්ට් ගොනුවකින් ධාරක නාමයට අයත් සියලුම යතුරු ඉවත් කරයි. හැෂ් ධාරකයන් මකා දැමීමට මෙම විකල්පය ප්‍රයෝජනවත් වේ (ඉහත -H විකල්පය බලන්න).


13
"පැරණි එක ඉවත් නොකර නව ධාරක යතුර එකතු කරන්නේ කෙසේද?"
සැමුවෙල් එඩ්වින් වෝඩ්

4
හොඳම විසඳුම මෙයයි!
තෝමස් ඩෙකෝක්ස්

8
මෙයට ඡන්ද 19 ක් ලැබෙන්නේ කෙසේද? ඇසූ ප්‍රශ්නයට පිළිතුරු දීමට එය සමීප නොවේ ..
මොලොම්බි

2
"Git ssh යාවත්කාලීන ධාරක යතුර ස්වයංක්‍රීයව" සඳහා ගූගල් කරන විට ඔබේ ප්‍රශ්නය දෙවනුව පැමිණේ. මෙම පිළිතුර මා සොයන දෙයයි. මට අවශ්‍ය දේ සමඟ නව ප්‍රශ්නයක් විවෘත කිරීමෙන් එය අනුපිටපතක් ලෙස වසා දැමිය හැකිය.
ජේසන් ගොමාත්

ධාරක නාමය ද ක්‍රියා කරයි
damluar

19

ඉතා සරල ක්‍රමයක් නම්:

cp ~/.ssh/known_hosts ~/.ssh/known_hosts.bak

මුල් යතුර ඉවත් කිරීම සඳහා දන්නා_ හොස්ට් සංස්කරණය කරන්න, ඉන්පසු ධාරකයට ssh භාවිතා කරන්න:

ssh name@computer

එය නව යතුර ස්වයංක්‍රීයව එකතු කරයි; ඉන්පසු ගොනු දෙක සංසන්දනය කරන්න. මෙල්ඩ් වැනි වැඩසටහනක් ගොනු දෙක සංසන්දනය කිරීමට හොඳ ක්‍රමයකි. දන්නා_හෝස්ට් වල යතුරු දෙකම අඩංගු වන පරිදි ගොනු ඒකාබද්ධ කරන්න

යතුරු දෙකක් තබා ගැනීමට මගේ 'හේතුව' වන්නේ ගමනාන්ත පද්ධතිය බහු බූට් වීමයි, ස්ථාපනයන් හරහා යතුරු සමමුහුර්ත කිරීමේ ක්‍රමයක් ඇති බව මා පැවසුවද, බහු යතුරු වලට ඉඩ දීම වඩා සරල බව පෙනේ.

සංස්කරණය 2015/06

මම දැන් එය නැවත සලකා බලමින්, ඊටත් වඩා සරල ක්‍රමයක් දකිමි. [ප්‍රවේශය හඳුනාගත හැකි තාක් කල්, සාමාන්‍යයෙන් ධාරක නාමය / අයිපී ලිපිනයෙන්, එහි නිශ්චිත ස්ථානය සඳහන් කරන දෝෂ පණිවිඩයට වඩා වෙනස්ව];

  1. දන්නා_ හොස්ට් වල 'පැරණි' පිවිසුම ආරම්භයේදී තාවකාලිකව # එකතු කිරීමට දන්නා_ හොස්ට් සංස්කරණය කරන්න
  2. [ධාරකයට ssh] සම්බන්ධ කරන්න, නව යතුර 'ස්වයංක්‍රීයව' එක් කිරීමට විමසුමට එකඟ වන්න.
  3. # ඉවත් කිරීමට දන්නා_ හොස්ට් නැවත සංස්කරණය කරන්න

HostKeyAlias ​​විකල්පය පවා ඇත

ssh -o HostKeyAlias=mynewaliasforthemachine name@computer

පසුව, ssh සේවාදායකයා අන්වර්ථය යටතේ නව යතුර එක් කළ පසු, අන්වර්ථය සඳහා 'සැබෑ' සත්කාරක නාමය / IP ලිපිනය ආදේශ කිරීම සඳහා ඔබට දන්නා_ හොස්ට් සංස්කරණය කළ හැකිය, නැතහොත් අන්වර්ථ විකල්පය සමඟ එම ධාරකයේ අවතාරයට සම්බන්ධ විය හැකිය.



බව උචිත-හමුවීමක් / yum නම ස්ථාපනය වන meld තියෙන්නේ :) හුදෙක් meld ඇත
මාක්

මම ඔබේ යෝජනාවේ ප්‍රභේදයක් හොඳින් ක්‍රියාත්මක කළෙමි - cp, mv, පසුව ssh වෙනුවට cat ~ / .ssh / known_hosts.bak ~ / .ssh / known_hosts> tmp; mv tmp ~ / .ssh / known_hosts
පීටර් එන් ලුවිස්

6

මට රාස්ප්බෙරි පයි සමඟ එකම ගැටළුවක් ඇති අතර එය විවිධ පද්ධති කිහිපයක් සමඟ ආරම්භ කරමි (හස්තයේ ද්විමය, ව්‍යාපෘති, එක්ස්බීඑම්සී යනාදිය සම්පාදනය කිරීම සඳහා ඩිව් පද්ධතිය) සහ එකම ගැටලුවකට මුහුණ දී ඇත. ඔවුන් දේශීය ජාලයක DHCP භාවිතා කරන අතර MAC ලිපිනය එකම වූ බැවින් මගේ රවුටරය සෑම විටම එකම IP නැවත භාවිතා කළේය. මගේ සත්කාරක ගොනුවේ විවිධ ඩොමේන් නාම භාවිතා කිරීමෙන් මම එය විසඳා ඇත්තෙමි:

10.10.10.110 pi-dev
10.10.10.110 pi-xbmc
10.10.10.110 pi-etc

දන්නා_හෝස්ට් ගොනුව ඇඟිලි සලකුණු ධාරක නාමයෙන් සුරකින අතර එය එකම IP ලිපිනයක් වුවද, සෑම අද්විතීය සත්කාරක නාමයකටම වෙනස් ප්‍රවේශයක් ලැබේ.

මම නව පද්ධතියක් භාවිතා කරන සෑම අවස්ථාවකම ධාරක ලිපිගොනු වලට නම් එකතු කිරීම මට අසනීප විය, එබැවින් අයිපී ලිපිනවල ප්‍රමුඛ ශුන්‍යයන් භාවිතා කරමින් ඊටත් වඩා කම්මැලි ක්‍රමයක් ඉදිරිපත් කළෙමි:

$ ssh pi@10.10.10.110
$ ssh pi@010.10.10.110
$ ssh pi@10.010.10.110

(Uncononicalized) ip ලිපිනයේ සෑම විචලනයකටම දන්නා_ හොස්ට් වල එයටම ඇතුල් වේ.


1
OpenSSH පිරිස මට wise ානවන්ත විය, මෙම අඩුපාඩුව තවදුරටත් මෑත සංස්කරණ වල ක්‍රියා නොකරයි.
මයික්

ඔබට භාවිතා කල හැකි CheckHostIP noතුළ ~/.ssh/configතවමත් අඩු වූ භාවිතා කිරීමට හැකි විය. ඔබට එහි අන්වර්ථ නාමයන් පවා නිර්වචනය කළ හැකිය, එවිට ඔබට මෙම සත්කාරක නාම 3 සඳහා පමණක් සම්බන්ධ /etc/hostsවී අර්ථ දැක්විය යුතු නැත CheckHostIP no.
GnP

3

ඔබේ සේවාදායකයා සහ සේවාදායකයා යන දෙකටම OpenSSH 6.8 හෝ ඊට වඩා නව එකක් තිබේ නම්, ඔබට UpdateHostKeys yesඔබේ ssh_configහෝ ~/.ssh/config. උදාහරණයක් වශයෙන්:

Host *
    UpdateHostKeys yes

මෙමඟින් SSH විසින් සේවාදායකයාට තිබිය යුතු සියලුම සත්කාරක යතුරු ගබඩා known_hostsකරන අතර, සේවාදායකයක් එක් ධාරක යතුරක් වෙනස් කළ විට හෝ ඉවත් කළ විට, යතුරද ඔබගේ වෙනස් වේ හෝ ඉවත් කරයි known_hosts.


මෙය වඩාත්ම ප්‍රයෝජනවත් පිළිතුරයි! ධාරක යතුර දැනටමත් වෙනස් කර ඇත්නම් මුල් ප්‍රශ්නය විසඳීමට එය පැහැදිලිවම ක්‍රමයක් ඉදිරිපත් නොකලද, අනෙක් සියලුම පිළිතුරු නව සත්කාරක යතුර සත්‍යාපනය නොකරන බැවින් අනාරක්ෂිත වේ. මෙම විකල්පය මඟින් ඔබට නව ධාරක යතුරු වෙත ආරක්ෂිත පෙරළියක් කිරීමට ඉඩ ලබා දේ.
ජාප් එල්ඩරින්

1

ඔබට යතුරු දෙකක් සමඟ වැඩ කිරීමට අවශ්‍ය ඇයි දැයි මට නොපෙනේ, නමුත් ඔබට නිසැකවම ~/.ssh/known_hostsගොනුවට වලංගු යතුරකට වඩා එක් කළ හැකිය , නමුත් ඔබට එය අතින් කළ යුතුය.

StrictHostKeyChecking=noමෙම විශේෂිත ධාරකය සඳහා විකල්පය භාවිතා කිරීම තවත් විසඳුමක් විය හැකිය :

ssh -o StrictHostKeyChecking=no user@host

ඔබේ ~/.profileහෝ ඊට සමාන දෙයක් අන්වර්ථයකට දැමිය හැකි .

alias hc=ssh -o StrictHostKeyChecking=no user@host

StrictHostKeyChecking මෙම නඩුවේදී උපකාර වන බවක් නොපෙනේ; පෙනෙන විදිහට එය හැසිරීම නියම කරන්නේ ධාරකය දන්නා_හෝස්ට් ගොනුවේ නොමැති විට පමණි. මෙහි සඳහන් කර ඇත: gossamer-threads.com/lists/openssh/dev/45349#45349
සැමුවෙල් එඩ්වින් වෝඩ්

එය මෙහි ක්‍රියාත්මක වේ. ඔබට අනතුරු ඇඟවීම ලැබෙනු ඇත, නමුත් පිවිසුම දිගටම පවතී.
ස්වේන්

ඒක අමුතුයි. ඔබ මුරපද සත්‍යාපනය භාවිතා කරනවාද? ඔබ OpenSSH භාවිතා කරනවාද?
සැමුවෙල් එඩ්වින් වෝඩ්

1

ඔබ දේශීය ජාලයකට පමණක් පිවිසෙන්නේ නම් ...

සරල විසඳුමක් නම් පැරණි යතුරු ගොනුව පිස දමා හිස් එකක් වෙනුවට ආදේශ කිරීමයි. නව යතුරු සමඟ ඔබගේ සියලු සම්බන්ධතා නැවත තහවුරු කිරීමට මෙය ඔබට ඉඩ සලසයි. ඔබේ දේශීය ජාලයෙන් පිටත අඩවි සඳහා ssh යතුරු ගබඩා කර ඇත්නම්, ඔබ පළමු වරට එම සේවාදායකයට සම්බන්ධ වූවාක් මෙන් ඔබේ ආරම්භක සම්බන්ධතාවය ආරක්ෂිත බව සහතික කළ යුතුය.

උදා

cp known_hosts known_hosts.old
rm known_hosts
nano known_hosts

නව බෆරය (ගොනුව) සුරැකීමට අවකාශය, බැක්ස්පේස් cntl + x සහ 'y' ඔබන්න. එහි නරක පුරුද්ද නමුත් ඔබේ දේශීය ජාලයෙන් ඔබ නිතිපතා නොපැමිණීම (උදා: යුනී හෝ වැඩ සේවාදායකයක්)

ආරක්ෂිත දේශීය ජාලයක මෙය ආරක්ෂිත වන්නේ ඔබට මැද ප්‍රහාරයකට මිනිසෙකු ලබා ගත නොහැකි බැවිනි.

ඔබ තේරුම් ගත් කේතය භාවිතා කිරීම සැමවිටම හොඳය!


4
known_hostsසෑම අවස්ථාවකදීම මුළු ගොනුවම පිස දැමීම ssh විසින් සපයනු ලබන බොහෝ ආරක්‍ෂාව නොසලකා හරිනු ඇත.
kasperd

ඇත්ත වශයෙන්ම, මම තර්ක කරන්නේ ආරක්ෂිත අභ්‍යන්තර ජාලයක, ඔබේ කේතය තේරුම් ගැනීම සහ කේතය සිහියෙන් තොරව පිටපත් කිරීමට වඩා ආරක්‍ෂාව මග හැරීම ආරක්ෂිත බවයි. බාහිර ජාලයක තත්වය වෙනස් වනු ඇත.
ආරොන්

-1

බොහෝ පිළිතුරු, නමුත් දැඩි සත්කාරක පරීක්ෂාව මුළුමනින්ම අක්‍රිය කිරීමෙන් හෝ සම්බන්ධයක් නැති සත්කාරක තොරතුරු විනාශ කිරීමෙන් හෝ අන්තර්ක්‍රියාකාරී යතුරු භාර ගැනීමට පරිශීලකයාට බල කිරීමෙන් බොහෝ විට ආරක්ෂාව අත්හරිනු ඇත, සමහර විට පසුකාලීනව එය අනපේක්ෂිත වූ විට.

දැඩි සත්කාරක පරීක්‍ෂණයක් කිරීමට ඔබට ඉඩ සලසන සරල තාක්‍ෂණය මෙන්න, නමුත් යතුර වෙනස් වේ යැයි ඔබ අපේක්ෂා කරන විට පාලිත ආකාරයකින් යාවත්කාලීන කරන්න :

  • පැරණි යතුර ඉවත් කර එක් විධානයකින් යාවත්කාලීන කරන්න

    ssh-keygen -R server.example.com && \
        ssh -o StrictHostKeyChecking=no server.example.com echo SSH host key updated.
    
  • ඔබ IP ලිපිනය (එස්) හෝ වෙනත් සත්කාරක නාම භාවිතා කරන්නේ නම් නැවත නැවත කරන්න.

මෙම ප්‍රවේශයේ ඇති වාසිය නම් එය හරියටම එක් වරක් සේවාදායකය නැවත ලබා ගැනීමයි. ඔබ මැකීමට උත්සාහ කරන සේවාදායකය දන්නා ධාරක ගොනුවේ නොපවතී නම් ssh-keygen හි බොහෝ අනුවාදයන් දෝෂයක් නොදක්වන බව පෙනේ, මෙය ඔබට ගැටළුවක් නම්, විධාන දෙක අනුපිළිවෙලින් භාවිතා කරන්න.

මෙම ප්‍රවේශය මඟින් සම්බන්ධතාවය සත්‍යාපනය කරන අතර ssh විධානයෙහි ලොග් සඳහා හොඳ පණිවිඩයක් නිකුත් කරයි (එය ලොග් වී, ධාරක යතුර යාවත්කාලීන කරයි, සහ SSH ධාරක යතුර යාවත්කාලීන කළ වහාම පිටවෙයි.

ඔබගේ ssh-keygen අනුවාදය ශුන්‍ය නොවන පිටවීමේ කේතයක් ලබා දෙන්නේ නම් සහ ඔබ මෙය දෝෂයකින් තොරව හැසිරවීමට කැමති නම්, නොසලකා හෝ පෙර සම්බන්ධතාවය නොසලකා, ssh-keygen විධානයෙහි කිසියම් දෝෂයක් නොසලකා හරිමින් විධාන දෙක අනුපිළිවෙලින් භාවිතා කරන්න.

ඔබ මෙම තාක්ෂණය භාවිතා කරන්නේ නම්, ඔබට කිසි විටෙකත් ඔබේ ssh විධානය වෙනස් කිරීමට අවශ්‍ය නැත, නැතහොත් එම එක් ssh විධානයක් හැරෙන්නට ධාරක පරීක්ෂාව අක්‍රිය කරන්න. ඉහත ssh විධානය දෝෂයකින් තොරව ක්‍රියාත්මක වන තාක් කල්, අනාගත ssh සැසි ගැටුමකින් තොරව හෝ නව යතුරක් පැහැදිලිව පිළිගැනීමට අවශ්‍ය නොවන බව ඔබට සහතික විය හැකිය.


-3

මටත් ඒ වගේ ප්‍රශ්නයක් තිබුණා.

මම කළේ sudo nano /home/user/.ssh/ host_allowයතුර මකා දැමීමයි.

මම නැවත සේවාදායකයට ගිය විට එය නව යතුරක් එක් කළේය.


2
මෙය සිදුවන්නේ ඇයිද යන්න පිළිබඳ තවත් තොරතුරු පිළිතුරට ප්‍රයෝජනවත් වේ.
ඩ්‍රූ කෞරි

-4

වැරදි රේඛාව ඉවත් කිරීමට sed විධානය භාවිතා කරන්න

OUTPUT: as show in above example
Offending key in /home/user/.ssh/known_hosts:86

දන්නා ධාරකවල සඳහන් පරිදි 86 පේළිය ඉවත් කරන්න.

CODE: 
sed -i '86d' /home/user/.ssh/known_hosts

ඊළඟ වතාවේ ssh භාවිතයෙන් ප්‍රවේශ වන විට පද්ධතිය ස්වයංක්‍රීයව නව යතුරක් එක් කරයි.

ssh හි නවතම අනුවාදයන්

භාවිත:

ssh-keygen -R <hostname|ip address>

එමඟින් ධාරක නාම ඇතුළත් කිරීම ඉවත් කර පැරණි .known_hostලෙස උපස්ථ ලබා ගනීknown_hosts.old


4
"නමුත් මා කැමති වන්නේ පැරණි යතුර සහ නව යතුර යන දෙකම ssh විසින් පිළිගැනීමයි." ඔබේ පිළිතුර මෙය නොකරයි.
සැමුවෙල් එඩ්වින් වෝඩ්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.