notes/ssh_linode.html
2022-08-28 17:42:03 -07:00

158 lines
No EOL
139 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html><html id=ln-docs lang=en><head><meta name=generator content="Hugo 0.83.1"><meta charset=utf-8><meta http-equiv=x-ua-compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=5"><link rel="shortcut icon" href=/docs/favicon.ico type=image/x-icon><script>(function(b,d,e,a,g){b[a]=b[a]||[],b[a].push({'gtm.start':(new Date).getTime(),event:'gtm.js'});var f=d.getElementsByTagName(e)[0],c=d.createElement(e),h=a!='dataLayer'?'&l='+a:'';c.async=!0,c.src='https://www.googletagmanager.com/gtm.js?id='+g+h,f.parentNode.insertBefore(c,f)})(window,document,'script','dataLayer','GTM-T5FXXG9')</script><link href=/docs/linode/header-footer.min.40f6cf2d49eec6d69351f0bdc6f71835655b0565bbdcf5980cd8b4f09b0f4dab.css rel=stylesheet><script src=/docs/linode/partials.50e5acc1dff4c9b0525741d01fde217ce7e4ded3d32f22c9ed5509f9c4ca4df1.js integrity="sha256-UOWswd/0ybBSV0HQH94hfOfk3tPTLyLJ7VUJ+cTKTfE=" defer></script><script async crossorigin src="https://consent.trustarc.com/notice?domain=linode.com&c=teconsent&js=nj&noticeType=bb&text=true&gtm=1"></script><link rel=preload href=https://www.linode.com/docs/webfonts/source-sans-pro-v14-latin-600.woff2 as=font type=font/woff2 crossorigin><link rel=preload href=https://www.linode.com/docs/webfonts/source-sans-pro-v14-latin-regular.woff2 as=font type=font/woff2 crossorigin><link href=/docs/css/styles.min.09d8766c526171b3a12d7e99ba21022204447eb8d60f425c10b49f5cc8e5b1e9.css rel=stylesheet><script type=text/javascript src=https://cdn.weglot.com/weglot.min.js data-cfasync=false defer></script><script src=/docs/jslibs/turbo/v7/index.f38748504c987e14ca4a8ea659b4ac4cbae3d2212091d0c1807910d07cfc4adb.js integrity="sha256-84dIUEyYfhTKSo6mWbSsTLrj0iEgkdDBgHkQ0Hz8Sts=" defer></script><script src=/docs/js/main/index.6be2d7d81f439d6abed612eb51e7d49bd46a950eca1db54a6fdef338e50a833d.js integrity="sha256-a+LX2B9DnWq+1hLrUefUm9RqlQ7KHbVKb97zOOUKgz0=" defer></script><title>How to Use SSH Public Key Authentication |
Linode</title><meta name=turbo-root content="/docs"><meta name=description content="Understand SSH Public Key Authentication & learn how to use SSH public key authentication on Linux, macOS, and Windows. ✓ Click to read more now!"><meta name=google content="notranslate"><meta property="og:title" content="How to Use SSH Public Key Authentication"><meta property="og:type" content="
article
"><meta property="og:url" content="https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/"><meta property="og:description" content="Understand SSH Public Key Authentication & learn how to use SSH public key authentication on Linux, macOS, and Windows. ✓ Click to read more now!"><meta property="og:site_name" content="Linode Guides & Tutorials"><meta property="og:image" content="https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/use_public_key_authentication_with_ssh.png"><meta name=twitter:card content="summary_large_image"><meta name=twitter:site content="@linode"><link rel=canonical type=text/html href=https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/><noscript><style>.hide-if-no-js{display:none!important}.show-if-no-js{display:block!important}</style></noscript><style>[x-cloak]{display:none!important}.is-translating{opacity:0!important}</style>
<script>!function(e){var n="https://s.go-mpulse.net/boomerang/";if("False"=="True")e.BOOMR_config=e.BOOMR_config||{},e.BOOMR_config.PageParams=e.BOOMR_config.PageParams||{},e.BOOMR_config.PageParams.pci=!0,n="https://s2.go-mpulse.net/boomerang/";if(window.BOOMR_API_key="7U4SN-BLJ2N-G2NW6-5XFY8-GXLUQ",function(){function e(){if(!o){var e=document.createElement("script");e.id="boomr-scr-as",e.src=window.BOOMR.url,e.async=!0,i.parentNode.appendChild(e),o=!0}}function t(e){o=!0;var n,t,a,r,d=document,O=window;if(window.BOOMR.snippetMethod=e?"if":"i",t=function(e,n){var t=d.createElement("script");t.id=n||"boomr-if-as",t.src=window.BOOMR.url,BOOMR_lstart=(new Date).getTime(),e=e||d.body,e.appendChild(t)},!window.addEventListener&&window.attachEvent&&navigator.userAgent.match(/MSIE [67]\./))return window.BOOMR.snippetMethod="s",void t(i.parentNode,"boomr-async");a=document.createElement("IFRAME"),a.src="about:blank",a.title="",a.role="presentation",a.loading="eager",r=(a.frameElement||a).style,r.width=0,r.height=0,r.border=0,r.display="none",i.parentNode.appendChild(a);try{O=a.contentWindow,d=O.document.open()}catch(_){n=document.domain,a.src="javascript:var d=document.open();d.domain='"+n+"';void(0);",O=a.contentWindow,d=O.document.open()}if(n)d._boomrl=function(){this.domain=n,t()},d.write("<bo"+"dy onload='document._boomrl();'>");else if(O._boomrl=function(){t()},O.addEventListener)O.addEventListener("load",O._boomrl,!1);else if(O.attachEvent)O.attachEvent("onload",O._boomrl);d.close()}function a(e){window.BOOMR_onload=e&&e.timeStamp||(new Date).getTime()}if(!window.BOOMR||!window.BOOMR.version&&!window.BOOMR.snippetExecuted){window.BOOMR=window.BOOMR||{},window.BOOMR.snippetStart=(new Date).getTime(),window.BOOMR.snippetExecuted=!0,window.BOOMR.snippetVersion=12,window.BOOMR.url=n+"7U4SN-BLJ2N-G2NW6-5XFY8-GXLUQ";var i=document.currentScript||document.getElementsByTagName("script")[0],o=!1,r=document.createElement("link");if(r.relList&&"function"==typeof r.relList.supports&&r.relList.supports("preload")&&"as"in r)window.BOOMR.snippetMethod="p",r.href=window.BOOMR.url,r.rel="preload",r.as="script",r.addEventListener("load",e),r.addEventListener("error",function(){t(!0)}),setTimeout(function(){if(!o)t(!0)},3e3),BOOMR_lstart=(new Date).getTime(),i.parentNode.appendChild(r);else t(!1);if(window.addEventListener)window.addEventListener("load",a,!1);else if(window.attachEvent)window.attachEvent("onload",a)}}(),"".length>0)if(e&&"performance"in e&&e.performance&&"function"==typeof e.performance.setResourceTimingBufferSize)e.performance.setResourceTimingBufferSize();!function(){if(BOOMR=e.BOOMR||{},BOOMR.plugins=BOOMR.plugins||{},!BOOMR.plugins.AK){var n=""=="true"?1:0,t="",a="jcdmq7fn32rimyymbmxq-f-56565bd81-clientnsv4-s.akamaihd.net",i="false"=="true"?2:1,o={"ak.v":"32","ak.cp":"1289899","ak.ai":parseInt("773358",10),"ak.ol":"0","ak.cr":22,"ak.ipv":4,"ak.proto":"h2","ak.rid":"261dc6d2","ak.r":40283,"ak.a2":n,"ak.m":"dsca","ak.n":"essl","ak.bpcip":"72.134.200.0","ak.cport":54044,"ak.gh":"23.45.44.134","ak.quicv":"","ak.tlsv":"tls1.3","ak.0rtt":"","ak.csrc":"-","ak.acc":"","ak.t":"1661733679","ak.ak":"hOBiQwZUYzCg5VSAfCLimQ==ozenKERvR3RJqZwDYfHix08qMsj8tNENFRDdU7YKqIyiM1S5lNj5lf4gf/6hAIvV8iz3cGiWDcqSKarQpDmgDj/Qw1czIHukmMeJZIw8CI32StadGS3kpABmmFzWkEH6R9GDAUB8EenTt0b5kLmp9HGmoJi/LIycHNRFoEqF5FPKI8ydc0I6fQJweeU2V7qJZJyPMG2fif04c/B2/0aoo4uKVmBDWuXf6ZOV8oaWmVh2Po28YyqeTo/Z0Ugc3kmuz25eWfATVrSvRVvC4EVZfVgeDUNQJwtsk7ugnvdiTEr67y+rhKEc8rFqZIZOEpIJIr4fttt4mFxEng7zVsx5llYj5PoJeOWUnh6gHDX+m+8u7sbhyfXKQQEoFHUKRJ8glETN1mW3AnYDBDLgWVkElD0Q0aFbgrO5ngGiCFFhag4=","ak.pv":"38","ak.dpoabenc":"","ak.tf":i};if(""!==t)o["ak.ruds"]=t;var r={i:!1,av:function(n){var t="http.initiator";if(n&&(!n[t]||"spa_hard"===n[t]))o["ak.feo"]=void 0!==e.aFeoApplied?1:0,BOOMR.addVar(o)},rv:function(){var e=["ak.bpcip","ak.cport","ak.cr","ak.csrc","ak.gh","ak.ipv","ak.m","ak.n","ak.ol","ak.proto","ak.quicv","ak.tlsv","ak.0rtt","ak.r","ak.acc","ak.t","ak.tf"];BOOMR.removeVar(e)}};BOOMR.plugins.AK={akVars:o,akDNSPreFetchDomain:a,init:function(){if(!r.i){var e=BOOMR.subscribe;e("before_beacon",r.av,null,null),e("onbeacon",r.rv,null,null),r.i=!0}return this},is_complete:function(){return!0}}}}()}(window);</script></head><body class="na
type-guides kind-page
is-toc
no-js
h-auto
overflow-x-hidden
is-not-loaded
is-not-topbar-pinned
is-explorer-open
is-not-toc-open
is-not-search-panel-open
is-not-search-panel_filters-open" data-objectid=/docs/guides/use-public-key-authentication-with-ssh/><script src=/docs/js/body-start/index.eccda165f2d74dd742c4f939160b99ce318f66a1f4381ba26b648fa0f52a6b4e.js integrity="sha256-7M2hZfLXTddCxPk5FguZzjGPZqH0OBuia2SPoPUqa04="></script><script data-cfasync=false>var lnPageInfo=JSON.parse('{"href":"/docs/guides/use-public-key-authentication-with-ssh/","kind":"page","linkTitle":"How to Use SSH Public Key Authentication","permalink":"https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/","sectionsEntries":["guides","security","authentication"],"title":"How to Use SSH Public Key Authentication","type":"guides"}')</script><script type=application/ld+json>{"@context":"https://schema.org","@type":"NewsArticle","author":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://www.linode.com/docs/media/images/linode-logo-black.png"},"name":"Linode"},"dateModified":"2022-07-15T09:10:08-04:00","datePublished":"2011-04-05T00:00:00Z","headline":"How to Use SSH Public Key Authentication","image":"https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/use_public_key_authentication_with_ssh.png","mainEntityOfPage":{"@id":"https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/","@type":"WebPage"},"publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://www.linode.com/docs/media/images/linode-logo-black.png"},"name":"Linode"}}</script><div id=grid class="grid--base bg-backgroundcolor"><div x-ignore style=display:none><svg xmlns="http://www.w3.org/2000/svg" style="display:none"><symbol id="icon--logo-small" viewBox="0 0 109.7 131.5"><path d="m92.9 88.2L94.5 69 76.1 57.5l-.4 18.8zm-24.7 19.5V87.8L49.6 73.7 51 93.2z" fill="#004b16"/><path d="m107.1 76.9C93.1 88 92.8 88.2 92.9 88.2 94.6 68.1 94.5 69 94.5 69c16-11.5 15-10.8 15.1-10.8zM85.8 93.8c-17.3 13.8-17.6 13.9-17.6 13.9-.2-20.8-.1-19.9.0-19.9 20-14.3 18.7-13.4 18.7-13.4zm-25.6 20.4c-21.7 17.2-21.9 17.3-21.8 17.3-3.1-20.9-3-20.3-3-20.3 25.5-18.2 23.9-17.1 24-17.1zM55.8 11.4c1.5 35.4 1.4 34.3 1.5 34.3C28.6 60.6 28 60.9 28.1 60.9c-5.5-37.6-5.5-36.8-5.4-36.8zm2 46.5c1.2 26.8 1 25.9 1.1 25.9-24.8 16.7-25.1 16.8-25 16.8-4-27.6-4-26.9-3.9-26.9z" fill="#1cb35c"/><path d="m38.4 131.5-3-20.3-18.1-17.8c5.3 25.4.8 16.6 21.1 38.1zm-4.5-30.9L30 73.7 9.7 56.9 15.2 83zm-5.8-39.7-5.4-36.8-22.7-14.1 7.2 34.6z" fill="#004b16"/><path d="m94.5 69 15.1-10.8-18.2-10.1L76 57.5z" fill="#000"/><path d="m22.7 24.1 33.1-12.7-23.6-11.4-32.2 10z" fill="#000"/><path d="m47.3 50.9c-17.8 9.2-19.2 9.9-19.3 10L18 53l-8.2 3.9L30 73.7l27.8-15.8z" fill="#000"/><path d="m52.2 88.3-18.3 12.3-11.2-10.5-5.4 3.3 18.1 17.8 24-17.1z" fill="#000"/><path d="m68.4 62.2-10.2 6.2c.3 6.3.4 10.1.5 12.3l9.5 7.2L87 74.4z" fill="#000"/></symbol><symbol id="icon--share" viewBox="0 0 496 512"><path fill="currentcolor" d="M352 320c-22.608.0-43.387 7.819-59.79 20.895l-102.486-64.054a96.551 96.551.0 000-41.683l102.486-64.054C308.613 184.181 329.392 192 352 192c53.019.0 96-42.981 96-96S405.019.0 352 0s-96 42.981-96 96c0 7.158.79 14.13 2.276 20.841L155.79 180.895C139.387 167.819 118.608 160 96 160c-53.019.0-96 42.981-96 96s42.981 96 96 96c22.608.0 43.387-7.819 59.79-20.895l102.486 64.054A96.301 96.301.0 00256 416c0 53.019 42.981 96 96 96s96-42.981 96-96-42.981-96-96-96z"/></symbol><symbol id="icon--book" viewBox="0 0 496 512"><path fill="currentcolor" d="M448 360V24c0-13.3-10.7-24-24-24H96C43 0 0 43 0 96v320c0 53 43 96 96 96h328c13.3.0 24-10.7 24-24v-16c0-7.5-3.5-14.3-8.9-18.7-4.2-15.4-4.2-59.3.0-74.7 5.4-4.3 8.9-11.1 8.9-18.6zM128 134c0-3.3 2.7-6 6-6h212c3.3.0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H134c-3.3.0-6-2.7-6-6v-20zm0 64c0-3.3 2.7-6 6-6h212c3.3.0 6 2.7 6 6v20c0 3.3-2.7 6-6 6H134c-3.3.0-6-2.7-6-6v-20zm253.4 250H96c-17.7.0-32-14.3-32-32 0-17.6 14.4-32 32-32h285.4c-1.9 17.1-1.9 46.9.0 64z"/></symbol><symbol id="icon--arrow-up" viewBox="0 0 320 512"><path fill="currentcolor" d="M168.5 164.2l148 146.8c4.7 4.7 4.7 12.3.0 17l-19.8 19.8c-4.7 4.7-12.3 4.7-17 0L160 229.3 40.3 347.8c-4.7 4.7-12.3 4.7-17 0L3.5 328c-4.7-4.7-4.7-12.3.0-17l148-146.8c4.7-4.7 12.3-4.7 17 0z"/></symbol><symbol id="icon--arrow-down" viewBox="0 0 320 512"><path fill="currentcolor" d="M151.5 347.8 3.5 201c-4.7-4.7-4.7-12.3.0-17l19.8-19.8c4.7-4.7 12.3-4.7 17 0L160 282.7l119.7-118.5c4.7-4.7 12.3-4.7 17 0l19.8 19.8c4.7 4.7 4.7 12.3.0 17l-148 146.8c-4.7 4.7-12.3 4.7-17 0z"/></symbol><symbol id="icon--arrow-right" viewBox="0 0 192 512"><path fill="currentcolor" d="M187.8 264.5 41 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 392.7c-4.7-4.7-4.7-12.3.0-17L122.7 256 4.2 136.3c-4.7-4.7-4.7-12.3.0-17L24 99.5c4.7-4.7 12.3-4.7 17 0l146.8 148c4.7 4.7 4.7 12.3.0 17z"/></symbol><symbol id="icon--copy" viewBox="0 0 448 512"><path fill="currentcolor" d="M433.941 65.941l-51.882-51.882A48 48 0 00348.118.0H176c-26.51.0-48 21.49-48 48v48H48c-26.51.0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51.0 48-21.49 48-48v-48h80c26.51.0 48-21.49 48-48V99.882a48 48 0 00-14.059-33.941zM266 464H54a6 6 0 01-6-6V150a6 6 0 016-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 01-6 6zm128-96H182a6 6 0 01-6-6V54a6 6 0 016-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 01-6 6zm6-256h-64V48h9.632c1.591.0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 011.757 4.243V112z"/></symbol><symbol id="icon--times" viewBox="0 0 320 512"><path fill="currentcolor" d="M207.6 256l107.72-107.72c6.23-6.23 6.23-16.34.0-22.58l-25.03-25.03c-6.23-6.23-16.34-6.23-22.58.0L160 208.4 52.28 100.68c-6.23-6.23-16.34-6.23-22.58.0L4.68 125.7c-6.23 6.23-6.23 16.34.0 22.58L112.4 256 4.68 363.72c-6.23 6.23-6.23 16.34.0 22.58l25.03 25.03c6.23 6.23 16.34 6.23 22.58.0L160 303.6l107.72 107.72c6.23 6.23 16.34 6.23 22.58.0l25.03-25.03c6.23-6.23 6.23-16.34.0-22.58L207.6 256z"/></symbol><symbol id="icon--search" viewBox="0 0 14 14"><g id="Responsive-Layouts---MOBILE" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="linode-docs-home-mobile-power-bar---search" transform="translate(-109.000000, -47.000000)" stroke="currentcolor" stroke-width="2"><g id="main-header-mobile" transform="translate(0.000000, 20.000000)"><g id="mobile-header"><g id="mobile-breadcrumb-full" transform="translate(63.000000, 28.000000)"><g id="Icon-Search"><g transform="translate(47.000000, 0.000000)"><circle id="Oval" cx="6.9" cy="5.1" r="5.1"/><line x1="3.3" y1="8.7" x2=".489636562" y2="11.5103634" id="Line" stroke-linecap="square"/></g></g></g></g></g></g></g></symbol><symbol id="icon--play-circle" viewBox="0 0 512 512"><path fill="currentcolor" d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm115.7 272-176 101c-15.8 8.8-35.7-2.5-35.7-21V152c0-18.4 19.8-29.8 35.7-21l176 107c16.4 9.2 16.4 32.9.0 42z"/></symbol><symbol id="icon--check" viewBox="0 0 512 512"><path fill="currentcolor" d="M435.848 83.466 172.804 346.51l-96.652-96.652c-4.686-4.686-12.284-4.686-16.971.0l-28.284 28.284c-4.686 4.686-4.686 12.284.0 16.971l133.421 133.421c4.686 4.686 12.284 4.686 16.971.0l299.813-299.813c4.686-4.686 4.686-12.284.0-16.971l-28.284-28.284c-4.686-4.686-12.284-4.686-16.97.0z"/></symbol><symbol id="icon--hashtag" viewBox="0 0 448 512"><path fill="currentcolor" d="M440.667 182.109l7.143-40c1.313-7.355-4.342-14.109-11.813-14.109h-74.81l14.623-81.891C377.123 38.754 371.468 32 363.997 32h-40.632a12 12 0 00-11.813 9.891L296.175 128H197.54l14.623-81.891C213.477 38.754 207.822 32 200.35 32h-40.632a12 12 0 00-11.813 9.891L132.528 128H53.432a12 12 0 00-11.813 9.891l-7.143 40C33.163 185.246 38.818 192 46.289 192h74.81L98.242 320H19.146a12 12 0 00-11.813 9.891l-7.143 40C-1.123 377.246 4.532 384 12.003 384h74.81L72.19 465.891C70.877 473.246 76.532 480 84.003 480h40.632a12 12 0 0011.813-9.891L151.826 384h98.634l-14.623 81.891C234.523 473.246 240.178 480 247.65 480h40.632a12 12 0 0011.813-9.891L315.472 384h79.096a12 12 0 0011.813-9.891l7.143-40c1.313-7.355-4.342-14.109-11.813-14.109h-74.81l22.857-128h79.096a12 12 0 0011.813-9.891zM261.889 320h-98.634l22.857-128h98.634l-22.857 128z"/></symbol><symbol id="icon--filter" viewBox="0 0 16 16"><defs><rect id="path-1" x="0" y="-355271368e-23" width="320" height="44"/><filter x="-.2%" y="-1.1%" width="100.3%" height="102.3%" filterUnits="objectBoundingBox" id="filter-2"><feOffset dx="0" dy="-1" in="SourceAlpha" result="shadowOffsetInner1"/><feComposite in="shadowOffsetInner1" in2="SourceAlpha" operator="arithmetic" k2="-1" k3="1" result="shadowInnerInner1"/><feColorMatrix values="0 0 0 0 0.196078431 0 0 0 0 0.211764706 0 0 0 0 0.231372549 0 0 0 0.1 0" type="matrix" in="shadowInnerInner1"/></filter></defs><g id="Responsive-Layouts---MOBILE" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="linode-docs-home-mobile-search-results-3" transform="translate(-14.000000, -134.000000)"><g id="filter-bar-collapsed" transform="translate(0.000000, 120.000000)"><g id="Rectangle"><use fill="#fff" fill-rule="evenodd" xlink:href="#path-1"/><use fill="currentcolor" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"/></g><path d="M23 20.9999875v7.5l-2-1.5v-6l-5.5-5.5h13l-5.5 5.5zm5.4985-7H15.5017812c-1.3324375.0-2.0047187 1.6165937-1.0606562 2.5606562L19.5000011 21.6213v5.3786875C19.5000011 27.4721125 19.7222812 27.9167062 20.1 28.2499875l2 1.4708125c.9772812.6829687 2.4000011.0480625000000003 2.4000011-1.2V21.6213l5.0591551-5.0606563C30.5013125 15.6184875 29.8335937 13.9999875 28.4985 13.9999875z" id="filter-icon" fill="currentcolor"/></g></g></g></symbol><symbol id="icon--explore-docs" viewBox="0 0 14 12"><defs><rect id="path-1" x="0" y="0" width="320" height="44"/><filter x="-.2%" y="-1.1%" width="100.3%" height="102.3%" filterUnits="objectBoundingBox" id="filter-2"><feOffset dx="0" dy="-1" in="SourceAlpha" result="shadowOffsetInner1"/><feComposite in="shadowOffsetInner1" in2="SourceAlpha" operator="arithmetic" k2="-1" k3="1" result="shadowInnerInner1"/><feColorMatrix values="0 0 0 0 0.196078431 0 0 0 0 0.211764706 0 0 0 0 0.231372549 0 0 0 0.1 0" type="matrix" in="shadowInnerInner1"/></filter></defs><g id="Responsive-Layouts---MOBILE" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="linode-docs-home-mobile-search-results-3" transform="translate(-14.000000, -92.000000)"><g id="explore-+-search-top-level-mobile" transform="translate(0.000000, 76.000000)"><g id="Search-/-explore-top-level"><g id="Rectangle"><use fill="#fff" fill-rule="evenodd" xlink:href="#path-1"/><use fill="#000" fill-opacity="1" filter="url(#filter-2)" xlink:href="#path-1"/></g><path d="M24 26v2H14V26H24zm4 0v2H26V26h2zm-4-5v2H14V21H24zm4 0v2H26V21h2zm-4-5v2H14V16H24zm4 0v2H26V16h2z" id="Combined-Shape" fill="#32363b"/></g></g></g></g></symbol><symbol id="icon--exclamation-triangle" viewBox="0 0 576 512"><path fill="currentcolor" d="M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937.0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154.0l239.94 416.028zM288 354c-25.405.0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346 7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373.0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884.0-12.356 5.78-11.981 12.654z"/></symbol><symbol id="icon--todo" viewBox="0 0 512 512"><path fill="currentcolor" d="M256 64C132.26 64 32 164.29 32 288a222.69 222.69.0 0044.75 134l-40.1 40.09a16 16 0 000 22.63l22.63 22.62a16 16 0 0022.62.0l40.1-40.12a222.82 222.82.0 00268 0l40.1 40.09a16 16 0 0022.63.0l22.62-22.62a16 16 0 000-22.63L435.21 422A222.7 222.7.0 00480 288c0-123.71-100.3-224-224-224zm0 4e2a176 176 0 11176-176A176 176 0 01256 464zM96 0A96 96 0 000 96a94.81 94.81.0 0015.3 51.26L161.2 25.68A95.63 95.63.0 0096 0zm184 292.47V168a8 8 0 00-8-8h-32a8 8 0 00-8 8v132.16a32 32 0 0012 25l64.54 51.57a8.58 8.58.0 005.87 1.72 8 8 0 005.35-2.95l20-25a8 8 0 00-1.25-11.27zM416 0a95.66 95.66.0 00-65.18 25.66l145.89 121.57A94.85 94.85.0 00512 96 96 96 0 00416 0z"/></symbol></svg><svg xmlns="http://www.w3.org/2000/svg" style="display:none"><symbol id="icon--facebook" viewBox="0 0 496 512"><path fill="currentcolor" d="M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14.0 55.52 4.84 55.52 4.84v61h-31.28c-30.8.0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z"/></symbol><symbol id="icon--hackernews" viewBox="0 0 496 512"><path fill="currentcolor" d="M0 32v448h448V32H0zm21.2 197.2H21c.1-.1.2-.3.3-.4.0.1.0.3-.1.4zm218 53.9V384h-31.4V281.3L128 128h37.3c52.5 98.3 49.2 101.2 59.3 125.6 12.3-27 5.8-24.4 60.6-125.6H320l-80.8 155.1z"/></symbol></svg></div><header id=linode-menus class=z-20 x-ignore data-turbo-permanent><div class=c-site-header><div class="o-layout__row c-site-header__topbar"><div class=o-layout__colset><div class=o-layout__col><div class="o-layout__module c-notification"><a href=# class=c-notification__link target=_self><span class=c-notification__tag></span><span class=c-notification__message></span></a></div></div><div class=o-layout__col><div class="o-layout__module c-utility-nav"><nav class="o-menu o-menu--flex"><ul class=o-menu__list><li class="o-menu__item o-menu__item--search"><a class=o-menu__link href=https://www.linode.com/search/><span class=o-menu__title>Search</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/partners/><span class=o-menu__title>Partners</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/docs/><span class=o-menu__title>Docs</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/support/><span class=o-menu__title>Support</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/contact/><span class=o-menu__title>Sales</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/careers/><span class=o-menu__title>Careers</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://login.linode.com/login><span class=o-menu__title>Log In</span></a></li></ul></nav></div></div><div class=o-layout__col><div class="o-layout__module c-weglot-nav"><div id=weglot_here></div></div></div></div></div><div class="o-layout__row c-site-header__primary"><div class=o-layout__colset><div class=o-layout__col><div class="o-layout__module c-identity"><a class=c-identity__link href=https://www.linode.com target=_self itemprop=url><img width=160 height=55 alt="Linode - Akamai Cloud Computing Logo" class=c-identity__image src="https://www.linode.com/wp-content/themes/linode-website-theme/images/linode-akamai-logo.svg?ver=1661285658" itemprop=image data-no-lazy=1></a></div></div><div class=o-layout__col><div class="o-layout__module c-main-menu"><nav class="o-menu o-menu--flex"><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=#sub-menu--why-linode data-sub-menu=#sub-menu--why-linode><span class=o-menu__title>Why Linode</span></a></li><li class=o-menu__item><a class=o-menu__link href=#sub-menu--products data-sub-menu=#sub-menu--products><span class=o-menu__title>Products</span></a></li><li class=o-menu__item><a class=o-menu__link href=#sub-menu--solutions data-sub-menu=#sub-menu--solutions><span class=o-menu__title>Solutions</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/marketplace/><span class=o-menu__title>Marketplace</span></a></li><li class=o-menu__item><a class=o-menu__link href=#sub-menu--pricing data-sub-menu=#sub-menu--pricing><span class=o-menu__title>Pricing</span></a></li><li class=o-menu__item><a class=o-menu__link href=#sub-menu--community data-sub-menu=#sub-menu--community><span class=o-menu__title>Community</span></a></li><li class="o-menu__item o-menu__item--sign-up"><a class=o-menu__link href=https://login.linode.com/signup data-promo-override><span class=o-menu__title>Sign Up</span></a></li><li class="o-menu__item o-menu__item--mobile"><a class=o-menu__link href=#sub-menu--mobile data-sub-menu=#sub-menu--mobile><span class=o-menu__title>Mobile</span></a></li></ul></nav></div></div></div></div><div class="o-layout__row c-sub-menu c-sub-menu--mobile" id=sub-menu--mobile><div class=o-layout__colset><div class=o-layout__col><div class=o-layout__module><nav class="o-menu o-menu--featured"><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/choosing-linode/><span class=o-menu__title>Why Linode</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/><span class=o-menu__title>Products</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/solutions/><span class=o-menu__title>Solutions</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/marketplace/><span class=o-menu__title>Marketplace</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/pricing/><span class=o-menu__title>Pricing List</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/cloud-computing-community/><span class=o-menu__title>Community</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/about/><span class=o-menu__title>About Us</span></a></li></ul></nav></div><div class=o-layout__module><nav class="o-menu o-menu--2col"><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/docs/><span class=o-menu__title>Docs</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/partners/><span class=o-menu__title>Partners</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/support/><span class=o-menu__title>Support</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/careers/><span class=o-menu__title>Careers</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/contact/><span class=o-menu__title>Contact Sales</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://login.linode.com/login><span class=o-menu__title>Log In</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/press/><span class=o-menu__title>Press Center</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/legal/><span class=o-menu__title>Legal Center</span></a></li></ul></nav></div><div class=o-layout__module><ul class=o-menu__list><li class="o-menu__item o-menu__item--sign-up"><a class=o-menu__link href=https://login.linode.com/signup><span class=o-menu__title>Sign Up</span></a></li></ul></div><div class=o-layout__module><form role=search method=get action=https://www.linode.com class=c-search><label for=s>Search</label>
<input type=search placeholder="Search Linode" name=s>
<input type=submit value=Search></form></div></div></div></div><div class="o-layout__row c-sub-menu c-sub-menu--why-linode" id=sub-menu--why-linode><div class=o-layout__colset><div class=o-layout__col><div class=o-layout__module><div data-featured=why_linode></div></div></div><div class=o-layout__col><div class=o-layout__module><h6>Why Linode</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/choosing-linode/><span class=o-menu__title>Choosing Linode</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/support-experience/><span class=o-menu__title>Support Experience</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/predictable-pricing/><span class=o-menu__title>Predictable Pricing</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/cloud-simplified/><span class=o-menu__title>Cloud Simplified</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/free-bundled-services/><span class=o-menu__title>Free Bundled Services</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/global-infrastructure/><span class=o-menu__title>Global Infrastructure</span></a></li></ul></nav></div></div><div class=o-layout__col><div class=o-layout__module><h6>Get to Know Us Better</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/about/><span class=o-menu__title>About Linode</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/series/craft-of-code/><span class=o-menu__title>Customer Stories</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-business/><span class=o-menu__title>Linode for Business</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/alternative-cloud-provider/><span class=o-menu__title>Alternative Cloud</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/compare/><span class=o-menu__title>Linode vs. Competitors</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/open-cloud/><span class=o-menu__title>Open Cloud</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/what-is-cloud-computing/><span class=o-menu__title>What is Cloud Computing?</span></a></li></ul></nav></div></div></div></div><div class="o-layout__row c-sub-menu c-sub-menu--products" id=sub-menu--products><div class=o-layout__colset><div class=o-layout__col><div class=o-layout__module><div data-featured=products></div></div><div class="o-layout__module c-sub-menu__view_all"><a href=/products/ class=o-link--arrow>View All Products</a></div></div><div class=o-layout__col><div class=o-layout__module><h6>Compute</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/dedicated-cpu/><span class=o-menu__title>Dedicated CPU</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/shared/><span class=o-menu__title>Shared CPU</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/high-memory/><span class=o-menu__title>High Memory</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/gpu/><span class=o-menu__title>GPU</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/bare-metal/><span class=o-menu__title>Bare Metal</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/kubernetes/><span class=o-menu__title>Kubernetes</span></a></li></ul></nav></div><div class=o-layout__module><h6>Storage</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/block-storage/><span class=o-menu__title>Block Storage</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/object-storage/><span class=o-menu__title>Object Storage</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/backups/><span class=o-menu__title>Backups</span></a></li></ul></nav></div><div class=o-layout__module><h6>Databases</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/databases/><span class=o-menu__title>Managed Databases</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/mongodb/><span class=o-menu__title>MongoDB</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/mysql/><span class=o-menu__title>MySQL</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/postgresql/><span class=o-menu__title>PostgreSQL</span></a></li></ul></nav></div><div class=o-layout__module><h6>Services</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/managed/><span class=o-menu__title>Managed</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/pro-services/><span class=o-menu__title>Professional Services</span></a></li></ul></nav></div></div><div class=o-layout__col><div class=o-layout__module><h6>Networking</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/cloud-firewall/><span class=o-menu__title>Cloud Firewall</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/ddos/><span class=o-menu__title>DDoS Protection</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/dns-manager/><span class=o-menu__title>DNS Manager</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/nodebalancers/><span class=o-menu__title>NodeBalancers</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/vlan/><span class=o-menu__title>VLAN</span></a></li></ul></nav></div><div class=o-layout__module><h6>Developer Tools</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/cloud-manager/><span class=o-menu__title>Cloud Manager</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/linode-api/><span class=o-menu__title>API</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/cli/><span class=o-menu__title>CLI</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/linode-terraform-provider/><span class=o-menu__title>Terraform Provider</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/linode-ansible-collection/><span class=o-menu__title>Ansible Collection</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/images/><span class=o-menu__title>Images</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/integrations/><span class=o-menu__title>Integrations</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/stackscripts/><span class=o-menu__title>StackScripts</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/monitoring/><span class=o-menu__title>Monitoring</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/users-permissions/><span class=o-menu__title>Users & Permissions</span></a></li></ul></nav></div></div></div></div><div class="o-layout__row c-sub-menu c-sub-menu--2col c-sub-menu--solutions" id=sub-menu--solutions><div class=o-layout__colset><div class=o-layout__col><div class=o-layout__module><div data-featured=solutions></div></div><div class="o-layout__module c-sub-menu__view_all"><a href=/solutions/ class=o-link--arrow>View All Solutions</a></div></div><div class=o-layout__col><div class=o-layout__module><h6>Solutions</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-digital-agencies/><span class=o-menu__title>Digital Agencies</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/elearning-solutions/><span class=o-menu__title>eLearning</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-higher-education/><span class=o-menu__title>Higher Education</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/machine-learning-solutions/><span class=o-menu__title>Machine Learning</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/mgd-hosting-solutions/><span class=o-menu__title>Managed Hosting</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/multicloud/><span class=o-menu__title>Multicloud</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-saas/><span class=o-menu__title>SaaS</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/security-solutions/><span class=o-menu__title>Security Solutions</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/video-streaming-solutions/><span class=o-menu__title>Video Streaming</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-website-hosting/><span class=o-menu__title>Website Hosting</span></a></li></ul></nav></div></div></div></div><div class="o-layout__row c-sub-menu c-sub-menu--2col c-sub-menu--pricing" id=sub-menu--pricing><div class=o-layout__colset><div class=o-layout__col><div class=o-layout__module><div data-featured=pricing></div></div></div><div class=o-layout__col><div class=o-layout__module><h6>Pricing</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/pricing/><span class=o-menu__title>Pricing List</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/estimator/><span class=o-menu__title>Cloud Estimator</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/cloud-pricing-calculator/><span class=o-menu__title>Cloud Pricing Calculator</span></a></li></ul></nav></div></div></div></div><div class="o-layout__row c-sub-menu c-sub-menu--community" id=sub-menu--community><div class=o-layout__colset><div class=o-layout__col><div class=o-layout__module><div data-featured=community></div></div></div><div class=o-layout__col><div class=o-layout__module><h6>Community</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/cloud-computing-community/><span class=o-menu__title>Overview</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/community/questions/><span class=o-menu__title>Q&A</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/developers/><span class=o-menu__title>Developer Portal</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/blog/><span class=o-menu__title>Blog</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/green-light/><span class=o-menu__title>Beta Program</span></a></li></ul></nav></div></div><div class=o-layout__col><div class=o-layout__module><h6>Engage With Us</h6><nav class=o-menu><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/content/><span class=o-menu__title>Content Resources</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/events/><span class=o-menu__title>Events</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/hackathons/><span class=o-menu__title>Hackathons</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/newsletter/><span class=o-menu__title>Newsletter</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/press/><span class=o-menu__title>Press Center</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/lp/affiliate-program/><span class=o-menu__title>Affiliate Program</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/referral-program/><span class=o-menu__title>Customer Referral Program</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-startups/><span class=o-menu__title>Startup Program</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://linodestore.com/products><span class=o-menu__title>Swag Store</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/promotions/><span class=o-menu__title>Promotional Offers</span></a></li></ul></nav></div></div></div></div></div></header><nav id=navbar class="bg-white w-full box-border sticky top-0 z-10 border-b-gray"><div id=navbar__icons--left class="h-full flex justify-start"><div class="navbar__logo hide-if-topbar-is-not-pinned md:pr-2 h-full flex items-center justify-center" x-data=lncNav x-effect=onEffect() @scroll.window=onScroll() @turbo:before-render.window=onTurboBeforeRender(event) @turbo:render.window=onTurboRender() @popstate.window=onPopState($event) id=nav-controller data-turbo-permanent><svg><use href="#icon--logo-small"/></svg></div><div class="navbar__explorer-toggle h-full"><div x-data class="flex items-center justify-center h-full w-full explorer-toggle__header" @click.stop="$store.nav.open.explorer = !$store.nav.open.explorer"><div class="hide-if-topbar-is-pinned md:hidden h-full"><button type=button :aria-label="$store.nav.open.explorer ? 'close' : 'open'" class="btn-icon flex items-center justify-between h-full" data-testid=open-explorer><svg class="md:hidden text-titlecolor" style="width:1rem;height:.85rem"><use :href="$store.nav.open.explorer ? '#icon--times' : '#icon--explore-docs'"/></svg></button></div><div class="hide-if-topbar-is-not-pinned md:hidden"><button type=button :aria-label="$store.nav.open.explorer ? 'close' : 'open'" class="btn-icon h-full"><svg style="width:1rem;height:.85rem" :class="{ 'text-titlecolor' : !$store.nav.open.explorer, 'text-brand': $store.nav.open.explorer }"><use href="#icon--explore-docs"/></svg></button></div><div class="hidden md:flex items-center justify-between h-full w-full"><div class="font-bold uppercase text-titlecolor hide-on-lang-nav" style=font-size:15px;letter-spacing:.5px>Explore docs</div><template x-if=!$store.nav.open.explorer><button aria-label=open type=button class="btn-icon hidden md:block" data-testid=explorer-open data-testid=open-explorer><svg class="text-titlecolor w-6 h-5"><use href="#icon--arrow-down"/></svg></button></template><template x-if=$store.nav.open.explorer><button aria-label=close type=button class="btn-icon hidden md:block" data-testid=explorer-close><svg class="text-titlecolor w-6 h-5"><use href="#icon--arrow-up"/></svg></button></template></div></div></div></div><div id=navbar__search-input class="pl-4 flex items-stretch h-full w-full"><div id=search-input class="flex justify-between items-stretch text-textcolor w-full" x-data=lncSearchInput() @click=click(); data-turbo-permanent><span class=self-center><svg class="w-4 h-4 hover:text-brand" :class="{ 'text-brand': focus, 'text-textcolor': !focus }"><use href="#icon--search"/></svg></span><input type=text autocomplete=off spellcheck=false aria-label=search x-model=$store.search.query.lndq placeholder="Search Linode" class="search-input w-full pl-3 focus:outline-none focus:ring-transparent focus:border-red-300 border-none" data-testid=search-input @focusin=setFocus(true); @focusout=setFocus(false);>
<button aria-label="Close search" class="mr-4 hover:text-brand" :class="{ 'hidden': !$store.nav.searchResults.open }" @click.stop=close() data-testid=input-close><svg class="h-5 w-5"><use href="#icon--times"/></svg></button></div></div><div id=navbar__breadcrumbs class="h-full w-full pl-4 border-l-gray overflow-x-auto show-if-no-js"><div class="h-full w-auto flex items-center"><nav class="breadcrumbs breadcrumbs-static text-sm" x-data><ol class="list-none pb-0 inline-flex -mt-1"><li class="flex items-center mt-1"><a class="max-w-32 truncate" href=/docs/ @click=$store.search.clearQuery()>Docs Home</a></li><li class="flex items-center mt-1"><svg class="mx-3 text-basicgray" style="width:5px;height:13px"><use href="#icon--arrow-right"/></svg><a href=https://www.linode.com/docs/guides/ class=truncate>Guides</a></li><li class="flex items-center mt-1"><svg class="mx-3 text-basicgray" style="width:5px;height:13px"><use href="#icon--arrow-right"/></svg><a href=https://www.linode.com/docs/guides/security/ class=truncate>Security, Upgrades & Backups</a></li><li class="flex items-center mt-1"><svg class="mx-3 text-basicgray" style="width:5px;height:13px"><use href="#icon--arrow-right"/></svg><a href=https://www.linode.com/docs/guides/security/authentication/ class=truncate>Authentication</a></li><li class="flex items-center mt-1"></li></ol></nav></div></div><div id=navbar__toc class="hide-if-is-not-toc hide-if-search-panel-open h-full"><div id=toc-component class="bg-white z-10 w-full h-full border-l-gray--md" x-data=lncToc() @scroll.window.debounce.10ms=onScroll() @hashchange.window=onHashchange();><div x-show=enabled class="h-full relative" @click.away=closeIfMobile() data-testid=toc><div class="flex flex-col"><ul @click=toggleOpen()><li class="cursor-pointer navbar__row bg-white"><div class="hide-if-topbar-is-pinned md:hidden h-full pr-container"><div class="flex items-center h-full justify-end md:hidden"><button aria-label=open type=button class=btn-icon><svg class="fill-current w-5 h-5" :class="{'text-brand': $store.nav.open.toc, 'text-titlecolor': !$store.nav.open.toc}"><use href="#icon--book"/></svg></button></div></div><div class="show-if-topbar-is-pinned md:block h-full w-full"><div class="flex items-center justify-between pl-4" style="height:calc(100% - 4px)"><template x-if="!showHeading || activeHeading.title === ''"><div class="font-semibold text-titlecolor uppercase text-xs md:text-sm tracking-wide md:tracking-widest">Contents</div></template><template x-if="showHeading && activeHeading.title !== ''"><div class="font-semibold text-titlecolor text-xs tracking-wide md:tracking-widest md:text-sm truncate w-48" x-html=activeHeading.title></div></template><button :aria-label="open ? 'close' : 'open'" type=button class=btn-icon data-testid=toc-open>
<template x-if=!$store.nav.open.toc><div class="pl-2 pr-7"><svg class="text-titlecolor h-4 w-4"><use href="#icon--arrow-down"/></svg></div></template><template x-if=$store.nav.open.toc><div class="pl-2 pr-7"><svg class="text-titlecolor h-4 w-4"><use href="#icon--arrow-up"/></svg></div></template></button></div><div style=background-color:rgba(2,177,89,.2) :class="{ 'invisible': !showHeading }"><div class=bg-brand :style="'height:4px;width:' + activeHeading.progress + '%'"></div></div></div></li></ul></div><nav class="toc bg-white border-l-gray overflow-y-scroll absolute pt-2 pb-4 z-50" class="{ 'hidden w-0': !$store.nav.open.toc }" x-show=$store.nav.open.toc x-transition:enter="transition-transform transition-opacity ease-out duration-500 sm:duration-700" x-transition:enter-start="opacity-0 transform mobile:translate-x-8 sm:-translate-y-4" x-transition:enter-end="opacity-100 transform mobile:translate-x-0 sm:translate-y-0"><div class="flex justify-between items-center md:hidden px-container mt-4 mb-2"><h3 class="letter-spacing: 0.07px;">CONTENTS</h3><button type=button class=btn-icon @click=close()><svg class="fill-current h-5 w-5"><use href="#icon--times"/></svg></button></div><div class=toc__inner></div></nav></div><template x-ref=headerCloseButton><button type=button class="btn-icon text-basicgray" @click="open = !open; $event.stopPropagation();">
<template x-if=open><svg class="fill-current h-4 w-4"><use href="#icon--arrow-up"/></svg></template><template x-if=!open><svg class="fill-current h-4 w-4"><use href="#icon--arrow-down"/></svg></template></button></template></div></div></nav><nav id=explorer class="sticky overflow-y-scroll z-0 top--navbar-row border-r-gray"><svg xmlns="http://www.w3.org/2000/svg" style="display:none"><symbol id="icon-explorer--products" viewBox="0 0 11.26 13"><path fill="currentcolor" d="m0 3.25v6.5L5.63 13l5.63-3.25v-6.5L5.63.0z"/></symbol><symbol id="icon-explorer--guides" viewBox="0 0 11.49 13"><path d="m0 0h11.49v13H0z" fill="currentcolor"/><g fill="none" stroke="#fff" stroke-miterlimit="10" stroke-width=".96"><path d="m2.34 3.37h6.81"/><path d="m2.34 6.5h6.81"/><path d="m2.34 9.63h6.81"/></g></symbol><symbol id="icon-explorer--api" viewBox="0 0 13 13"><path d="m13 7.62V5.38h-1.56A4.65 4.65.0 0010.89 4l-.1-.17 1.1-1.1-1.59-1.61-1.1 1.11a5.18 5.18.0 00-1.58-.65V0H5.38v1.56a5.18 5.18.0 00-1.58.65L2.7 1.1 1.12 2.7l1.11 1.1a1.51 1.51.0 00-.1.17 4.65 4.65.0 00-.55 1.41h-1.58v2.24h1.56a5.18 5.18.0 00.65 1.58L1.1 10.3l1.58 1.59 1.11-1.1a5 5 0 001.57.65V13H7.6v-1.56a5.07 5.07.0 001.58-.65l1.11 1.1 1.59-1.59-1.11-1.1a5.18 5.18.0 00.65-1.58z" fill="currentcolor"/><path d="m8.92 5.34a1.74 1.74.0 00-.1-.19A2.72 2.72.0 007.66 4.08 1.09 1.09.0 007.41 4a2.91 2.91.0 00-1.8.0c-.1.0-.17.08-.25.1A2.73 2.73.0 004.2 5.15a1.74 1.74.0 01-.1.19 1 1 0 00-.1.25 2.77 2.77.0 000 1.8 2.3 2.3.0 00.09.25A2.66 2.66.0 005.36 8.9a1.63 1.63.0 00.25.1 2.77 2.77.0 00.89.15A2.64 2.64.0 007.39 9l.25-.1A2.66 2.66.0 008.9 7.64.75.75.0 009 7.39a2.78 2.78.0 000-1.8.56.56.0 00-.08-.25z" fill="#fff"/></symbol><symbol id="icon-explorer--blog" viewBox="0 0 12.97 13"><g fill="currentcolor"><path d="m11.86 13a1.29 1.29.0 01-.56-.22 1.07 1.07.0 01-.42-.93 10.28 10.28.0 00-.27-2.21A9.71 9.71.0 008.79 5.89 9.78 9.78.0 003.46 2.4a9.6 9.6.0 00-2.33-.3 1.07 1.07.0 01-.89-.4 1 1 0 01-.15-1 1 1 0 01.82-.7h.09.35.12c.53.07 1.06.1 1.59.18a11.4 11.4.0 014.21 1.59 11.67 11.67.0 013.9 3.88 11.73 11.73.0 011.73 5c0 .28.0.55.07.83v.61a1 1 0 01-.43.72A3.11 3.11.0 0112 13z"/><path d="m8.13 13a1 1 0 00.92-1.05 7.77 7.77.0 00-.27-2 7.87 7.87.0 00-2.3-3.84A7.87 7.87.0 001.07 3.88a1 1 0 00-1 1.35 1.07 1.07.0 001 .74 7 7 0 011.29.16 5.87 5.87.0 014.4 4.15A6.42 6.42.0 017 12a1 1 0 00.36.72A1.2 1.2.0 008 13z"/><path d="m2.11 8.78a2.1 2.1.0 102.1 2.09 2.1 2.1.0 00-2.1-2.09z"/></g></symbol><symbol id="icon-explorer--resources" viewBox="0 0 9.48 13"><path d="m0 0v13l4.74-4.74L9.48 13V0z" fill="currentcolor"/></symbol><symbol id="icon-explorer--qa" viewBox="0 0 13 13"><path d="m11.1 11.1A6.51 6.51.0 101 10l-.7 2.7L3 12a6.51 6.51.0 008.1-.9z" fill="currentcolor"/></symbol><symbol id="icon-explorer--marketplace" viewBox="0 0 13 16.54"><path d="m0 5.96h13v10.58H0z" fill="currentcolor"/><path d="m3.65 4.31A3.58 3.58.0 014.91 1 2.51 2.51.0 018 1a3.59 3.59.0 011.27 3.31" fill="none" stroke="#abacb1" stroke-miterlimit="10" stroke-width=".93"/><path d="m3.83 9.77v3.09L6.5 14.4l2.67-1.54V9.77L6.5 8.23z" fill="#fff"/></symbol><symbol id="icon-explorer--reference-architecture" viewBox="0 0 20 16.87"><path d="M.26.0v16.87h19.48L.26.0zM3.01 6.02l9.35 8.1H3.01V6.02z" fill="currentcolor"/></symbol></svg><div data-turbo-permanent id=explorer-component class="explorer box-border" x-data=lncSearchExplorer() @click.away=closeIfMobile() @turbo:before-visit.document=onTurbolinksBeforeVisit($event.detail); @turbo:before-render.document=onTurbolinksBeforeRender($event.detail) @turbo:render.document=onTurbolinksRender($event.detail); data-turbo-permanent><nav class="h-full block top-0 overflow-x-hidden" x-show=isOpen() x-bind=transitions()><div x-show=$store.search.query.isFiltered() class="pl-5 md:pl-6 h-8 bg-black flex items-center text-xs font-semibold" data-testid=search-filter-status x-cloak><div class="bg-brand rounded-full h-1 w-1 mr-2"></div><div class=text-white>Filtered by search term</div></div><ul class="search-explorer-root bg-backgroundcolor" x-ref=explorer></ul></nav><template x-ref=templateLoopRoot><template x-if=open><template x-for="node in data.rootNode.sections" :key=node.key></template></template></template><template x-ref=templateLoopNested><template x-if=node.open><template x-for="node in node.children()" :key=node.key></template></template></template><template x-ref=templateTree><li class=explorer__node x-bind:class="{
'explorer__node--after-first': node.level > 1,
'pl-6': node.level === 2
}" x-transition.200ms x-show=!node.hidden :data-testid="`node-${ node.key }`" :id=node.id()><div class=explorer__node__inner :data-testid="`li-${ node.level }`"><div x-bind:class="{
'explorer__row--first pl-container bg-white border-b-gray text-gray-900' : (node.level===1),
'explorer__row--after-first text-gray-700' : (node.level > 1),
}" class="flex items-center justify-between pr-6"><div class="flex content-end flex-auto"><div x-show="node.level === 1" class="text-basicgray flex items-center"><svg x-bind:class="{ 'text-gray-300': node.isDisabled(), 'text-brand': node.open }" class="fill-current block w-5" style="height:16.87px"><use x-bind:href="node.icon"/></svg></div><template x-if=!node.isPage()><a @click=node.onClick($event) x-bind:class="{
'text-brand': node.level === 1 && node.open,
'text-titlecolor': !node.isDisabled() && node.level === 1 && !node.open,
'pl-4': node.level === 1,
'py-2': node.level === 2,
'py-1-5': node.level >= 3,
'text-textcolor': (node.level > 1),
'text-brand': node.open,
'font-semibold': (node.level === 1 || ( node.level > 1 && node.open )),
'text-sm': (node.level === 2),
'text-xs': (node.level > 2),
'text-gray-300': node.isDisabled()
}" class="block relative cursor-pointer pr-3 no-underline capitalize z-10 flex-auto" @click=node.toggleOpen() data-testid=node-link><span :class="{
'after-second': node.level > 2
}" class="bg-container h-full"></span><span x-html=node.title></span></a></template><template x-if=node.isPage()><a :href=node.href x-bind:target="node.href.startsWith('http') ? '_blank' : ''" @click=node.onClick($event); x-html=node.title :class="{
'text-textcolor': !node.active,
'text-brand font-semibold is-active-page': node.active,
}" class="py-1-5 page-link mr-2 text-xs capitalize cursor-pointer no-underline active:text-brand hover:text-gray-900 focus:outline-none"></a></template></div><div class="flex items-center h-full"><template x-if=!node.isPage()><span x-bind:class="{
'text-brand': !node.isDisabled() && $store.search.query.isFiltered(),
'text-gray-100': node.isDisabled(),
'text-basicgray': !node.isDisabled() && !$store.search.query.isFiltered() }" x-html=node.count class="text-xs font-semibold pr-6" data-testid=node-count></span></template><template x-if="!node.isPage() && (node.isDisabled() || node.isLeaf())"><div class=w-3></div></template><template x-if=!node.isPage()><div class=z-10 x-show="!data.disabled && !node.isLeaf()"><button type=button name=open class="btn-icon h-full flex items-center justify-center" x-bind:aria-label="node.open ? 'close' : 'open'" x-bind:disabled=node.isDisabled() x-bind:class="{ 'text-gray-200': node.isDisabled(), 'text-textcolor': !node.isDisabled() }" @click.stop=node.toggleOpen() @mouseover.once.stop=node.loadPages() :data-testid="`${ node.open ? 'close' : 'open' }-${ node.level }`"><svg class="w-4 h-3 titlecolor" x-show="!node.open"><use href="#icon--arrow-down"/></svg><svg class="w-4 h-3 titlecolor" x-show="node.open"><use href="#icon--arrow-up"/></svg></button></div></template></div></div><ul class="node-tree h-full" x-transition.in.opacity x-show=node.open x-bind:class="{
'py-2': node.level === 1,
'py-1': node.level > 1,
'border-l-2 pl-3': node.level > 1,
}"></ul></div></li></template><template x-ref=searchNodeTemplate></template></div></nav><main class="main bg-white h-full min-h-screen overflow-hidden hide-on-lang-nav"><div class=main__inner><section class=w-full><div class="search-panel w-full h-full" x-data=lncSearchFilters() id=search-filters data-turbo-permanent><template x-if=$store.nav.searchResults.open><div class="search-panel__results container"><div class="search-panel__breadcrumbs mb-6 flex justify-between items-center"><nav class="breadcrumbs breadcrumbs-static text-sm" x-data><ol class="list-none pb-0 inline-flex flex-wrap -mt-1"><li class="flex items-center mt-1"><a class="max-w-32 truncate" href=/docs/ @click=$store.search.clearQuery()>Docs Home</a></li><li class="flex items-center mt-1"></li></ol></nav><svg xmlns="http://www.w3.org/2000/svg" style="display:none"><symbol id="icon-search--list-view" viewBox="0 0 16 14"><path d="M16 12v2H0v-2h16zm0-4v2H0V8h16zm0-4v2H0V4h16zm0-4v2H0V0h16z" fill="currentcolor" fill-rule="evenodd"/></symbol><symbol id="icon-search--detail-view" viewBox="0 0 16 14"><path d="M16 12v2H8v-2h8zM6 8v6H0V8h6zm10 0v2H8V8h8zm0-4v2H8V4h8zM6 0v6H0V0h6zm10 0v2H8V0h8z" fill="currentcolor" fill-rule="evenodd"/></symbol><symbol id="icon-search--grid-view" viewBox="0 0 16 14"><path d="M7 8v6H0V8h7zm9 0v6H9V8h7zM7 0v6H0V0h7zm9 0v6H9V0h7z" fill="currentcolor" fill-rule="evenodd"/></symbol></svg><span class="relative z-0 inline-flex rounded-md"><button @click="view = 1" type=button :class="{ 'text-brand' : view === 1, 'text-basicgray' : view !== 1 }" class="-ml-px relative inline-flex items-center px-2 py-2 rounded-l-md border-l-2 border-t-2 border-b-2 border-divider bg-white text-sm font-medium hover:bg-gray-200 focus:z-10 focus:outline-none" data-testid=select-view-1>
<span class=sr-only>List</span><svg class="h-5 w-4"><use href="#icon-search--list-view"/></svg></button>
<button @click="view = 2" type=button :class="{ 'text-brand' : view === 2, 'text-basicgray' : view !== 2 }" class="-ml-px relative inline-flex items-center px-2 py-2 border-2 border-t-2 border-b-2 border-divider bg-white text-sm font-medium hover:bg-gray-200 focus:z-10 focus:outline-none" data-testid=select-view-2>
<span class=sr-only>Sections</span><svg class="h-5 w-4"><use href="#icon-search--detail-view"/></svg></button>
<button @click="view = 3" type=button :class="{ 'text-brand' : view === 3, 'text-basicgray' : view !== 3 }" class="-ml-px relative inline-flex items-center px-2 py-2 rounded-r-md border-r-2 border-t-2 border-b-2 border-divider bg-white text-sm font-medium hover:bg-gray-200 focus:z-10 focus:outline-none" data-testid=select-view-3>
<span class=sr-only>Tiles</span><svg class="h-5 w-4"><use href="#icon-search--grid-view"/></svg></button></span></div><template x-if=$store.search.results.main.loaded><div><h1 class="block font-bold leading-tight tracking-tight text-4xl text-titlecolor w-full mb-4">Search Results</h1><p class=text-2xl x-show=$store.search.query.lndq><span x-show=$store.search.query.lndq x-text=$store.search.results.main.result.stats.totalNbHits data-testid=search-nb-hits></span>&nbspresults matching&nbsp<span class=font-bold x-text="`${'“' + $store.search.query.lndq + '”'}`"></span></p><p class=text-2xl x-show=!$store.search.query.lndq><span x-text=$store.search.results.main.result.stats.totalNbHits></span><span>&nbspresults</span></p></div></template><template x-if="$store.search.results.main.loaded && $store.search.results.main.result.stats.totalNbHits === 0"><div class="flex flex-col items-center space-y-2"><h2 class=text-3xl>No Results</h2><p x-text='`There are no results for "${$store.search.query.lndq}". Check your spelling or try clearing any filters.`'></p></div></template><template x-if="view === 1 && $store.search.results.main.loaded"><div class="flex flex-col space-y-2 pt-2" data-testid=view-1><template x-for="(item, j) in $store.search.results.main.result.hits" :key=item.objectID><a class="group flex items-center" x-bind:href=item.href x-bind:target="item.isExternalLink ? '_blank' : ''" data-testid=link-hit @click="$store.nav.analytics.handler.clickHit(item, 'DOCS: Search Result - Condensed')"><span x-html=item.mainTitle class="font-semibold text-md text-gray-700 no-underline"></span><div class=ml-2><span x-html=item.rootSectionTitle class="section-label border rounded border-transparen text-basicgray tracking-normal font-semibold text-xs uppercase px-2" style=background-color:#e9eaec :data-testid="`section-label-${item['section.lvl0']}`"></span></div></a></template></div></template><template x-if="view === 2 && $store.search.results.main.loaded"><div class="flex flex-col space-y-2" data-testid=view-2><template x-for="(item, j) in $store.search.results.main.result.hits" :key=item.objectID><div class="rounded -ml-4 pl-4 py-2 mobile:-mr-4 hover:bg-selected"><template x-if=item.href><a class="group flex items-center" x-bind:href=item.href x-bind:target="item.isExternalLink ? '_blank' : ''" data-testid=link-hit @click="$store.nav.analytics.handler.clickHit(item, 'DOCS: Search Result - Detailed')"><span x-html=item.mainTitle class="font-semibold text-md text-gray-700 no-underline"></span><div class=ml-2><span x-html=item.rootSectionTitle class="section-label border rounded border-transparen text-basicgray tracking-normal font-semibold text-xs uppercase px-2" style=background-color:#e9eaec :data-testid="`section-label-${item['section.lvl0']}`"></span></div></a></template><template x-if=!item.href><p x-html=item.description></p></template><template x-if=item.excerpt><div class="text-sm text-textcolor pt-2 leading-relaxed three-lines-ellipsis" x-html=item.excerptHighlighted data-testid=excerpt></div></template><template x-if="item.tagsValues().length > 0"><div class=pt-2><template x-for="v in item.tagsValues()"><span x-html=v class="border rounded border-basicgray text-basicgray tracking-normal font-semibold text-xs uppercase px-2 mr-1"></span></template></div></template></div></template></div></template><template x-if="view === 3 && $store.search.results.main.loaded"><div class="flex flex-col space-y-2 pt-2" data-testid=view-3><div class="pb-2 md:pb-6"><div class="grid grid-cols-2 xl:grid-cols-4 gap-4"><template x-for="(item, j) in $store.search.results.main.result.hits" :key=item.objectID><div class="bg-white h-full overflow-hidden rounded-lg shadow-sm hover:shadow-lg"><a :href=item.href x-bind:target="item.isExternalLink ? '_blank' : ''" class="no-underline block" @click="$store.nav.analytics.handler.clickHit(item, 'DOCS: Search Result - Thumbnail')"><div class="relative overflow-hidden pb-16/9 bg-gray-200"><img :src=item.thumbnailUrl alt="Article image" class="absolute h-full w-full object-cover img-transparent" @load="$event.target.classList.remove('img-transparent')" loading=eager></div><div class="px-4 p-6"><h3 class="two-lines-ellipsis font-semibold text-sm md:text-lg" x-html=item.linkTitle></h3><div class="float-left py-2"><span x-html=item.rootSectionTitle class="section-label border rounded border-transparen text-basicgray tracking-normal font-semibold text-xs uppercase px-2" style=background-color:#e9eaec :data-testid="`section-label-${item['section.lvl0']}`"></span></div></div></a></div></template></div></div></div></template><div class=mt-8><template x-if="$store.search.results.main.loaded && $store.search.results.main.result.stats"><nav class="py-3 flex items-center justify-between border-t border-divider" aria-label=Pagination><div class="hidden sm:block"><p class="text-sm text-textcolor font-medium" x-text="`Showing ${$store.search.results.main.result.stats.hitsStart} to ${$store.search.results.main.result.stats.hitsEnd} of ${$store.search.results.main.result.stats.totalNbHits} results`"></p></div><div class="flex-1 flex justify-between sm:justify-end"><button :disabled="$store.search.query.p === 0" type=button @click=incrPage(-1) class="relative inline-flex items-center px-4 py-2 rounded-md border-2 border-divider bg-white text-sm font-medium hover:bg-gray-200 focus:z-10 focus:outline-none">
Previous</button>
<button :disabled="$store.search.query.p + 1 >= $store.search.results.main.result.stats.totalNbPages" type=button @click=incrPage(1) class="ml-3 relative inline-flex items-center px-4 py-2 rounded-md border-2 border-divider bg-white text-sm font-medium hover:bg-gray-200 focus:z-10 focus:outline-none">
Next</button></div></nav></template></div></div></template><template x-if=$store.nav.searchResults.open><div class="search-panel__filters bg-white"><div><template x-if=$store.search.results.main.loaded><div class="h-full lg:h-screen"><div x-transition.opacity x-show=filters.loaded class="hidden lg:flex container items-center justify-between mb-5"><h2>Filters</h2><span class="text-xs text-basicgray" x-text="$store.search.results.main.result.stats.totalNbHits + ' Total Results'"></span></div><div :class="{'border-b-gray': !filters.open}" class="flex lg:hidden navbar__row container items-center cursor-pointer text-titlecolor" @click="filters.open = !filters.open"><div class="flex h-full w-full items-center justify-between"><div class="flex h-full items-center"><svg class="w-5 h-5" :class="{ 'text-brand': filters.open }"><use xlink:href="#icon--filter"/></svg><div class="pl-4 tracking-tight">Filters (
<span x-text=filters.data.countActive()></span>)</div><template x-if=!filters.open><button type=button class="btn-icon pl-2 pr-7"><svg class="w-4 h-4"><use href="#icon--arrow-down"/></svg></button></template><template x-if=filters.open><button type=button class="btn-icon pl-2 pr-7"><svg class="w-4 h-4"><use href="#icon--arrow-up"/></svg></button></template></div><span class="text-xs text-textcolor block" x-text="$store.search.results.main.result.stats.totalNbHits + ' Total Results'"></span></div></div><div class="small:mt-8 block--lg container max-w-screen-md" x-show=filters.open x-transition:enter="transition-transform transition-opacity ease-out duration-500 sm:duration-700" x-transition:enter-start="opacity-0 transform -translate-y-8" x-transition:enter-end="opacity-100 transform translate-y-0"><template x-for="filter in filters.data.filtersarr()" :key=filter.name><div class=mb-8 :data-testid="'search-filter-' + filter.name"><h4 x-text=filter.title class="uppercase font-semibold text-xs pb-4"></h4><div><div x-bind:class="{ 'bg-brand': filter.allChecked }" class="inline-block mr-1 mb-2 rounded bg-gray-300 px-2 pb-2 pt-1"><label class=block><input class="mr-1 leading-tight form-checkbox text-white w-3 h-3" type=checkbox x-model=filter.allChecked @change=apply()>
<span x-bind:class="{ 'text-titlecolor': !filter.allChecked, 'text-white': filter.allChecked }" class="text-xxs font-semibold">All</span></label></div><template x-for="checkbox in filter.checkboxes" :key=checkbox.value><div x-bind:class="{ 'bg-brand': checkbox.checked }" class="inline-block mr-1 mb-2 bg-gray-300 rounded px-2 pb-2 pt-1"><label class=block><input class="mr-1 leading-tight form-checkbox text-white w-3 h-3" type=checkbox x-model=checkbox.checked @change=apply()>
<span x-bind:class="{ 'text-titlecolor': !checkbox.checked && checkbox.count > 0, 'text-white': checkbox.checked, 'text-gray-400': !checkbox.checked && checkbox.count === 0 }" class="text-xxs font-semibold capitalize" style=letter-spacing:.07px x-text=checkbox.title></span></label></div></template></div></div></template><template x-if="filters.data.filters.get('tags')"><div class=mb-8 data-testid=search-filter-tags><h4 class="uppercase font-semibold text-xs pb-4" x-html="filters.data.filters.get('tags').title"></h4><div class="flex flex-col items-start rounded-md border border-gray-500 w-full" :class="{ 'shadow-md border-basicgray': filters.data.tags.open }"><div class="px-4 h-10 flex justify-between items-center content-start w-full" :class="{ 'mb-2': filters.data.tags.open }"><input x-show=filters.data.tags.open class="form-input pl-0 border-none w-11/12" type=search placeholder="Search by tag name…" x-model=filters.data.tags.searchString><div x-show=!filters.data.tags.open>Add tags</div><button type=button @click="filters.data.tags.open = !filters.data.tags.open" class="btn p-0 m-0 text-sm md:text-sm truncate leading-5 font-medium text-gray-700 focus:outline-none active:bg-gray-50 active:text-titlecolor transition ease-in-out duration-150" data-testid=open-tags><div x-show=filters.data.tags.open><svg class="fill-current text-basicgray h-5 w-5"><use href="#icon--arrow-up"/></svg></div><div x-show=!filters.data.tags.open><svg class="fill-current text-basicgray h-5 w-5"><use href="#icon--arrow-down"/></svg></div></button></div><div x-transition x-show=filters.data.tags.open class="mb-3 pl-4 h-40 w-full overflow-y-scroll scrollbar-v-gray"><div x-bind:class="{ 'bg-brand': filters.data.tags.filter.allChecked }" class="inline-block mr-1 mb-2 rounded bg-gray-300 px-2 pb-2 pt-1"><label class=block><input class="mr-1 leading-tight form-checkbox text-white w-3 h-3" type=checkbox x-model=filters.data.tags.filter.allChecked @change=apply()>
<span x-bind:class="{ 'text-titlecolor': !filters.data.tags.filter.allChecked, 'text-white': filters.data.tags.filter.allChecked }" class="text-xxs font-semibold">All</span></label></div><template x-for="checkbox in filters.data.tags.filterBySearchString()" :key=checkbox.value><div x-bind:class="{ 'bg-brand': checkbox.checked }" class="inline-block mr-1 mb-2 bg-gray-300 rounded px-2 pb-2 pt-1"><label class=block><input class="mr-1 leading-tight form-checkbox text-white w-3 h-3" type=checkbox x-model=checkbox.checked @change=apply()>
<span x-bind:class="{ 'text-titlecolor': !checkbox.checked && checkbox.count > 0, 'text-white': checkbox.checked, 'text-gray-400': !checkbox.checked && checkbox.count === 0 }" class="text-xxs font-semibold capitalize" style=letter-spacing:.07px x-text=checkbox.title></span></label></div></template></div></div></div></template></div></div></template></div></div></template></div></section><section id=main__content class="main__content container mb-20"><div class="w-full h-full"><div class="mt-4 md:mt-6 main__breadcrumbs"><nav class="breadcrumbs breadcrumbs-static text-sm" x-data><ol class="list-none pb-0 inline-flex flex-wrap -mt-1"><li class="flex items-center mt-1"><a class="max-w-32 truncate" href=/docs/ @click=$store.search.clearQuery()>Docs Home</a></li><li class="flex items-center mt-1"><svg class="mx-3 text-basicgray" style="width:5px;height:13px"><use href="#icon--arrow-right"/></svg><a href=https://www.linode.com/docs/guides/ class=truncate>Guides</a></li><li class="flex items-center mt-1"><svg class="mx-3 text-basicgray" style="width:5px;height:13px"><use href="#icon--arrow-right"/></svg><a href=https://www.linode.com/docs/guides/security/ class=truncate>Security, Upgrades & Backups</a></li><li class="flex items-center mt-1"><svg class="mx-3 text-basicgray" style="width:5px;height:13px"><use href="#icon--arrow-right"/></svg><a href=https://www.linode.com/docs/guides/security/authentication/ class=truncate>Authentication</a></li><li class="flex items-center mt-1"></li></ol></nav></div><div class=mt-6><div class=content><h1 class="font-bold leading-tight tracking-tight text-4xl text-titlecolor w-full">Using SSH Public Key Authentication on Linux, macOS, and Windows</h1><div class=mt-2><span class="pt-2 text-basicgray">Updated
<time datetime=2022-07-15T09:10:08-04:00>Friday, July 15, 2022</time>, by Linode</span><div class="hidden md:flex flex-initial float-right"><div class="flex justify-start space-x-2" x-data='lncDropdowns([{"open":false},{"open":false}])' @click.away=closeAll()><div x-transition.opacity x-show=!isHidden(0) x-cloak><div class="relative inline-block text-left"><div><span class=rounded-sm><button type=button aria-label=open @click=toggleOpen(0) :class="{ '': isOpen(0)}" class="btn-icon inline-flex w-full px-4 py-2 md:px-2 md:py-1 text-sm leading-4 font-medium text-gray-700 focus:outline-none active:bg-gray-50 active:text-titlecolor transition ease-in-out duration-150"><svg class="fill-current text-textcolor w-4 h-4"><use href="#icon--github"/></svg><div x-show=isOpen(0)><svg class="fill-current text-textcolor -mr-1 ml-2 h-4 w-4"><use href="#icon--arrow-up"/></svg></div><div x-show=!isOpen(0)><svg class="fill-current text-textcolor -mr-1 ml-2 h-4 w-4"><use href="#icon--arrow-down"/></svg></div></button></span></div><ul iv x-transition x-show=isOpen(0) class="border border-gray-300 origin-top-right absolute right-0 m-0 mt-2 py-2 z-10 rounded-sm bg-white list-none" x-cloak><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: Issue Report')" href="https://github.com/linode/docs/issues/new?title=How%20to%20Use%20SSH%20Public%20Key%20Authentication%20Proposed%20Changes&body=Link%3A%C2%A0https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/%0A%23%23%20Issue%0A%0A%23%23%20Suggested%20Fix%0A&labels=inaccurate%20guide" target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900">Report an Issue</a></li><li class=block><a href=https://github.com/linode/docs/blob/develop/docs/guides/security/authentication/use-public-key-authentication-with-ssh/index.md target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900">View File</a></li><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: File Edit')" href=https://github.com/linode/docs/edit/develop/docs/guides/security/authentication/use-public-key-authentication-with-ssh/index.md target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900">Edit File</a></li></ul></div></div><div x-transition.opacity x-show=!isHidden(1) x-cloak><div class="relative inline-block text-left"><div><span class=rounded-sm><button type=button aria-label=open @click=toggleOpen(1) :class="{ '': isOpen(1)}" class="btn-icon inline-flex w-full px-4 py-2 md:px-2 md:py-1 text-sm leading-4 font-medium text-gray-700 focus:outline-none active:bg-gray-50 active:text-titlecolor transition ease-in-out duration-150"><svg class="fill-current text-textcolor w-4 h-4"><use href="#icon--share"/></svg><div x-show=isOpen(1)><svg class="fill-current text-textcolor -mr-1 ml-2 h-4 w-4"><use href="#icon--arrow-up"/></svg></div><div x-show=!isOpen(1)><svg class="fill-current text-textcolor -mr-1 ml-2 h-4 w-4"><use href="#icon--arrow-down"/></svg></div></button></span></div><ul iv x-transition x-show=isOpen(1) class="border border-gray-300 origin-top-right absolute right-0 m-0 mt-2 py-2 z-10 rounded-sm bg-white list-none" x-cloak><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: Twitter Share')" href="https://twitter.com/share?url=https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/&via=linode&text=How%20to%20Use%20SSH%20Public%20Key%20%e2%80%a6" target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900"><svg class="fill-current text-gray-400 h-5 w-5 mr-2"><use href="#icon--twitter"/></svg>Share on Twitter</a></li><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: Facebook Share')" href="http://www.facebook.com/sharer.php?u=https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/" target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900"><svg class="fill-current text-gray-400 h-5 w-5 mr-2"><use href="#icon--facebook"/></svg>Share on Facebook</a></li><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: Hacker News Share')" href="https://news.ycombinator.com/submitlink?u=https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/&t=How%20to%20Use%20SSH%20Public%20Key%20Authentication" target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900"><svg class="fill-current text-gray-400 h-5 w-5 mr-2"><use href="#icon--hackernews"/></svg>Share on Hacker News</a></li></ul></div></div></div></div></div><div x-data x-cloak><div class="mt-2 sm:mt-4 mb-2 sm:mb-4" x-show="$store.nav.lang == 'es'" data-testid=languageNote><blockquote class="callout border-brand" style=background-color:rgba(2,177,89,.1)><strong class=callout-title>Traducciones al Español</strong><div class=leading-tight>Estamos traduciendo nuestros guías y tutoriales al Español. Es
posible que usted esté viendo una traducción generada
automáticamente. Estamos trabajando con traductores profesionales
para verificar las traducciones de nuestro sitio web. Este proyecto
es un trabajo en curso.</div></blockquote></div></div><div class=mt-8><div class="flex justify-between bg-brand pull-out items-center rounded-none md:rounded-md px-4 md:px-8 py-4" x-data><div class="text-white text-md md:text-lg font-regular tracking-normal w-3/4"><span><a href="https://login.linode.com/signup?promo=docs1000822" target=_blank @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid, 'DOCS: Promo Code')" class="font-semibold text-white underline" style=text-underline-offset:2px>Create a Linode account</a>
to try this guide with a $100 credit.<div class="text-sm italic">This credit will be applied to any valid services used during your first 60 days.</div></span></div><div><form action=https://login.linode.com/signup data-turbo=false><input type=hidden name=promo value=docs1000822>
<button @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid, 'DOCS: Promo Code')" type=submit formtarget=_blank class="bg-transparent hover:bg-gray-800 text-white text-md font-semibold py-2 px-4 border border-white hover:border-gray-800 rounded">
Sign Up</button></form></div></div></div><div x-ignore class="prose prose-sm md:prose-lg max-w-none mt-8"><p><a href=https://en.wikipedia.org/wiki/Key_authentication#Authentication_using_Public_Key_Cryptography target=_blank>Public key authentication</a> with SSH (Secure Shell) is a method in which you generate and store on your computer a pair of cryptographic keys and then configure your server to recognize and accept your keys. Password authentication is the default method most SSH (Secure Shell) clients use to authenticate with remote servers, but it suffers from potential security vulnerabilities like brute-force login attempts. Using key-based authentication offers a range of benefits:</p><ul><li><p>Key-based login is not a major target for brute-force hacking attacks.</p></li><li><p>If a server that uses SSH keys is compromised by a hacker, no authorization credentials are at risk of being exposed.</p></li><li><p>Because a password isn&rsquo;t required at login, you can log into servers from within scripts or automation tools that you need to run unattended. For example, you can set up periodic updates for your servers with a configuration management tool like
<a href=/docs/guides/running-ansible-playbooks/>Ansible</a>, and you can run those updates without having to be physically present.</p></li></ul><p>This guide explains how the SSH key login scheme works, how to generate an SSH key, and how to use those keys with a Linode Linux server.</p><blockquote class="callout border-brand" style=background-color:rgba(2,177,89,.1)><strong class=callout-title>Note</strong><div class="leading-tight callout-body">If you&rsquo;re unfamiliar with SSH connections, review the
<a href=/docs/guides/set-up-and-secure/#connect-to-the-instance data-turbolinks=false>Getting Started with Linode</a> guide.</div></blockquote><h2 id=how-does-ssh-public-key-authentication-work>How Does SSH Public Key Authentication Work?</h2><p>SSH keys are generated in pairs and stored in plain-text files. The <em>key pair</em> (or <em>keypair</em>) consists of two parts:</p><ul><li><p>A <strong>private key</strong>, usually named <code>id_rsa</code>. The private key is stored on your local computer and should be kept secure, with permissions set so that no other users on your computer can read the file.</p><blockquote class=callout style=border-color:#d30000;background-color:rgba(211,0,0,.1)><strong class=callout-title>Caution</strong><div class=leading-tight>Do not share your private key with others.</div></blockquote></li><li><p>A <strong>public key</strong>, usually named <code>id_rsa.pub</code>. The public key is placed on the server you intend to log in to. You can freely share your public key with others. If someone else adds your public key to their server, you will be able to log in to that server.</p></li></ul><p>When a site or service asks for your SSH key, they are referring to your SSH public key (<code>id_rsa.pub</code>). For instance, services like
<a href=https://github.com target=_blank>GitHub</a> and
<a href=https://gitlab.com target=_blank>Gitlab</a> allow you to place your SSH public key on their servers to streamline the process of pushing code changes to remote repositories.</p><p>A public key and a private key play an important role in enabling secure access. But how? The best way to understand them is to understand that the following components in this authentication system are mathematically related to each other:</p><ol><li>Public key</li><li>Private key</li><li>Authentication algorithm</li></ol><p>If you use your public key to encrypt something, then only your private key can decrypt it. Similarly, once you encrypt something using your private key, it can only be decrypted by your public key. And to enable secure access between servers/machines, we share our public key with the other machine to enable secure access.</p><p>But to carry this encryption and decryption, there is an algorithm that runs in the background and keeps SSH secure. Heres how it works:</p><ol><li><strong>Signed communication</strong>: Any message that goes out is signed using your private keys.</li><li><strong>Verification of communication</strong>: Your server has a public key from the sender stored. A signed message is verified by using this public key to decrypt the message.</li></ol><p>When you sign a message, you allow others to decrypt the message as well. But when the receiver decrypts this message, they can safely and securely validate that the communication is in fact from you. To match these keys and validate, you use an algorithm like
<a href=https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange target=_blank>Diffie-Hellman</a>.</p><h3 id=the-authorized-keys-file>The Authorized Keys File</h3><p>In order for your Linux server to recognize and accept your key pair, you must upload your public key to your server. More specifically, you must upload your public key to the home directory of the user you would like to log in as. If you would like to log in to more than one user on the server using your key pair, you must add your public key to each of those users.</p><p>To set up SSH key authentication for one of your server&rsquo;s users, add your public key to a new line inside the user&rsquo;s <code>authorized_keys</code> file. This file is stored inside a directory named <code>.ssh/</code> under the user&rsquo;s home folder. A user&rsquo;s <code>authorized_keys</code> file can store more than one public key, and each public key is listed on its own line. If your file contains more than one public key, then the owner of each key listed can log in as that user.</p><h3 id=granting-someone-else-access-to-your-server>Granting Someone Else Access to Your Server</h3><p>To give someone else access to your server&rsquo;s user, simply add their public key on a new line in your <code>authorized_keys</code> file, just as you would add your own. To revoke access for that person, remove that same line and save the changes.</p><h3 id=challenge-response>Challenge-Response</h3><p>When logging in to a server using SSH, if that servers has a public key on file, the server creates a
<a href=https://en.wikipedia.org/wiki/Challenge%e2%80%93response_authentication target=_blank><em>challenge</em></a>. This challenge is crafted in such a way that only the holder of the private SSH key can decipher it.</p><p>This challenge-response action happens without any user interaction. If the person attempting to log in has the corresponding private key, then they can safely log in. If not, the login either fails or falls back to a password-based authentication scheme.</p><h3 id=ssh-private-key-passphrases>SSH Private Key Passphrases</h3><p>You can optionally provide an additional level of security for your SSH private key by encrypting it locally with a <em>passphrase</em> at the time of creation. When you attempt to log in using an encrypted SSH key, you are prompted to enter its passphrase. This is not to be confused with a <em>password</em>, as this passphrase only decrypts the key file locally. A passphrase is not transferred over the Internet as a password might be.</p><p>If you&rsquo;d like to set up your logins so that they require no user input, then creating a passphrase might not be desirable. Nevertheless, using a passphrase to protect your private key is strongly recommended.</p><h2 id=public-key-authentication-on-linux-and-macos>Public Key Authentication on Linux and macOS</h2><h3 id=generate-an-ssh-key-pair-on-linux-and-macos>Generate an SSH Key Pair on Linux and macOS</h3><p>Perform the steps in this section on your local machine.</p><ol><li><p>Create a new key pair.</p><blockquote class=callout style=border-color:#d30000;background-color:rgba(211,0,0,.1)><strong class=callout-title>Caution</strong><div class=leading-tight><p><strong>This command will overwrite an existing RSA key pair, potentially locking you out of other systems.</strong></p><p>If you&rsquo;ve already created a key pair, skip this step. To check for existing keys, run <code>ls ~/.ssh/id_rsa*</code>.</p><p>If you accidentally lock yourself out of the SSH service on your Linode, you can still use the
<a href=/docs/networking/using-the-linode-shell-lish>Lish</a> console to login to your server. After you&rsquo;ve logged in via Lish, update your <code>authorized_keys</code> file to use your new public key. This should re-establish normal SSH access.</p></div></blockquote><pre><code>ssh-keygen -b 4096
</code></pre><p>The <code>-b</code> flag instructs <code>ssh-keygen</code> to increase the number of bits used to generate the key pair, and is suggested for additional security.</p></li><li><p>Press <strong>Enter</strong> to use the default names <code>id_rsa</code> and <code>id_rsa.pub</code> in the <code>/home/your_username/.ssh</code> directory before entering your passphrase.</p><pre class="file dark"><code>Generating public/private rsa key pair.
Enter file in which to save the key (/home/your_username/.ssh/id_rsa):</code></pre></li><li><p>While creating the key pair, you are given the option to encrypt the private key with a
<a href=#ssh-private-key-passphrases>passphrase</a>. This means that the key pair cannot be used without entering the passphrase (unless you save that passphrase to your local machine&rsquo;s keychain manager). We suggest that you use the key pair with a passphrase, but you can leave this field blank if you don&rsquo;t want to use one.</p><pre class="file dark"><code>Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/your_username/.ssh/id_rsa.
Your public key has been saved in /home/your_username/.ssh/id_rsa.pub.
The key fingerprint is:
f6:61:a8:27:35:cf:4c:6d:13:22:70:cf:4c:c8:a0:23 your_username@linode</code></pre></li></ol><h3 id=upload-your-public-key>Upload Your Public Key</h3><p>There are a few different ways to upload your public key to your Linode from Linux and macOS client systems:</p><h4 id=using-ssh-copy-id>Using ssh-copy-id</h4><p><code>ssh-copy-id</code> is a utility available on some operating systems that can copy a SSH public key to a remote server over SSH.</p><ol><li><p>To use <code>ssh-copy-id</code>, pass your username and the IP address of the server you would like to access:</p><pre><code>ssh-copy-id your_username@192.0.2.0
</code></pre></li><li><p>You&rsquo;ll see output like the following, and a prompt to enter your user&rsquo;s password:</p><pre class="file dark"><code>/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: &#34;/home/your_username/.ssh/id_rsa.pub&#34;
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
your_username@192.0.2.0&#39;s password:</code></pre></li><li><p><a href=#connect-to-the-remote-server>Verify that you can log in</a> to the server with your key.</p></li></ol><h4 id=using-secure-copy-scp>Using Secure Copy (scp)</h4><p>Secure Copy (<code>scp</code>) is a tool that copies files from a local computer to a remote server over SSH:</p><blockquote class=callout style=border-color:#d30000;background-color:rgba(211,0,0,.1)><strong class=callout-title>Caution</strong><div class=leading-tight>These instructions will overwrite any existing contents of the <code>authorized_keys</code> file on your server. If you have already set up other public keys on your server, use the
<a href=#using-ssh-copy-id><code>ssh-copy-id</code> command</a> or
<a href=#manually-copy-your-public-key>enter your key manually</a>.</div></blockquote><ol><li><p>Connect to your server at its IP address via SSH with the user you would like to add your key to:</p><pre><code>ssh your_username@192.0.2.0
</code></pre></li><li><p>Create the <code>~/.ssh</code> directory and <code>authorized_keys</code> file if they don&rsquo;t already exist:</p><pre><code>mkdir -p ~/.ssh &amp;&amp; touch ~/.ssh/authorized_keys
</code></pre></li><li><p>Give the <code>~/.ssh</code> directory and <code>authorized_keys</code> files appropriate file permissions:</p><pre><code>chmod 700 ~/.ssh &amp;&amp; chmod 600 ~/.ssh/authorized_keys
</code></pre></li><li><p>In another terminal on your local machine, use <code>scp</code> to copy the contents of your SSH <strong>public</strong> key (<code>id_rsa.pub</code>) into the <code>authorized_keys</code> file on your server. Substitute in your own username and your server&rsquo;s IP address:</p><pre><code>scp ~/.ssh/id_rsa.pub your_username@192.0.2.0:~/.ssh/authorized_keys
</code></pre></li><li><p><a href=#connect-to-the-remote-server>Verify that you can log in</a> to the server with your key.</p></li></ol><h4 id=manually-copy-your-public-key>Manually Copy Your Public Key</h4><p>You can also manually add an SSH key to a server:</p><ol><li><p>Begin by copying the contents of your <strong>public</strong> SSH key on your local computer. You can use the following command to output the contents of the file:</p><pre><code>cat ~/.ssh/id_rsa.pub
</code></pre><p>You should see output similar to the following:</p><pre class="file dark"><code>ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCyVGaw1PuEl98f4/7Kq3O9ZIvDw2OFOSXAFVqilSFNkHlefm1iMtPeqsIBp2t9cbGUf55xNDULz/bD/4BCV43yZ5lh0cUYuXALg9NI29ui7PEGReXjSpNwUD6ceN/78YOK41KAcecq&#43;SS0bJ4b4amKZIJG3JWmDKljtv1dmSBCrTmEAQaOorxqGGBYmZS7NQumRe4lav5r6wOs8OACMANE1ejkeZsGFzJFNqvr5DuHdDL5FAudW23me3BDmrM9ifUzzjl1Jwku3bnRaCcjaxH8oTumt1a00mWci/1qUlaVFft085yvVq7KZbF2OPPbl&#43;erDW91&#43;EZ2FgEi&#43;v1/CSJ5 your_username@hostname</code></pre><p>Note that the public key begins with <code>ssh-rsa</code> and ends with <code>your_username@hostname</code>.</p></li><li><p>Once you have copied that text, use the command ssh to add the key. Connect to your server via SSH with the user you would like to add your key to:</p><pre><code>ssh your_username@192.0.2.0
</code></pre></li><li><p>Create the <code>~/.ssh</code> directory and <code>authorized_keys</code> file if they don&rsquo;t already exist:</p><pre><code>mkdir -p ~/.ssh &amp;&amp; touch ~/.ssh/authorized_keys
</code></pre></li><li><p>Give the <code>~/.ssh</code> directory and <code>authorized_keys</code> files appropriate file permissions:</p><pre><code>chmod 700 ~/.ssh &amp;&amp; chmod 600 ~/.ssh/authorized_keys
</code></pre></li><li><p>Open the <code>authorized_keys</code> file with the text editor of your choice (
<a href=/docs/quick-answers/linux/use-nano-to-edit-files-in-linux/><code>nano</code>, for example</a>). Then, paste the contents of your public key that you copied in step one on a new line at the end of the file.</p></li><li><p>Save and close the file.</p><blockquote class="callout border-brand" style=background-color:rgba(2,177,89,.1)><strong class=callout-title>Note</strong><div class="leading-tight callout-body"><p>If you initially logged into the server as <code>root</code> but edited the <code>authorized_keys</code> file of another user, then the <code>.ssh/</code> folder and <code>authorized_keys</code> file of that user may be owned by <code>root</code>. Set that other user as the files' owner:</p><pre><code> chown -R your_username:your_username /home/your_username/.ssh
</code></pre></div></blockquote></li><li><p><a href=#connect-to-the-remote-server>Verify that you can log in</a> to the server with your key.</p></li></ol><h3 id=use-your-private-key-to-connect-to-the-remote-server>Use Your Private Key to Connect to the Remote Server</h3><ol><li><p>SSH into the server from your local machine:</p><pre><code>ssh your_username@192.0.2.0
</code></pre></li><li><p>If you chose to use a passphrase when creating your SSH key, you are prompted to enter it when you attempt to log in. Depending on your desktop environment, a window may appear:</p><p><figure><picture><source srcset=/docs/guides/use-public-key-authentication-with-ssh/1461-SSH-Passphrase_huf6bd64d8edac3a8feb16510a7ced6cc8_16196_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg media="(min-width: 640px)"><img width=694 height=355 src=/docs/guides/use-public-key-authentication-with-ssh/1461-SSH-Passphrase_huf6bd64d8edac3a8feb16510a7ced6cc8_16196_694x0_resize_q71_bgfafafc_catmullrom_2.jpg loading=eager alt="Enter your SSH passphrase in the password field." title="A prompt for the password to unlock the key." class=w-full></picture></figure></p><blockquote class=callout style=border-color:#d30000;background-color:rgba(211,0,0,.1)><strong class=callout-title>Caution</strong><div class=leading-tight>Do not allow the local machine to remember the passphrase in its keychain unless you are on a private computer which you trust.</div></blockquote><p>You may also see the passphrase prompt at your command line:</p><pre class="file dark"><code>Enter passphrase for key &#39;/root/.ssh/id_rsa&#39;:</code></pre></li><li><p>Enter your passphrase. You should see the connection established in the local terminal.</p></li></ol><h2 id=public-key-authentication-with-putty-on-windows>Public Key Authentication with PuTTY on Windows</h2><p>The following instructions use the
<a href=https://www.putty.org target=_blank>PuTTY</a> software to connect over SSH, but
<a href=/docs/guides/connect-to-server-over-ssh-on-windows/>other options</a> are available on Windows too.</p><h3 id=generate-a-key-pair-with-putty>Generate a Key Pair with PuTTY</h3><ol><li><p>Download PuTTYgen (<code>puttygen.exe</code>) and PuTTY (<code>putty.exe</code>) from the
<a href=http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html target=_blank>official site</a>.</p></li><li><p>Launch <code>puttygen.exe</code>. The <code>RSA</code> key type at the bottom of the window is selected by default for an
<a href=https://en.wikipedia.org/wiki/RSA_%28cryptosystem%29 target=_blank>RSA</a> key pair but <code>ED25519</code> (
<a href=https://en.wikipedia.org/wiki/EdDSA target=_blank>EdDSA</a> using
<a href=https://en.wikipedia.org/wiki/Curve25519 target=_blank>Curve25519</a>) is a comparable option if your remote machine&rsquo;s SSH server supports DSA signatures. Do not use the <code>SSH-1(RSA)</code> key type unless you know what you&rsquo;re doing.</p></li><li><p>Increase the RSA key size from <code>2048</code> bits <code>4096</code> and click <strong>Generate</strong>:</p><p><figure><picture><source srcset=/docs/guides/use-public-key-authentication-with-ssh/putty-generate-key_huc84e4b5eebc8bc7c971e1053636a8593_10051_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg media="(min-width: 640px)"><img width=694 height=674 src=/docs/guides/use-public-key-authentication-with-ssh/putty-generate-key_huc84e4b5eebc8bc7c971e1053636a8593_10051_694x0_resize_q71_bgfafafc_catmullrom_2.jpg loading=eager alt="Generating the new public/private key pair." title="Generating the new public/private key pair." class=w-full></picture></figure></p></li><li><p>PuTTY uses the random input from your mouse to generate a unique key. Once key generation begins, keep moving your mouse until the progress bar is filled:</p><p><figure><picture><source srcset=/docs/guides/use-public-key-authentication-with-ssh/putty-generating-key_hu057f14e6488e4712838064ec7bf6b2ec_9425_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg media="(min-width: 640px)"><img width=694 height=678 src=/docs/guides/use-public-key-authentication-with-ssh/putty-generating-key_hu057f14e6488e4712838064ec7bf6b2ec_9425_694x0_resize_q71_bgfafafc_catmullrom_2.jpg loading=eager alt="Move the mouse until the key generating is complete." title="Move the mouse until the key generating is complete." class=w-full></picture></figure></p></li><li><p>When finished, PuTTY displays the new public key. Right-click on it and select <strong>Select All</strong>, then copy the public key into a Notepad file.</p><p><figure><picture><source srcset=/docs/guides/use-public-key-authentication-with-ssh/putty-key-generated_hu4d11a1f8c9d993577877f3e3b4227b86_15999_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg media="(min-width: 640px)"><img width=694 height=675 src=/docs/guides/use-public-key-authentication-with-ssh/putty-key-generated_hu4d11a1f8c9d993577877f3e3b4227b86_15999_694x0_resize_q71_bgfafafc_catmullrom_2.jpg loading=eager alt="The public key has now been created." title="The public key has now been created." class=w-full></picture></figure></p></li><li><p><strong>Save the public key as a <code>.txt</code> file</strong> or some other plaintext format. <strong>This is important</strong>&ndash;a rich text format such as <code>.rtf</code> or <code>.doc</code> can add extra formatting characters and then your private key won&rsquo;t work:</p><p><div x-data="{ visible: false }" x-intersect.once="visible = true" data-testid=image-modal><template x-if=visible><div x-data="{ open: false, hover:false, src: '' }"><figure class=w-full @click="open = ! open; $event.preventDefault();" @keydown.escape.window="open = false" @mouseenter="hover = true" @mouseleave="hover = false"><div class="relative w-full text-brand cursor-pointer group"><div><template x-if=$isMobile()><img src=/docs/guides/use-public-key-authentication-with-ssh/putty-ssh-pubkey-in-notepad_hu6de262a32118ad6cce946d97dddc19f1_14422_694x0_resize_q71_bgfafafc_catmullrom_2.jpg alt="Copy the public key to a text file." title="Copy the public key to a text file." class=img-transparentw-full @load="$event.target.classList.remove('img-transparent')"></template><template x-if=!$isMobile()><img src=/docs/guides/use-public-key-authentication-with-ssh/putty-ssh-pubkey-in-notepad_hu6de262a32118ad6cce946d97dddc19f1_14422_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg alt="Copy the public key to a text file." title="Copy the public key to a text file." class=img-transparentw-full @load="$event.target.classList.remove('img-transparent')"></template></div><div x-transition x-show=hover class="hide-if-no-js absolute bg-gray-100 bg-opacity-25 p-3 rounded-full" style=bottom:2rem;right:2rem><svg class="h-5 w-5"><use href="#icon--search"/></svg></div></div></figure><div class=hide-if-no-js x-cloak><div x-transition.opacity x-show=open class="fixed flex justify-center items-center inset-0 bg-black bg-opacity-75" style=z-index:9999><div x-transition x-show=open class="content relative mx-4 w-auto max-w-7xl bg-transparent overflow-auto" style=max-height:80%><template x-if=open><img src=/docs/guides/use-public-key-authentication-with-ssh/putty-ssh-pubkey-in-notepad.png alt="Copy the public key to a text file." class="w-full rounded-xl shadow-lg" @click.away="open = false"></template><svg class="h-6 w-6 absolute text-white hover:text-brand cursor-pointer" style="top:0;right:0"><use href="#icon--times"/></svg></div></div></div></div></template></div><noscript></noscript></p></li><li><p>Enter a passphrase for the private key in the <strong>Key passphrase</strong> and <strong>Confirm passphrase</strong> text fields:</p><blockquote class="callout border-brand" style=background-color:rgba(2,177,89,.1)><strong class=callout-title>Note</strong><div class="leading-tight callout-body"><strong>Important:</strong> Make a note of your passphrase for later use.</div></blockquote><p><figure><picture><source srcset=/docs/guides/use-public-key-authentication-with-ssh/putty-key-passphrase_hu9807e08b2c6ce14b185a829dba3fd74c_15771_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg media="(min-width: 640px)"><img width=694 height=677 src=/docs/guides/use-public-key-authentication-with-ssh/putty-key-passphrase_hu9807e08b2c6ce14b185a829dba3fd74c_15771_694x0_resize_q71_bgfafafc_catmullrom_2.jpg loading=eager alt="Enter a new passphrase." title="Enter a new passphrase." class=w-full></picture></figure></p></li><li><p>Click <strong>Save private key</strong>. Choose a filename and location in Explorer while keeping the <code>ppk</code> file extension. If you plan to create multiple key pairs for different servers, be sure to give them different names so that you don&rsquo;t overwrite old keys with new:</p><p><figure><picture><source srcset=/docs/guides/use-public-key-authentication-with-ssh/putty-save-private-key_hu68e51681ba9eb17ed89b7f5af5d815ca_29325_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg media="(min-width: 640px)"><img width=694 height=581 src=/docs/guides/use-public-key-authentication-with-ssh/putty-save-private-key_hu68e51681ba9eb17ed89b7f5af5d815ca_29325_694x0_resize_q71_bgfafafc_catmullrom_2.jpg loading=eager alt="Saving the private key." title="Saving the private key." class=w-full></picture></figure></p></li></ol><h3 id=manually-copy-the-ssh-key-with-putty>Manually Copy the SSH Key with PuTTY</h3><ol><li><p>Launch <code>putty.exe</code>. Find the <strong>Connection</strong> tree in the Category window, expand <strong>SSH</strong> and select <strong>Auth</strong>. Click <strong>Browse</strong> and navigate to the private key you created above:</p><p><figure><picture><source srcset=/docs/guides/use-public-key-authentication-with-ssh/putty-private-key-location_huc47b06dca4b191b973671cb326158b63_15170_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg media="(min-width: 640px)"><img width=694 height=677 src=/docs/guides/use-public-key-authentication-with-ssh/putty-private-key-location_huc47b06dca4b191b973671cb326158b63_15170_694x0_resize_q71_bgfafafc_catmullrom_2.jpg loading=eager alt="Enter the private key location." title="Enter the private key location." class=w-full></picture></figure></p></li><li><p>Scroll back to the top of the Category window and click <strong>Session</strong>. Enter the hostname or IP address of your Linode. PuTTY&rsquo;s default TCP port is <code>22</code>, the
<a href=https://en.wikipedia.org/wiki/Internet_Assigned_Numbers_Authority target=_blank>IANA</a> assigned port for SSH traffic. Change it if your server is listening on a different port. Name the session in the <strong>Saved Sessions</strong> text bar and click <strong>Save</strong>:</p><p><figure><picture><source srcset=/docs/guides/use-public-key-authentication-with-ssh/putty-session-window_hu584542c1e5242f77d5bbdc4dcdc0097d_17064_1388x0_resize_q71_bgfafafc_catmullrom_2.jpg media="(min-width: 640px)"><img width=694 height=673 src=/docs/guides/use-public-key-authentication-with-ssh/putty-session-window_hu584542c1e5242f77d5bbdc4dcdc0097d_17064_694x0_resize_q71_bgfafafc_catmullrom_2.jpg loading=eager alt="Saving your connection information." title="Saving your connection information." class=w-full></picture></figure></p></li><li><p>Click the <strong>Open</strong> button to establish a connection. You are prompted to enter a login name and password for the remote server.</p></li><li><p>Once you&rsquo;re logged in to the remote server, configure it to authenticate with your SSH key pair instead of a user&rsquo;s password. Create an <code>.ssh</code> directory in your home directory on your Linode, create a blank <code>authorized_keys</code> file inside, and set their access permissions:</p><pre><code>mkdir -p ~/.ssh &amp;&amp; touch ~/.ssh/authorized_keys
chmod 700 ~/.ssh &amp;&amp; chmod 600 ~/.ssh/authorized_keys
</code></pre></li><li><p>Open the <code>authorized_keys</code> file with the text editor of your choice (
<a href=/docs/quick-answers/linux/use-nano-to-edit-files-in-linux/><code>nano</code>, for example</a>). Then, paste the contents of your public key that you copied in step one on a new line at the end of the file.</p></li><li><p>Save, close the file, and exit PuTTY.</p></li><li><p><a href=#connect-to-the-remote-server-with-putty>Verify that you can log in</a> to the server with your key.</p></li></ol><h3 id=manually-copy-the-ssh-key-with-winscp>Manually Copy the SSH Key with WinSCP</h3><p>Uploading a public key from Windows can also be done using
<a href=http://winscp.net/ target=_blank>WinSCP</a>:</p><blockquote class=callout style=border-color:#d30000;background-color:rgba(211,0,0,.1)><strong class=callout-title>Caution</strong><div class=leading-tight>These instructions will overwrite any existing contents of the <code>authorized_keys</code> file on your server. If you have already set up other public keys on your server, use the
<a href=#manually-copy-the-ssh-key-with-putty>PuTTY</a> instructions instead.</div></blockquote><ol><li><p>In the login window, enter your Linode&rsquo;s public IP address as the hostname, the user you would like to add your key to, and your user&rsquo;s password. Click <strong>Login</strong> to connect.</p></li><li><p>Once connected, WinSCP shows two file tree sections. The left shows files on your local computer and the right shows files on your Linode. Using the file explorer on the left, navigate to the file where you saved your public key in Windows. Select the public key file and click <strong>Upload</strong> in the toolbar above.</p></li><li><p>You are prompted to enter a path on your Linode where you want to upload the file. Upload the file to <code>/home/your_username/.ssh/authorized_keys</code>.</p></li><li><p><a href=#connect-to-the-remote-server-with-putty>Verify that you can log in</a> to the server with your key.</p></li></ol><h3 id=connect-to-the-remote-server-with-putty>Connect to the Remote Server with PuTTY</h3><p>Start PuTTY and <strong>Load</strong> your saved session. You are be prompted to enter your server user&rsquo;s login name as before. However, this time you are prompted for your private SSH key&rsquo;s <em>passphrase</em> rather than the <em>password</em> for your server&rsquo;s user. Enter the passphrase and press <strong>Enter</strong>.</p><h2 id=upload-your-ssh-key-to-linode-cloud-manager>Upload Your SSH Key to Linode Cloud Manager</h2><p>To use your SSH key when deploying new Linodes, you must first upload it to your account. This can be done through the Cloud Manager by following the
<a href=/docs/products/tools/cloud-manager/guides/manage-ssh-keys/#add-a-public-key data-turbolinks=false>Manage SSH Keys > Add a Public Key</a> guide. For instructions on selecting an SSH key when deploying a Compute Instance see
<a href=/docs/guides/creating-a-compute-instance/#create-a-password-and-add-ssh-keys data-turbolinks=false>Creating a Compute Instance > Create a Password and Add SSH Keys</a>.</p><h2 id=is-it-safe-to-share-public-ssh-key>Is it Safe to Share Public SSH Key?</h2><p>Yes, it is safe to share your public SSH key with others. Public keys usually stored as <code>id_rsa.pub</code> are used to log into other servers. If anyone else has your public SSH keys on their server and they add them, you can log into their servers.</p><blockquote class=callout style=border-color:#d30000;background-color:rgba(211,0,0,.1)><strong class=callout-title>Caution</strong><div class=leading-tight>Do not confuse <strong>private</strong> SSH keys with <strong>public</strong> SSH keys. <strong>Private</strong> SSH keys should be kept safe and secure, unlike <strong>public</strong> SSH keys.</div></blockquote><h2 id=how-secure-is-ssh-key-authentication>How Secure is SSH Key Authentication?</h2><p>SSH key authentication is very secure. In addition to allowing secure remote authentication, it also brings its ability to withstand brute force attacks. Typically, passwords sent over any network can be vulnerable to these brute force attacks. With SSH key authentication, signed messages are exchanged using SSH keys that are up to 4096 bits in length, which is equivalent to a 20 character password.</p><p>SSH keys are machine-generated, and not human-generated. Human bias towards certain strings and numbers has proven to increase vulnerability in secure systems as opposed to machine-generated keys.</p><p>What makes SSH even more secure is the fact that you can easily add a
<a href=#ssh-private-key-passphrases>passphrase</a> on top of your SSH key authentication. This is also commonly referred to as multi-factor authentication or MFA.</p><h2 id=retrieve-your-public-key-from-your-private-key>Retrieve Your Public Key from Your Private Key</h2><p>You can regenerate your public key as long as you have access to your private key. To retrieve your public key from your private key, use the command shown below on the system that stores your private key. Replace <code>/home/your_username/id_rsa</code> with your own private key&rsquo;s path.</p><pre><code>ssh-keygen -y -f /home/example_user/.ssh/id_rsa
</code></pre><p>Issuing the previous command generates the public key and it is displayed as output:</p><pre class="file dark"><code>ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC8r0&#43;yVFLxaxo0a0BPmcq8jR4PPxsK06bLidEoVFpByeL5Iwvjwkan26&#43;N&#43;fBxLE9iyzlxHqGWyXyY&#43;NVdQMamcCfN&#43;v1zwqQpcV2PtI9yTqDY42VqBjPJVFvC&#43;yIsTEZbIyebCHCvZmAmNbT9IqHr4Cgr0UCIm9nJJOB2PmmHGi66tMIadwfMBP9z21bB1zPZkvFSG47r265W7hPhb5CKpu5zsDUYzIAEGjkHeioTyJAt8DTAmtKCh2pMBPOigPIRoLmOsvC&#43;RVsx11scnL8Cny95Vp2PQYJSaCeFlgUfVTcch00tjE7cUR2jeAy2Q0ZeosQsdLFTUO&#43;tTri2TpHuXyNfUdhliBznExCWaiQNoUdB1twbJoAxf1W/KhZNbKfqEg8N5/4Qu7QQfyR1LKDAeWpsqdF8Q&#43;lCaIFvE859jr3KhBGZSSi6XL5D7xRd1IpSmO5E2tsD5HsncfvKV07D9Ipa2BGRAXzn9iL4Gf3Q2ug6N6/9unXNh6NF0NjfgreqK1a27WGaO5CjBZ2r20M34lrisKiFepcqg7B4MXPlwcqbGTfe9LKTc6Tw57jrCLSArNN2Ip8CpI8IY6m2U0jfPyaqCH9ZjhHUr9NdSzJuXI7&#43;Rc9qXU4AzJ7uD8LO0GjQ== example_user@192.0.2.0</code></pre><p>Copy the public key to a new file named <code>id_rsa.pub</code> in your home folder&rsquo;s <code>.ssh</code> directory (i.e <code>/home/example_user/.ssh/id_rsa.pub</code>). You can also copy the public key to a remote server, if needed. See this guide&rsquo;s
<a href=/docs/guides/use-public-key-authentication-with-ssh/#upload-your-public-key data-turbolinks=false>Upload Your Public Key</a> section for more details.</p><h2 id=disable-password-authentication>Disable Password Authentication</h2><p>The SSH daemon on a Linux server allows you to configure and fine-tune its behavior and security settings. If you have set up SSH keys for all users who need to authenticate to a server, you can disable password authentication in order to further secure the server. While this is a recommended step to take when hardening your server, prior to disabling password authentication, you should make sure that you can reliably access your server using SSH key-pair authentication. To learn how to disable password authentication on a Linux server, see the
<a href=/docs/guides/set-up-and-secure/#ssh-daemon-options data-turbolinks=false>SSH Daemon Options</a> section of our
<a href=/docs/guides/set-up-and-secure/>Setting Up and Securing a Compute Instance</a> guide.</p><h2 id=troubleshooting>Troubleshooting</h2><p>If your SSH connections are not working as expected, or if you have locked yourself out of your system, review the
<a href=/docs/guides/troubleshooting-ssh/>Troubleshooting SSH</a> guide for troubleshooting help.</p><h2 id=next-steps>Next Steps</h2><p>After you set up your SSH keys and confirm they are working as expected, review our
<a href=/docs/guides/set-up-and-secure/#ssh-daemon-options data-turbolinks=false>Setting Up and Securing a Compute Instance</a> guide for instructions on disabling password authentication for your server.</p></div><div><p class="pt-2 md:pt-6 text-basicgray">This page was originally published on
<time datetime=2011-04-05T00:00:00+00:00>Tuesday, April 5, 2011.</time></p></div><div class="block mt-8"><div class="flex flex-wrap content-center hide-if-no-js" x-data={}><a @click="$store.search.query.addFilter('tags', 'ssh'); $store.nav.openSearchPanel(true);" class="bg-selected cursor-pointer border rounded-sm border-gray-500 text-basicgray text-sm leading-4 uppercase p-1 mb-1 mr-1" style=letter-spacing:.5px data-testid=link-tag-ssh>ssh</a>
<a @click="$store.search.query.addFilter('tags', 'security'); $store.nav.openSearchPanel(true);" class="bg-selected cursor-pointer border rounded-sm border-gray-500 text-basicgray text-sm leading-4 uppercase p-1 mb-1 mr-1" style=letter-spacing:.5px data-testid=link-tag-security>security</a></div></div><div class="flex md:hidden flex-initial mt-4"><div class="flex justify-start space-x-2" x-data='lncDropdowns([{"open":false},{"open":false}])' @click.away=closeAll()><div x-transition.opacity x-show=!isHidden(0) x-cloak><div class="relative inline-block text-left"><div><span class=rounded-sm><button type=button aria-label=open @click=toggleOpen(0) :class="{ '': isOpen(0)}" class="btn-icon inline-flex w-full px-4 py-2 md:px-2 md:py-1 text-sm leading-4 font-medium text-gray-700 focus:outline-none active:bg-gray-50 active:text-titlecolor transition ease-in-out duration-150"><svg class="fill-current text-textcolor w-4 h-4"><use href="#icon--github"/></svg><div x-show=isOpen(0)><svg class="fill-current text-textcolor -mr-1 ml-2 h-4 w-4"><use href="#icon--arrow-up"/></svg></div><div x-show=!isOpen(0)><svg class="fill-current text-textcolor -mr-1 ml-2 h-4 w-4"><use href="#icon--arrow-down"/></svg></div></button></span></div><ul iv x-transition x-show=isOpen(0) class="border border-gray-300 origin-top-right absolute right-0 m-0 mt-2 py-2 z-10 rounded-sm bg-white list-none" x-cloak><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: Issue Report')" href="https://github.com/linode/docs/issues/new?title=How%20to%20Use%20SSH%20Public%20Key%20Authentication%20Proposed%20Changes&body=Link%3A%C2%A0https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/%0A%23%23%20Issue%0A%0A%23%23%20Suggested%20Fix%0A&labels=inaccurate%20guide" target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900">Report an Issue</a></li><li class=block><a href=https://github.com/linode/docs/blob/develop/docs/guides/security/authentication/use-public-key-authentication-with-ssh/index.md target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900">View File</a></li><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: File Edit')" href=https://github.com/linode/docs/edit/develop/docs/guides/security/authentication/use-public-key-authentication-with-ssh/index.md target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900">Edit File</a></li></ul></div></div><div x-transition.opacity x-show=!isHidden(1) x-cloak><div class="relative inline-block text-left"><div><span class=rounded-sm><button type=button aria-label=open @click=toggleOpen(1) :class="{ '': isOpen(1)}" class="btn-icon inline-flex w-full px-4 py-2 md:px-2 md:py-1 text-sm leading-4 font-medium text-gray-700 focus:outline-none active:bg-gray-50 active:text-titlecolor transition ease-in-out duration-150"><svg class="fill-current text-textcolor w-4 h-4"><use href="#icon--share"/></svg><div x-show=isOpen(1)><svg class="fill-current text-textcolor -mr-1 ml-2 h-4 w-4"><use href="#icon--arrow-up"/></svg></div><div x-show=!isOpen(1)><svg class="fill-current text-textcolor -mr-1 ml-2 h-4 w-4"><use href="#icon--arrow-down"/></svg></div></button></span></div><ul iv x-transition x-show=isOpen(1) class="border border-gray-300 origin-top-right absolute right-0 m-0 mt-2 py-2 z-10 rounded-sm bg-white list-none" x-cloak><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: Twitter Share')" href="https://twitter.com/share?url=https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/&via=linode&text=How%20to%20Use%20SSH%20Public%20Key%20%e2%80%a6" target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900"><svg class="fill-current text-gray-400 h-5 w-5 mr-2"><use href="#icon--twitter"/></svg>Share on Twitter</a></li><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: Facebook Share')" href="http://www.facebook.com/sharer.php?u=https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/" target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900"><svg class="fill-current text-gray-400 h-5 w-5 mr-2"><use href="#icon--facebook"/></svg>Share on Facebook</a></li><li class=block><a @click="$store.nav.analytics.handler.convertObject(document.body.dataset.objectid,
'DOCS: Hacker News Share')" href="https://news.ycombinator.com/submitlink?u=https://www.linode.com/docs/guides/use-public-key-authentication-with-ssh/&t=How%20to%20Use%20SSH%20Public%20Key%20Authentication" target=_blank rel=noopener class="flex justify-start px-4 py-1 text-sm leading-5 whitespace-nowrap
text-gray-700 hover:text-gray-900 focus:outline-none focus:bg-gray-100 focus:text-gray-900"><svg class="fill-current text-gray-400 h-5 w-5 mr-2"><use href="#icon--hackernews"/></svg>Share on Hacker News</a></li></ul></div></div></div></div><div class=hide-if-no-js><hr class=my-8><form data-turbo=false x-data={} :action="'https://delighted.com/t/iVc7nAYL?referrer=' + encodeURIComponent(window.location.pathname)" method=post target=_blank novalidate><div class="flex flex-col items-center"><h2 id=delighted>Your Feedback Is Important</h2><p class="text-base text-titlecolor md:text-lg mb-6 mt-2 text-center">Let us know if this guide made it easy to get the answer you needed.</p><button type=submit class="btn p-4 rounded-md border-2 border-gray-400 hover:border-brand hover:text-brand text-sm sm:text-lg" value=Feedback name=feedback>
Provide Feedback</button></div></form><hr class=mt-8><div class="flex justify-between bg-gray-300 pull-out items-center rounded-none md:rounded-md px-4 md:px-8 py-6 mt-8"><div class="font-regular tracking-normal"><header class="font-bold text-lg mb-4">Join the conversation.</header><div>Read other comments or post your own below. Comments must be respectful,
constructive, and relevant to the topic of the guide. Do not post external
links or advertisements. Before posting, consider if your comment would be
better addressed by contacting our
<a href=https://www.linode.com/support/>Support team</a> or asking on
our
<a href=https://www.linode.com/community/questions/>Community Site</a>.</div></div></div><div class=pt-10 x-data="{ visible: false }" x-intersect.once="visible = true"><template x-if="$store.nav.trustecm.functional && (visible || (window.location.hash.startsWith('#comment-')))"><div><div x-data="lncDisqus('linode-1', lnPageInfo)" x-init=initDisqus()><div id=disqus_thread></div><noscript>Please enable JavaScript to view the
<a href=http://disqus.com/?ref_noscript>comments powered by Disqus.</a></noscript><a href=http://disqus.com class=dsq-brlink>comments powered by
<span class=logo-disqus>Disqus</span></a></div></div></template></div></div></div></div></div></section></div></main><div id=footer class="border-t-gray z-50" x-ignore><div class=c-site-footer><svg xmlns="http://www.w3.org/2000/svg" style="display:none"><symbol id="icon--github" viewBox="0 0 496 512"><path fill="currentcolor" d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6.0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6.0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3.0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1.0-6.2-.3-40.4-.3-61.4.0.0-70 15-84.7-29.8.0.0-11.4-29.1-27.8-36.6.0.0-22.9-15.7 1.6-15.4.0.0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5.0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9.0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4.0 33.7-.3 75.4-.3 83.6.0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6.0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9.0-6.2-1.4-2.3-4-3.3-5.6-2z"/></symbol><symbol id="icon--instagram" viewBox="0 0 448 512"><path fill="currentcolor" d="M224.1 141c-63.6.0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1.0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9.0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9.0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9.0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9.0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8.0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"/></symbol><symbol id="icon--linkedin" viewBox="0 0 448 512"><path fill="currentcolor" d="M416 32H31.9C14.3 32 0 46.5.0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6.0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3.0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2.0 38.5 17.3 38.5 38.5.0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6.0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2.0 79.7 44.3 79.7 101.9V416z"/></symbol><symbol id="icon--youtube" viewBox="0 0 576 512"><path fill="currentcolor" d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78.0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></symbol><symbol id="icon--twitter" viewBox="0 0 512 512"><path fill="currentcolor" d="M459.37 151.716c.325 4.548.325 9.097.325 13.645.0 138.72-105.583 298.558-298.558 298.558-59.452.0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055.0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421.0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391.0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04.0-57.828 46.782-104.934 104.934-104.934 30.213.0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></symbol></svg><div class="o-layout__row c-site-footer__primary"><div class=o-layout__colset><div class=o-layout__col><div class="o-layout__module c-identity"><a class=c-identity__link href=https://www.linode.com target=_self itemprop=url><img width=160 height=55 alt="Linode - Akamai Cloud Computing Logo" class=c-identity__image src="https://www.linode.com/wp-content/themes/linode-website-theme/images/linode-akamai-logo.svg?ver=1661285658" itemprop=image data-no-lazy=1></a></div><div class="o-layout__module c-copyright">© 2003-2022 Linode LLC.<br>All rights reserved.</div><div class="o-layout__module c-social"><nav class=o-menu><h4 class=o-menu__heading>Follow Us</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://twitter.com/linode><svg class="o-menu__icon"><use xlink:href="#icon--twitter"/></svg><span class=o-menu__title>Twitter</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.instagram.com/linode/><svg class="o-menu__icon"><use xlink:href="#icon--instagram"/></svg><span class=o-menu__title>Instagram</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.youtube.com/linode><svg class="o-menu__icon"><use xlink:href="#icon--youtube"/></svg><span class=o-menu__title>YouTube</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linkedin.com/company/linode/><svg class="o-menu__icon"><use xlink:href="#icon--linkedin"/></svg><span class=o-menu__title>LinkedIn</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://github.com/linode/><svg class="o-menu__icon"><use xlink:href="#icon--github"/></svg><span class=o-menu__title>GitHub</span></a></li></ul></nav></div><div class="o-layout__module c-extra"><div id=teconsent></div></div></div><div class=o-layout__col><div class=o-layout__module><nav class=o-menu><h4 class=o-menu__heading>Why Linode</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/choosing-linode/><span class=o-menu__title>Choosing Linode</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/support-experience/><span class=o-menu__title>Support Experience</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/predictable-pricing/><span class=o-menu__title>Predictable Pricing</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/cloud-simplified/><span class=o-menu__title>Cloud Simplified</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/free-bundled-services/><span class=o-menu__title>Free Bundled Services</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/global-infrastructure/><span class=o-menu__title>Global Infrastructure</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/series/craft-of-code/><span class=o-menu__title>Customer Stories</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-business/><span class=o-menu__title>Linode for Business</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/alternative-cloud-provider/><span class=o-menu__title>Alternative Cloud</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/compare/><span class=o-menu__title>Linode vs. Competitors</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/open-cloud/><span class=o-menu__title>Open Cloud</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/what-is-cloud-computing/><span class=o-menu__title>What is Cloud Computing?</span></a></li></ul></nav></div><div class=o-layout__module><nav class=o-menu><h4 class=o-menu__heading>Company</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/about/><span class=o-menu__title>About</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/leadership/><span class=o-menu__title>Leadership</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/partners/><span class=o-menu__title>Partners</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/press/><span class=o-menu__title>Press Center</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/company/careers/><span class=o-menu__title>Careers</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/legal/><span class=o-menu__title>Legal</span></a></li></ul></nav></div></div><div class=o-layout__col><div class=o-layout__module><nav class=o-menu><h4 class=o-menu__heading>Products</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/><span class=o-menu__title>Products Overview</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/dedicated-cpu/><span class=o-menu__title>Dedicated CPU</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/shared/><span class=o-menu__title>Shared CPU</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/high-memory/><span class=o-menu__title>High Memory</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/gpu/><span class=o-menu__title>GPU</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/bare-metal/><span class=o-menu__title>Bare Metal</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/kubernetes/><span class=o-menu__title>Kubernetes</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/block-storage/><span class=o-menu__title>Block Storage</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/object-storage/><span class=o-menu__title>Object Storage</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/backups/><span class=o-menu__title>Backups</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/databases/><span class=o-menu__title>Managed Databases</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/mongodb/><span class=o-menu__title>MongoDB</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/mysql/><span class=o-menu__title>MySQL</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/postgresql/><span class=o-menu__title>PostgreSQL</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/cloud-firewall/><span class=o-menu__title>Cloud Firewall</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/ddos/><span class=o-menu__title>DDoS Protection</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/dns-manager/><span class=o-menu__title>DNS Manager</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/nodebalancers/><span class=o-menu__title>NodeBalancers</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/vlan/><span class=o-menu__title>VLAN</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/managed/><span class=o-menu__title>Managed</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/pro-services/><span class=o-menu__title>Professional Services</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/cloud-manager/><span class=o-menu__title>Cloud Manager</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/linode-api/><span class=o-menu__title>API</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/cli/><span class=o-menu__title>CLI</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/linode-terraform-provider/><span class=o-menu__title>Terraform Provider</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/products/linode-ansible-collection/><span class=o-menu__title>Ansible Collection</span></a></li></ul></nav></div></div><div class=o-layout__col><div class=o-layout__module><nav class=o-menu><h4 class=o-menu__heading>Solutions</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/solutions/><span class=o-menu__title>Solutions Overview</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-digital-agencies/><span class=o-menu__title>Digital Agency</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/elearning-solutions/><span class=o-menu__title>eLearning</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-higher-education/><span class=o-menu__title>Higher Education</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/machine-learning-solutions/><span class=o-menu__title>Machine Learning</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/mgd-hosting-solutions/><span class=o-menu__title>Managed Hosting</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/multicloud/><span class=o-menu__title>Multicloud</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-saas/><span class=o-menu__title>SaaS</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/security-solutions/><span class=o-menu__title>Security Solutions</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/video-streaming-solutions/><span class=o-menu__title>Video Streaming</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-website-hosting/><span class=o-menu__title>Website Hosting</span></a></li></ul></nav></div><div class=o-layout__module><nav class=o-menu><h4 class=o-menu__heading>Marketplace</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/marketplace/apps/><span class=o-menu__title>Browse Marketplace</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/marketplace/app-partners/><span class=o-menu__title>Submit Marketplace App</span></a></li></ul></nav></div><div class=o-layout__module><nav class=o-menu><h4 class=o-menu__heading>Pricing</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/pricing/><span class=o-menu__title>Pricing List</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/estimator/><span class=o-menu__title>Cloud Estimator</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/cloud-pricing-calculator/><span class=o-menu__title>Cloud Pricing Calculator</span></a></li></ul></nav></div></div><div class=o-layout__col><div class=o-layout__module><nav class=o-menu><h4 class=o-menu__heading>Community</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/cloud-computing-community/><span class=o-menu__title>Community Overview</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/community/questions/><span class=o-menu__title>Q&A</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/developers/><span class=o-menu__title>Developer Portal</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/blog/><span class=o-menu__title>Blog</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/events/><span class=o-menu__title>Events</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/hackathons/><span class=o-menu__title>Hackathons</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/content/><span class=o-menu__title>Content Resources</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/lp/affiliate-program/><span class=o-menu__title>Affiliate Program</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/green-light/><span class=o-menu__title>Beta Program</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/referral-program/><span class=o-menu__title>Customer Referral Program</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/linode-for-startups/><span class=o-menu__title>Startup Program</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://linodestore.com/products><span class=o-menu__title>Swag Store</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/docs/><span class=o-menu__title>Documentation</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/distributions/><span class=o-menu__title>Distributions</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/cloud-computing-terms/><span class=o-menu__title>Cloud Computing Terms</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/promotions/><span class=o-menu__title>Promotional Offers</span></a></li></ul></nav></div></div><div class=o-layout__col><div class=o-layout__module><nav class=o-menu><h4 class=o-menu__heading>Contact</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://www.linode.com/support/><span class=o-menu__title>Support</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://status.linode.com><span class=o-menu__title>System Status</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://login.linode.com/login><span class=o-menu__title>Log in</span></a></li></ul></nav></div><div class="o-layout__module c-social"><nav class=o-menu><h4 class=o-menu__heading>Follow Us</h4><ul class=o-menu__list><li class=o-menu__item><a class=o-menu__link href=https://twitter.com/linode><svg class="o-menu__icon"><use xlink:href="#icon--twitter"/></svg><span class=o-menu__title>Twitter</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.instagram.com/linode/><svg class="o-menu__icon"><use xlink:href="#icon--instagram"/></svg><span class=o-menu__title>Instagram</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.youtube.com/linode><svg class="o-menu__icon"><use xlink:href="#icon--youtube"/></svg><span class=o-menu__title>YouTube</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://www.linkedin.com/company/linode/><svg class="o-menu__icon"><use xlink:href="#icon--linkedin"/></svg><span class=o-menu__title>LinkedIn</span></a></li><li class=o-menu__item><a class=o-menu__link href=https://github.com/linode/><svg class="o-menu__icon"><use xlink:href="#icon--github"/></svg><span class=o-menu__title>GitHub</span></a></li></ul></nav></div></div></div></div></div></div><div id=consent_blackbar></div><script src=/docs/jslibs/instantpage/instantpage.min.6f31bd4314fef1e53fc26468bd34861aa42aea1ad16a2452bb65cb9d8e655fb7.js integrity="sha256-bzG9QxT+8eU/wmRovTSGGqQq6hrRaiRSu2XLnY5lX7c="></script><div x-data={} style=display:none><template x-if=$store.nav.trustecm.functional><script src=/docs/linode/footer-inline.2eb6c4c70a732e9824dc325a83473dae3eeb9ea452f86523e504e114b0e2af20.js integrity="sha256-LrbExwpzLpgk3DJag0c9rj7rnqRS+GUj5QThFLDiryA="></script></template></div></div></body><template id=language-switcher-template><aside id=language-switcher x-data=lncLanguageSwitcher x-show=show @turbo:render.window=onTurboRender() data-wg-notranslate tabindex=0 :aria-expanded=open role=listbox class="weglot_switcher wg-drop country-selector wg-mouse-click'" :class="{'closed': !open, 'weg-openleft': open}" aria-activedescendant=weglot-language-en aria-label="Language selected: English"><div @click="$root.focus(); open = !open" @click.away="open = false" :data-l=currentLanguage().lang :class="`wgcurrent wg-li ${currentLanguage().lang}`"><a href=# tabindex=-1 target=_self role=none :id="`weglot-language-${currentLanguage().lang}`" x-text=currentLanguage().name></a></div><ul role=none><template x-for="language in languages" :key=language.lang><li :class="`wg-li ${language.lang}`" :data-l=language.lang role=none :id="`wg-${language.lang}`"><a @click=switchLanguage(language.lang) :id="`weglot-language-${language.lang}`" role=option x-text=language.name></a></li></template></ul></aside></template></html>