{"id":604,"date":"2024-03-06T19:53:53","date_gmt":"2024-03-07T03:53:53","guid":{"rendered":"https:\/\/sinofool.net\/blog\/?p=604"},"modified":"2024-03-06T19:56:31","modified_gmt":"2024-03-07T03:56:31","slug":"remote-access-my-home-lab-from-tesla","status":"publish","type":"post","link":"https:\/\/sinofool.net\/blog\/archives\/604","title":{"rendered":"Remote access my home lab from Tesla"},"content":{"rendered":"\n<p>My home lab runs a few applications need remote access. I have wireguard tunnels setup for general use case, but when it come to Tesla in car experience, my journey started.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Personal Hotspot from mobile phone<\/h2>\n\n\n\n<p>This is the simplest solution, just connect to the wireguard tunnel and share the hotspot with Tesla.<\/p>\n\n\n\n<p>But this solution requires root access for Android and not working for iOS, it&#8217;s a quick prototype I started.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Mobile router + personal hotspot<\/h2>\n\n\n\n<p>After the prototype, I added a small travel router to the solution.<\/p>\n\n\n\n<p>I got a MikroTik mAP lite router, setup it connect to wireguard tunnel, use my personal hotspot for WAN, boardcast a new SSID for Tesla.<\/p>\n\n\n\n<p>This solution perfectly working, the router is very small and can be powered by USB port.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">IP whitelist<\/h2>\n\n\n\n<p>The next improvement I try is using the builtin network link. I setup a Discord bot, when access from unknow IP, it send me a message and let me approve or deny the future requests.<\/p>\n\n\n\n<p>But Tesla cellular network changes IP really fast, it usually takes 3-5 times before I can whitelist a stable IP address. Further more, the IP looks like NAT through Tesla networks, potential shared with other cars, it&#8217;s not 100% safe.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Authentik<\/h2>\n\n\n\n<p>The final solution is Authentik authentication and proxy the public request with authorization. I setup my accounts and disabled the registration. <\/p>\n\n\n\n<p>This is a balance of convenience and security.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Full screen<\/h2>\n\n\n\n<p>Lastly, I noticed there are some website provide a technique let the browser go full screen by jump through Youtube.<\/p>\n\n\n\n<p>But they all focused on content, I want personalization. So I created a small tool deployed <a href=\"https:\/\/carbookmark.com\" data-type=\"link\" data-id=\"https:\/\/carbookmark.com\">carbookmark.com<\/a>. Let me keep my own bookmark links for full screen experience.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>My home lab runs a few applications need remote access. I have wireguard tunnels setup for general use case, but when it come to Tesla in car experience, my journey started. Personal Hotspot from mobile phone This is the simplest solution, just connect to the wireguard tunnel and share the hotspot with Tesla. But this [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-604","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/posts\/604","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/comments?post=604"}],"version-history":[{"count":3,"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/posts\/604\/revisions"}],"predecessor-version":[{"id":611,"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/posts\/604\/revisions\/611"}],"wp:attachment":[{"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/media?parent=604"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/categories?post=604"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sinofool.net\/blog\/wp-json\/wp\/v2\/tags?post=604"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}