Tailscale serve மற்றும் funnel: எதை தேர்வு செய்வது?
Tailscale serve உங்கள் சேவையை tailnet-க்குள் மட்டும் பாதுகாப்பாக வைத்திருக்கும். Funnel அதை பொது இணையத்தில் வெளியிடும். எப்போது எதைப் பயன்படுத்த வேண்டும் மற்றும் ACL கொள்கைகளை அறிக.
tailscale serve மற்றும் funnel: URL-ஐ அணுகக்கூடியவர்கள் யார்
tailscale serve மற்றும் tailscale funnel ஆகியவற்றுக்கு இடையேயான வித்தியாசம், அவற்றை அணுகக்கூடிய பயனர்களைப் பொறுத்தது மட்டுமே. serve உங்கள் local port-க்கு ஒரு HTTPS (hypertext transfer protocol secure) front end-ஐ உருவாக்கி, அதை உங்கள் tailnet-க்குள் மட்டுமே வெளியிடும். funnel அதே local port-ஐ Tailscale இயக்கும் relay servers வழியாக ஒட்டுமொத்த பொது இணையத்திலும் (public internet) வெளியிடும். இந்த இரண்டு கட்டளைகளும் ஒரே மாதிரியான flags மற்றும் targets-ஐப் பயன்படுத்துகின்றன. ஒரு private dashboard-க்கும், உலகம் முழுவதும் அணுகக்கூடிய dashboard-க்கும் இடையே ஒரு வார்த்தை மட்டுமே வித்தியாசமாக உள்ளது.
இரண்டுமே உலாவிகள் (browsers) ஏற்கனவே நம்பும் ஒரு certificate-ஐ வழங்குகின்றன; இது ts.net-ல் முடிவடையும் பெயரில் இருக்கும். மேலும், உங்கள் VPS firewall-ல் எந்தவொரு inbound port-ஐயும் திறக்க வேண்டிய அவசியமில்லை. உங்கள் tailscaled daemon ஏற்கனவே tailnet-உடன் ஒரு இணைப்பைப் பேணுவதால், traffic அதன் வழியாகவே வந்து சேரும். ஒரு server-ஐ tailnet-ல் சேர்ப்பது ஒரு பணி; VPS-ஐ Tailscale exit node-ஆக இயக்குவது அல்லது தனியார் நெட்வொர்க்கிற்கான subnet router-ஐ விளம்பரப்படுத்துவது ஆகியவை அந்தப் பணியைச் செய்யும். ஏற்கனவே tailnet-ல் உள்ள ஒரு service-ஐ வெளியிடுவது இந்தப் பணியாகும்.
எந்தவொரு கட்டளையும் செயல்படுவதற்கு முன் உங்களுக்குத் தேவையானவை
- VPS-ல் Tailscale 1.38.3 அல்லது அதற்குப் பிந்தைய பதிப்பு இருக்க வேண்டும், மேலும் உங்கள் tailnet-ல் உள்நுழைந்திருக்க வேண்டும். இதை
tailscale versionமற்றும்tailscale statusமூலம் சரிபார்க்கவும். - MagicDNS இயக்கப்பட்டிருக்க வேண்டும். MagicDNS என்பது Tailscale-ன் உள்ளமைக்கப்பட்ட DNS (domain name system) ஆகும். இதுவே ஒரு கணினிக்கு வெறும்
100.xமுகவரிக்கு பதிலாகblog-vps.your-tailnet.ts.netபோன்ற ஒரு பெயரை வழங்குகிறது. - நிர்வாக கன்சோலின் (admin console) DNS பக்கத்தில், tailnet-க்கான HTTPS certificates இயக்கப்பட்டிருக்க வேண்டும். அது இல்லையெனில், உங்கள் port-க்கு முன்னால் வைப்பதற்குச் சான்றிதழ் இருக்காது.
funnel-க்கு மட்டும், tailnet policy கோப்பில்funnelnode attribute தேவை. பெரும்பாலான முதல் முயற்சிகள் இங்குதான் தோல்வியடைகின்றன, இது கீழே விளக்கப்பட்டுள்ளது.
இங்குள்ள ஒவ்வொரு கட்டளையும் sudo-ல் தொடங்குகிறது, ஏனெனில் CLI ஆனது root மட்டுமே எழுதக்கூடிய ஒரு socket வழியாக tailscaled-உடன் தொடர்பு கொள்கிறது. ஒரு பயனர் அதைத் தவிர்க்க அனுமதி வழங்க:
sudo tailscale set --operator=$USERtailscale serve மூலம் உங்கள் tailnet-ல் வெளியிடுதல்
serve-ஐ ஒரு local port-க்கு சுட்டிக்காட்டினால், அதுவே மற்ற வேலைகளைச் செய்துவிடும்.
sudo tailscale serve 3000Available within your tailnet:
https://amelie-workstation.pango-lin.ts.net
|-- / proxy http://127.0.0.1:3000
Press Ctrl+C to exit.வெறுமனே 3000 என்று குறிப்பிடுவது http://127.0.0.1:3000-க்கான சுருக்கமாகும். Tailscale அந்த machine-ன் tailnet முகவரியின் 443 port-ல் listen செய்யும், ts.net certificate மூலம் TLS (transport layer security)-ஐ terminate செய்யும், மேலும் plain HTTP-ஐ உங்கள் local port-க்கு forward செய்யும். உங்கள் application-க்கு certificate இருப்பதே தெரிய வேண்டியதில்லை; plain HTTP-ல் விட்டுவிடக்கூடிய admin panel-களுக்கு முன்னால் இதைப் பயன்படுத்துவதே இதன் முக்கிய நோக்கம்.
இப்போது கடைசி வரியைப் படியுங்கள்: Press Ctrl+C to exit. இந்த command foreground-ல் இயங்கும், அந்த mapping அந்த process-க்குள் மட்டுமே இருக்கும். Terminal-ஐ மூடினால் URL வேலை செய்வதை நிறுத்திவிடும், ஏனெனில் எதுவும் disk-ல் எழுதப்படவில்லை. --bg-ஐச் சேர்த்தால், அந்த mapping node-ன் serve config-ல் சேமிக்கப்படும்; இது terminal-ஐ மூடினாலும் அல்லது reboot செய்தாலும் நீடிக்காது.
sudo tailscale serve --bg 3000Serve என்பது port எண்ணை மட்டும் பெறுவதில்லை. --set-path ஒரு service-ஐ subpath-ன் கீழ் mount செய்யும், எனவே பல application-கள் ஒரே hostname-ஐப் பகிர்ந்து கொள்ள முடியும்:
sudo tailscale serve --bg --set-path=/grafana 3000
sudo tailscale serve --bg --set-path=/metrics 9090ஒரு target என்பது static files கொண்ட directory-ஆகவோ அல்லது ஏற்கனவே TLS-ல் இயங்கும் backend-ஆகவோ இருக்கலாம், அதை நீங்கள் சரிபார்க்க வேண்டிய அவசியமில்லை:
sudo tailscale serve --bg /srv/reports
sudo tailscale serve --bg https+insecure://localhost:8443இது HTTP-க்கு மட்டும் மட்டுப்படுத்தப்படவில்லை. --tcp=<port> ஒரு raw TCP (transmission control protocol) stream-ஐ forward செய்யும், மேலும் --tls-terminated-tcp=<port> உங்கள் node-ல் TLS-ஐ முடித்துவிட்டு plaintext-ஐ அனுப்பும். இது HTTP-யே பேசாத ஒரு service-க்கு முன்னால் நம்பகமான certificate-ஐ வைக்க உதவுகிறது:
sudo tailscale serve --bg --tls-terminated-tcp=443 tcp://127.0.0.1:9899Funnel ஏன் node attribute அமைக்கப்படவில்லை என்று கூறுகிறது?
இயல்பாகவே, ஒரு முழு tailnet-க்கும் Funnel முடக்கப்பட்டிருக்கும். முதல்முறை இயக்கும்போது இந்தச் செய்தி காட்டப்பட்டு செயல்முறை நின்றுவிடும்:
Funnel not available; "funnel" node attribute not set. See https://tailscale.com/kb/1223/tailscale-funnel/.கட்டளை சரியாகவே இருந்தது. Tailnet policy-ல் இந்த node-க்கு publish செய்வதற்கான அனுமதி வழங்கப்படாததால், relay-ஐத் தொடர்புகொள்வதற்கு முன்பே client அதை மறுத்துவிடுகிறது. Admin console-ல் உள்ள Access Controls பகுதிக்குச் சென்று, tailnet policy கோப்பைத் திருத்தி, பின்வரும் attribute-ஐச் சேர்க்கவும்:
"nodeAttrs": [
{
"target": ["autogroup:member"],
"attr": ["funnel"],
},
],autogroup:member என்பது tailnet-ல் உள்ள அனைத்து உறுப்பினர்களுக்கும் அனுமதி வழங்குகிறது. ஒரு குறிப்பிட்ட machine மட்டுமே publish செய்ய வேண்டும் என்றால், அந்த machine-க்கு tag இட்டு, அதற்குப் பதிலாக tag:public என்பதை இலக்காகக் கொள்ளவும். Policy-ஐச் சேமித்த பிறகு, funnel கட்டளையை மீண்டும் இயக்கவும்.
உங்கள் கணக்கு tailnet admin-ஆக இருந்தால், புதிய client-களில் ஒரு குறுக்குவழி உள்ளது: CLI ஆனது login.tailscale.com-ல் ஒரு consent URL-ஐக் காட்டும். அதைத் திறப்பதன் மூலம் HTTPS certificates செயல்படுத்தப்பட்டு, உங்களுக்காக அந்த attribute தானாகவே சேர்க்கப்படும். நீங்கள் admin இல்லை என்றால், அந்த URL உங்களுக்கு உதவாது. Policy அணுகல் உள்ள ஒருவர் அந்த மாற்றத்தைச் செய்ய வேண்டும்.
Tailscale funnel மூலம் இணையத்தில் வெளியிடுதல்
இந்த attribute அமைக்கப்பட்ட பிறகு, நீங்கள் ஏற்கனவே அறிந்த அதே கட்டளையை வேறு ஒரு verb-உடன் பயன்படுத்த வேண்டும்.
sudo tailscale funnel --bg 3000Available on the internet:
https://amelie-workstation.pango-lin.ts.net
|-- / proxy http://127.0.0.1:3000
Press Ctrl+C to exit.ஒவ்வொரு முறையும் அந்த முதல் வரியை கவனமாகப் படிக்கவும். Available within your tailnet மற்றும் Available on the internet ஆகியவையே ஒரு private service-க்கும் public service-க்கும் உள்ள ஒரே புலப்படும் வேறுபாடு; இவற்றை உருவாக்கும் கட்டளைகள் ஒரு வார்த்தை மட்டுமே மாறுபடும்.
ஆகஸ்ட் 2026 நிலவரப்படி, funnel ஆனது 443, 8443 அல்லது 10000 ஆகிய ports-களில் மட்டுமே இயங்கும். இயல்புநிலை 443 ஆகும், --https=8443 அல்லது --https=10000 ஆகியவை மாற்று வழிகளாகும். funnel relays இந்த குறிப்பிட்ட ports-களில் மட்டுமே இணைப்புகளை ஏற்பதால், வேறு எந்த port-ம் அனுமதிக்கப்படாது. இதனால்தான் ஒரு funnel URL எப்போதும் வெறும் hostname-ஆகவோ, அல்லது இறுதியில் :8443 இணைக்கப்பட்ட hostname-ஆகவோ இருக்கும்.
தற்போது என்னென்ன வெளியிடப்பட்டுள்ளன என்பதை எவ்வாறு பார்ப்பது?
ஊகிப்பதுதான் ஒரு dashboard ஒரு மாதம் முழுவதும் public-ஆக இருக்கக் காரணம். அதற்குப் பதிலாக node-ஐக் கேட்டுத் தெரிந்துகொள்ளுங்கள்.
tailscale serve status
tailscale funnel status
tailscale serve status --jsonஇரண்டு status கட்டளைகளும் ஒரே config-ஐத்தான் வாசிக்கின்றன, எனவே ஏதேனும் ஒன்றைப் பயன்படுத்தினால் முழு விவரமும் தெரியும். ஒரு script அல்லது scheduled check-க்குள் பயன்படுத்தும்போது --json வடிவத்தைப் பயன்படுத்துங்கள், ஏனெனில் சாதாரண output மனிதர்கள் படிப்பதற்காக உருவாக்கப்பட்டது. எதுவும் configure செய்யப்படவில்லை என்றால், உங்களுக்கு ஒரு வரி மட்டுமே கிடைக்கும்:
No serve configsetup செய்த பிறகு இது போன்ற output கிடைத்தால், mapping foreground-ல் உருவாக்கப்பட்டு, அந்த process முடிந்துவிட்டது என்று அர்த்தம். --bg மூலம் அதை மீண்டும் உருவாக்குங்கள்.
ஒரு mapping-ஐ நீக்க, அதை உருவாக்கிய அதே கட்டளையை மீண்டும் உள்ளிட்டு, இறுதியில் off-ஐச் சேர்க்கவும். node-ல் உள்ள அனைத்து serve மற்றும் funnel mapping-களையும் நீக்க, reset-ஐப் பயன்படுத்தவும்.
sudo tailscale funnel --https=443 3000 off
sudo tailscale serve resetஏதேனும் ஒரு கட்டளையைச் செய்த பிறகு, மீண்டும் tailscale serve status-ஐ இயக்கி, என்ன எஞ்சியுள்ளது என்பதைப் படியுங்கள்; அது நீங்கள் நினைத்ததைச் செய்துவிட்டது என்று நீங்களாகவே கருத வேண்டாம்.
நீங்கள் பெறுபவை மற்றும் நீங்கள் விட்டுக்கொடுப்பவை
இதன் நன்மைகள் உண்மையானவை, அதனால்தான் மக்கள் reverse proxy-க்கு பதிலாக இதைத் தேர்ந்தெடுக்கிறார்கள்.
- உலாவிகள் நம்பும் ஒரு certificate, உங்களுக்காகவே புதுப்பிக்கப்படும். ACME (automatic certificate management environment) client எதையும் நிறுவ வேண்டியதில்லை, புதுப்பிக்கும் பணியை (renewal job) மறக்க வேண்டிய அவசியமும் இல்லை.
- VPS firewall-ல் உள்வரும் port எதையும் திறக்க வேண்டியதில்லை.
tailscaledவெளிநோக்கி இணைப்பை ஏற்படுத்துகிறது, எனவே உங்கள் VPS-ல் உள்ள default-deny ufw firewall முன்பிருந்தது போலவே பாதுகாப்பாக இருக்கும். - DNS record எதையும் வாங்கவோ, சுட்டிக்காட்டவோ அல்லது காத்திருக்கவோ வேண்டியதில்லை.
- Port forwarding தேவையில்லை. பொது IP கொண்ட VPS-க்கு பதிலாக NAT (network address translation)-க்கு பின்னால் இருக்கும் ஒரு கணினிக்கு இதுவே முழுமையான தீர்வாகும்.
இதன் இழப்புகளும் உண்மையானவை, funnel-ஐப் பயன்படுத்தும்போது இவை அனைத்தையும் நீங்கள் எதிர்கொள்ள வேண்டும்.
- பெயர் உங்களுடையது அல்ல. பொதுப் பயனர்கள்
host.your-tailnet.ts.net-ஐப் பார்ப்பார்கள். Funnel-ல் custom domain வசதி இல்லை, எனவே இதற்கு முன்னால் உங்களால்app.example.com-ஐ வைக்க முடியாது. - பாதை உங்களுடையது அல்ல. நெட்வொர்க் போக்குவரத்து முதலில் ஒரு Tailscale relay-க்குச் செல்லும், அந்த relay உங்கள் node-க்கு tailnet வழியாக stream-ஐ proxy செய்யும். Funnel போக்குவரத்து வெளியிடப்படாத மற்றும் மாற்றியமைக்க முடியாத bandwidth வரம்புகளுக்கு உட்பட்டது என்று Tailscale குறிப்பிடுகிறது. எனவே, ஒரு குறிப்பிட்ட அளவை நம்புவதற்கு முன்பு உங்கள் throughput-ஐ நீங்களே அளந்து பாருங்கள்.
- கட்டுப்பாடுகள் இல்லை. நீங்கள் இயக்கும் reverse proxy-ல் access logs, rate limits, request size caps மற்றும் authentication போன்றவற்றைச் சேர்க்க முடியும். Funnel உங்களுக்கு ஒரு URL-ஐ மட்டுமே வழங்குகிறது. மற்ற அனைத்தும் உங்கள் application-க்குள்ளேயே இருக்க வேண்டும்.
- மேலே குறிப்பிட்டது போல, port பட்டியல் நிலையானது.
இந்த இரண்டு வசதிகளும் Tailscale இயக்கும் உள்கட்டமைப்பைச் சார்ந்தே இருக்கின்றன: ts.net பெயருக்கான certificate வழங்குதல் மற்றும் funnel relays. நீங்கள் self-hosted Headscale control server-ஐப் பயன்படுத்தத் திட்டமிட்டால், இந்த வசதிகள் அதனுடன் வரும் என்று கருத வேண்டாம். நீங்கள் பயன்படுத்தத் திட்டமிட்டுள்ள Headscale பதிப்பின் release notes-ஐச் சரிபார்க்கவும்.
எதைப் பயன்படுத்த வேண்டும்?
விதி சுருக்கமானது.
உள்நிலைத் தேவைகளுக்கு serve-ஐப் பயன்படுத்தவும்: நிர்வாக இடைமுகங்கள் (admin interfaces), டாஷ்போர்டுகள், குறியீட்டு முறைக்கு (indexing) உட்படக்கூடாத மெட்ரிக்ஸ் UI, அல்லது தளத்தின் ஸ்டேஜிங் நகல். Tailnet-ல் உறுப்பினராக இருப்பதே இதற்கான அணுகல் கட்டுப்பாடு (access control), இது மிகவும் பாதுகாப்பானது. Tailnet-ல் இல்லாத ஒரு சாதனத்தால் அந்தப் பெயரைத் தீர்மானிக்க (resolve) முடியாது.
டெமோ லிங்க், மூன்றாம் தரப்பினர் POST செய்ய வேண்டிய webhook receiver, அல்லது உருவாக்கத்தின் போது தேவைப்படும் OAuth callback ஆகியவற்றிற்கு funnel-ஐப் பயன்படுத்தவும். பொது HTTPS URL-ஐப் பெறுவதற்கான மிக வேகமான வழி இது, மேலும் ஒரு off கட்டளை மூலம் இதை முடித்துவிடலாம். பொது (public) என்றால் அது பொதுவானது என்பதை நினைவில் கொள்க: ஹோஸ்ட் பெயர் ரகசியமானது அல்ல, உள்நுழைவு இல்லாத ஒரு செயலிக்கு முன்னால் இருக்கும் funnel என்பது ஒரு திறந்த சேவையாகும். அதற்குப் பின்னால் எது இருந்தாலும், வெளிப்படுத்தப்பட்ட Ollama API endpoint-க்குத் தேவைப்படும் அதே கவனத்துடன், அது தனது சொந்த கோரிக்கைகளை அங்கீகரிக்க (authenticate) வேண்டும்.
Production என்று நீங்கள் கருதும் எதற்கும் உண்மையான reverse proxy-ஐப் பயன்படுத்தவும். உங்கள் டொமைன், உங்கள் சான்றிதழ், உங்கள் லாக் கோப்புகள், உங்கள் rate limits என அனைத்தும் உங்கள் கட்டுப்பாட்டில் இருக்க வேண்டும், கோரிக்கை பாதையில் வேறு யாரும் இருக்கக்கூடாது. Nginx, Caddy மற்றும் Traefik ஆகியவற்றை reverse proxy-ஆக ஒப்பிடுதல் என்ற கட்டுரை, எதைத் தேர்ந்தெடுப்பது என்பதை விளக்குகிறது.
தோல்விக்கான காரணங்கள் மற்றும் நீங்கள் காணக்கூடிய செய்திகள்
Funnel தொடங்க மறுக்கிறது. Funnel not available; "funnel" node attribute not set. என்பது ஒரு கொள்கை சார்ந்த சிக்கல், கட்டளை சார்ந்ததல்ல. tailnet கொள்கைக் கோப்பில் funnel பண்புக்கூறைச் சேர்த்து, சேமித்து, மீண்டும் முயற்சிக்கவும்.
இது வேலை செய்தது, ஆனால் இப்போது tailscale serve status என்பது No serve config என்று காட்டுகிறது. மேப்பிங் (mapping) முன்புறத்தில் (foreground) உருவாக்கப்பட்டது, அந்தச் செயல்முறை முடிந்துவிட்டது. அதே கட்டளையை --bg உடன் மீண்டும் இயக்கவும்.
பெயர் சரியாகத் தீர்க்கப்படுகிறது (resolves), ஆனால் எந்தப் பதிலும் இல்லை. Funnel நீங்கள் குறிப்பிட்ட இலக்குக்கு proxy செய்கிறது, எனவே அங்கே எந்தச் சேவையும் இயங்கவில்லை என்றால், proxy செய்வதற்கு எதுவும் இருக்காது. tailscaled இயங்கும் அதே கணினியில் ss -ltnp | grep 3000 மூலம் இதை உறுதிப்படுத்தவும். பெரும்பாலும், ஒரு container தனது port-ஐ 127.0.0.1-க்கு பதிலாக Docker bridge முகவரியில் வெளியிடுவதால் (publish) இந்தச் சிக்கல் ஏற்படுகிறது; அதாவது, நீங்கள் எதிர்பார்த்த இடத்தில் host-க்கு எந்த listener-ம் தெரிவதில்லை. Docker Compose networking எவ்வாறு செயல்படுகிறது என்பது வெளியிடப்பட்ட port உண்மையில் எங்கே அமைகிறது என்பதைக் காட்டுகிறது.
ts.net பெயரில் சான்றிதழ் பிழைகள் (Certificate errors). tailnet-க்கு HTTPS சான்றிதழ்கள் செயல்படுத்தப்படாமல் இருக்க அதிக வாய்ப்புள்ளது. நிர்வாகக் கன்சோலில் (admin console) அவற்றைச் செயல்படுத்தவும், பின்னர் சான்றிதழ் படிநிலையை மட்டும் தனியாக இயக்கவும்; அப்போதுதான் அதன் பிழைகள் serve வெளியீட்டுடன் குழப்பமடையாது:
sudo tailscale cert your-host.your-tailnet.ts.netFunnel மொபைல் டேட்டாவில் வேலை செய்கிறது, ஆனால் உங்கள் மடிக்கணினியில் வித்தியாசமாகச் செயல்படுகிறது. உங்கள் மடிக்கணினி tailnet-ல் இருப்பதால், MagicDNS அந்தப் பெயரை 100.x முகவரிக்குத் தீர்க்கிறது, எனவே நீங்கள் relay-ஐத் தொடாமலேயே நேரடியாகச் சேவையை அடைகிறீர்கள். இது சரியான செயல்பாடே, ஆனால் உங்கள் மடிக்கணினியால் பொது அணுகல் திறனை (public reachability) சோதிக்க முடியாது என்று அர்த்தம். tailnet-ல் இல்லாத ஒரு கணினியிலிருந்து curl-ஐப் பயன்படுத்தவும்.
FAQ
tailscale serve மற்றும் tailscale funnel ஆகியவற்றிற்கு இடையே உள்ள வேறுபாடு என்ன?
முடிவை யார் அணுக முடியும் என்பதுதான் வேறுபாடு. tailscale serve உங்கள் tailnet-ல் உள்ள சாதனங்கள் மட்டுமே அணுகக்கூடிய HTTPS URL-ல் ஒரு local port-ஐ வெளியிடுகிறது. tailscale funnel அதே port-ஐ இணையத்தில் உள்ள எவரும் அணுகக்கூடிய URL-ல் வெளியிடுகிறது, இது Tailscale இயக்கும் relay servers வழியாக routing செய்யப்படுகிறது. இவற்றிற்கான flags மற்றும் targets பொதுவானவை. முதல் வெளியீட்டு வரி உங்களுக்கு எது கிடைத்தது என்பதைத் தெரிவிக்கும்: Available within your tailnet அல்லது Available on the internet.
tailscale funnel ஏன் node attribute அமைக்கப்படவில்லை என்று கூறுகிறது?
ஏனெனில், ஒருவர் அதைச் செயல்படுத்தும் வரை ஒரு tailnet-க்கு funnel முடக்கப்பட்டிருக்கும். இந்தச் செய்தி Funnel not available; "funnel" node attribute not set. ஆகும், மேலும் எந்தவொரு relay-ஐயும் தொடர்புகொள்வதற்கு முன்பே உங்கள் சொந்த client-லிருந்து இது வருகிறது. Access Controls-ன் கீழ் உள்ள tailnet policy கோப்பில், autogroup:member-க்கு அல்லது ஒரு machine மட்டுமே வெளியிட வேண்டும் என்றால் ஒரு tag-க்கு funnel attribute-ஐ வழங்கும் nodeAttrs உள்ளீட்டைச் சேர்க்கவும். ஒரு tailnet admin, CLI அச்சிடும் consent URL-ஐப் பின்பற்றுவதன் மூலமும் இதைச் செய்யலாம்.
Tailscale Funnel எந்தெந்த ports-ஐப் பயன்படுத்தலாம்?
443, 8443 மற்றும் 10000 மட்டுமே. இயல்புநிலை 443 ஆகும், மற்றொன்றை நீங்கள் --https=8443 அல்லது --https=10000 மூலம் தேர்ந்தெடுக்கலாம். இது உங்கள் server-ன் வரம்பு அல்ல, funnel relays-ன் வரம்பு, எனவே VPS-ல் எந்த firewall மாற்றமோ அல்லது configuration மாற்றமோ இதை நீக்காது. tailscale serve-க்கு இத்தகைய கட்டுப்பாடு இல்லை, ஏனெனில் அது உங்கள் tailnet-ஐ விட்டு வெளியேறாது.
ஒரு serve அல்லது funnel URL reboot-க்குப் பிறகும் நீடிக்குமா?
நீங்கள் --bg-ஐப் பயன்படுத்தினால் மட்டுமே நீடிக்கும். அது இல்லாமல் கட்டளையை இயக்கினால், அது foreground-ல் இயங்கி, Press Ctrl+C to exit.-ஐ அச்சிடும், மேலும் process-உடன் அந்த mapping-ம் மறைந்துவிடும். --bg-ஐப் பயன்படுத்தினால், mapping அந்த node-ன் serve config-ல் எழுதப்பட்டு, reboot-க்குப் பிறகு tailscaled மூலம் மீண்டும் வரும். tailscale serve status மூலம் சரிபார்க்கவும், எதுவும் அமைக்கப்படாதபோது அது No serve config-ஐ அச்சிடும்.
funnel-ஐத் தொடர்ந்து இயங்கவிடுவது பாதுகாப்பானதா?
போக்குவரத்து (transport) அடிப்படையில் இது பாதுகாப்பானது: இணைப்பு HTTPS முறையில் உள்ளது மற்றும் உங்கள் firewall-ல் எந்த port-ம் திறக்கப்படவில்லை. மக்கள் பொதுவாகக் கருதும் அர்த்தத்தில் இது பாதுகாப்பானது அல்ல, ஏனெனில் URL பொதுவானது, எனவே அதன் பின்னால் உள்ள application-ம் பொதுவானது. அதன் சொந்த கோரிக்கைகளை (requests) அங்கீகரிக்கும் (authenticate) ஒரு application-க்கு முன்னால் மட்டுமே funnel-ஐ வைத்திருக்கவும், demo அல்லது webhook சோதனை முடிந்ததும், அதை உருவாக்கிய கட்டளையின் இறுதியில் off-ஐச் சேர்த்து அதை நீக்கிவிடவும்.
மேலே உள்ள கட்டளை நடத்தைக்கான ஆதாரங்கள்: tailscale.com/docs-ல் உள்ள Tailscale Serve மற்றும் Funnel ஆவணங்கள் மற்றும் CLI குறிப்பு.