kbfs icon indicating copy to clipboard operation
kbfs copied to clipboard

How to use custom domain with keybase.pub?

Open peeyushsrj opened this issue 8 years ago • 14 comments
trafficstars

I have searched on google and previous issues on keybase repo. but didn't find anything similar. So I am opening an issue regarding this. What IP address should I use to set an A Record in DNS? Also what about setting up CNAME record? I want to host my files from user.keybase.pub.

peeyushsrj avatar Feb 10 '17 00:02 peeyushsrj

cc: @malgorithms

strib avatar Feb 13 '17 18:02 strib

hmm, well, on one hand, you could just run your own server and serve your /keybase/public directory as your content. But I'm guessing your goal is to do no self-hosting? Funny, no one had asked us for this yet.

I know way less about DNS than probably anyone on the team. let me ask around what the others think. I'm not sure what considerations we have. Be advised, at the very least, that keybase.pub isn't running on the fastest hardware these days, and we occasionally take it down / break it.

malgorithms avatar Feb 13 '17 18:02 malgorithms

@malgorithms You might offer such kind of service, maybe as paid plan. Or maybe make keybase.pub as static files server, which usually won't have performance issues.

Also this would be very intuitive as, editing files on keybase public directory would be served on domain. (I mean less tedious than those git push or scp etc etc.)

peeyushsrj avatar Feb 13 '17 18:02 peeyushsrj

we have to think about how to handle the TLS, so your site can be secure. otherwise, what's the point of using all this crypto, if it's finally just served over http and not https.

from the internal discussion of DNS:

For the DNS record side, there's also a problem. There are two standard DNS record types: A => IP address CNAME => relative alias to another domain But CNAMEs aren't supposed to be used on the root of a domain, just on subdomains. So there's a new non-standard DNS record type called ALIAS that seems to work for this, but it isn't supported by many DNS hosts.

malgorithms avatar Feb 13 '17 19:02 malgorithms

CNAME record is used (with A record) to set up custom domain on Tumblr, that's why I mentioned. Might be helpful for keybase.pub implementing custom domain. https://www.namecheap.com/support/knowledgebase/article.aspx/9247/2208/how-do-i-use-my-domain-with-my-tumblr-account

peeyushsrj avatar Feb 13 '17 19:02 peeyushsrj

Yeah, we can't use an A record at the moment, because the IP that keybase.pub hosted on isn't fixed.

The TLS problem seems harder to solve. Tumblr custom domains do not support TLS.

cjb avatar Feb 13 '17 19:02 cjb

@malgorithms Greetings, sir. I only just recently discovered Keybase, and KBFS (and loving them thus far). but I've been playing with Caddy Web Server recently (also written in Go) and found it quite thoroughly slick and useful.

Upon reading this "issue", I thought Caddy might be of possible use with your TLS "problem" here?

It can auto-grab "Let's Encrypt" certs and service a domain via TLS quite easily and almost entirely automagically. It also supports Markdown (and Hugo static websites) natively, can serve a local devmode server via a dead-simple "Caddyfile" configuration file, and a host of other nifty tricks which might work out rather handy paired up with the /keybase/public/ folder.

Well, that there's my "two cents" in hopes of being helpful…

:1st_place_medal: Also, thanks so very much for this fantastic tool you're creating here! The world absolutely needs more stuff like this for sure. Anything that simplifies secure collaboration and communication for "the masses" can only be a good thing. Much kudos and wishes of great success to you and your team! :+1:

blooalien avatar Feb 28 '17 19:02 blooalien

mb this help some one:

nginx virtualhost:

server {
    listen <port>;
    server_name your.domain.name;

    location / {
        proxy_pass  https://<login>.keybase.pub;
	proxy_set_header Host "<login>.keybase.pub";
	proxy_set_header X-Real-IP $remote_addr;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	proxy_set_header X-Forwarded-Proto https;
	proxy_redirect    off;
    }
}

im-kulikov avatar Mar 01 '17 22:03 im-kulikov

Can you just add a Web Redirect from your domain, it's not perfect but is a workaround.

JinOhChoi avatar Jul 16 '17 11:07 JinOhChoi

Sorry to bring up this old thread, but did anything for this ever get implemented? Just wondering since I just accidentally found this (as I just recently found out about Keybases encrypted git! Thank you for that one!) and if this was ever implemented I would love to know how to use it, so I can move my website from Gitlab to here.

Thanks!

TobiasDev avatar Aug 14 '18 06:08 TobiasDev

@TobiasDev if you join the keybasefriends chat group on Keybase, you can ask around in the #keybase-pages channel. We're not ready to post anything publicly yet though.

strib avatar Aug 14 '18 14:08 strib

Sorry to ask, but is keybasefriends the group name? Because when I search inside the app I can't find it.

TobiasDev avatar Aug 14 '18 14:08 TobiasDev

Yeah. Not sure why search wouldn't work, but here's a web link: https://keybase.io/team/keybasefriends

strib avatar Aug 14 '18 14:08 strib

Got it! Thanks. :) I searched in the people and not in the teams one... So was my fault for just being bad.

TobiasDev avatar Aug 14 '18 15:08 TobiasDev