gokayburuc.dev

Tailscale ile Termux SSH Bağlantı Klavuzu

cyberpunk-city-view

Günümüzde geliştiriciler ve sistem yöneticileri, yalnızca bilgisayarlarıyla sınırlı kalmadan uzaktan çalışmak istiyor. Termux, Android cihazı bir Linux terminaline dönüştürürken; Tailscale, cihazlar arasında güvenli ve kolay erişim sağlayan bir VPN ağı sunar. Bu rehber, Termux ve Tailscale kullanarak Android cihazınızla Linux sisteminiz arasında SSH bağlantısı kurma sürecini adım adım açıklamak amacıyla yazılmıştır.

Tailscale SSH Connection Guide

İşmemimiz sırasında Tailscale ile bir VPN ağı oluşturup, openssh ile bu ağa SSH bağlantısı yapacağız. Bunun için aşağıdaki uygulamaları ve bu uygulamalara ait kurulum ve kullanım direktiflerini kullanacağız.

Tailscale Nedir?

tailscale-logo

Tailscale, cihazlar arasında özel bir sanal ağ (VPN) kurmanı kolaylaştıran bir araçtır. Ancak klasik VPN’lerden farkı, merkezi bir sunucu üzerinden değil, doğrudan cihazlar arasında (peer-to-peer) bağlantı kurmasıdır. Temelinde WireGuard protokolü vardır — yani hızlı, güvenli ve modern bir VPN katmanını otomatikleştirir.

Resmi Web Siteleri:

Google Play Uygulamaları:


openssh nedir?

openssh-logo

OpenSSH, SSH protokolüyle uzaktan oturum açmaya yönelik önde gelen bağlantı aracıdır. Gizli dinlemeyi, bağlantı ele geçirmeyi ve diğer saldırıları ortadan kaldırmak için tüm trafiği şifreler. Buna ek olarak OpenSSH, geniş bir güvenli tünelleme yetenekleri paketi, çeşitli kimlik doğrulama yöntemleri ve gelişmiş yapılandırma seçenekleri sunar.

openssh.com

Linux için openssh kurulumu

SSH bağlantısı sağlayabilmek için sistemimizde openssh yüklü olmalıdır. Aşağıdaki komutlarla openssh kurulumunu gerçekleştiriyoruz:

sudo apt install openssh-server
sudo apt install openssh-client

Bu kurulumlar sayesinde Linux terminalinizde SSH bağlantısı sağlayan ssh ve SSH Server oluşturan sshd komutlarını çalıştırabileceğiz.

Burada bağlantı yaparken ssh komutunu kullanacağız. Karşı tarafın bilgisayarımıza bağlantı sağlayabilmesi için de sshd komutunu kullanacağız.

Termux için openssh kurulumu

Sisteminizdeki paketlerin en güncel sürümlerini kontrol ediyoruz ve güncel olmayan paketlerimizi güncelliyoruz:

pkg update
pkg upgrade

Terminaliniz için openssh yüklüyoruz:

pkg install openssh

username yani kullanıcı adı bilgilerinizi whoami komutuyla kontrol ediyoruz:

whoami

SSH Bağlantısında kullanılacak şifreyi belirliyoruz:

passwd

Parola belirleme aşamasında SSH bağlantısında kullanılacak parola belirlenir. Karşı taraf ağa bağlanacağı sırada bu parolayı girmek zorundadır.Ayrıca bağlantıların çalışabilmesi için bir SSH Server da başlatmamız gerekiyor.

sshd

Artık cihazınız SSH bağlantısı yapmaya hazır.

Linux için Tailscale Kurulumu

tailscale kurulumu yapabilmek amacıyla aşağıdaki linki çalıştırıyoruz:

curl -fsSL https://tailscale.com/install.sh | sh

Kurulum sağlandıktan sonra artık Linux terminalimizden tailscale vpn ağına bağlantı sağlayabileceğiz.

Termux için Tailscale Kurulumu

tailscale-snapshot

Termux üzerinden bağlantı sağlayabilmek için herhangi bir kurul yapmadan doğrudan Google Play üzerinden Tailscale isimli applikasyonu indiriyoruz:

Google Play - Tailscale

Kurulum yapıldıktan sonra gerekli ilk kurulumları sağlayarak, tailscale ağına bağlantı sağlıyoruz.

Tailscale VPN bağlantısının Görüntülenmesi

Sizin kullanıcı kimliğinizle Tailscale üzerinde oluşturduğunuz tailnet VPN ağına bağlı olan cihazları görüntülemenin iki farklı yolu vardır. Tailscale VPN ağına bağlı olan cihazları bilgisayar ekranından görebilmek için aşağıdaki linki kullanıyoruz: https://login.tailscale.com/admin/machines

Eğer cep telefonu uygulaması olarak Tailscale ekranına sahipseniz burada bağlı olan cihazlarla ilgili bilgileri uygulama üzerinden görebilirsiniz.

Connect to Local PC from Android Device (Termux Android to Linux Ubuntu)

İşlemlere başlamadan önce oturum yöneticisi ve terminal çoğaltıcısı için tmux isimli uygulamamızı çalıştırıyoruz. remotessh isimli bir oturum başlatıyoruz:

tmux -s remotessh

Burada yeni bir pencere açmak için CTRL+B , CTRL+C kombinasyonunu kullanıyoruz. Bu pencereyi gerekli komutları yürütmek üzere kullanacağız. Pencereler arası geçişlerde de CTRL+B, CTRL+N tuş kombinasyonunu kullanacağız.

Şimdi ise cep telefomuzdan Tailscale uygulamasını açıyoruz. Burada bağlantı sağlandığında VPN ağına bağlı tanımlı cihazlarımızda cihazımızı ve diğer cihazları görebiliyoruz.

Linux bilgisayarımızda ağa bağlantı sağlamak için aşağıdaki komutu terminalden yazıyoruz:

tailscale up

Ağda cihazımız tanımladığımız için tanımlı cihazlarda Linux cihazımızın yanında bir yeşil ışık yanıyor. Aynı şekilde biz de Connect anahtarını açarak VPN ağına bağlanıyoruz. Artık iki cihazımıza da birer tane IP ve username atanmış konumda olmalı. Bu username ve ip adreslerini bağlantı sırasında kullanacağız.

Linux cihazımıza ait ismi ve bağlantı ip adresini aşağıdaki komutla birlikte yazıyoruz:

# ornek username: gokayburuc_vaio ve örnek ip adresi : 100.91.211.87 ve dinlenecek port: 8822
ssh gokayburuc_vaio@100.91.211.87 -p 8022

Bu komut belirtilen Cihaz IP'sine Tailscale VPN ağı (tailnet) üzerinden bağlantı sağlanacağını ve 8022 isimli portun dinleneceğini belirtir. Bu aşamada ilk defa bağlantı sağlanırken bağlantının tanınan SSH bağlantılarına eklenip eklenmeyeceğini soran ekranda yes yazıldıktan sonra Linux bilgisayarımızda passwd ile oluşturduğumuz parolayı sisteme gireriz. Böylece Termux yüklü Android cihazımızdan kendi bilgisayarımıza bir remote bağlantı sağlarız.

Bağlantılar için varsayılan port 22 dir. Eğer hiçbir port belirtmezsek openssh 22 numaralı portu dinleyecektir. Fakat bazı durumlarda bu port doluysa özel bir port ataması yapabiliyoruz. Biz Port belirttiğimiz için 8022 portu dinlenecektir. Eğer 22 numaralı portu kullanan başka bir operasyonunuz yoksa -p 8022 flag yapısına ihtiyanız olmayacaktır.

Connect to Android Device from Local PC (Linux Ubuntu to Termux Android)

Linux Terminal ekranımızda tmux açıyoruz. Bunu açmamızın sebebi işlemlerimizi ikinci bir tmux-window penceresi üzerinden gerçekleştirme kolaylığı olacaktır. Yani CTRL-c ile yeni bir pencere açıp Android cihazımızın bağlantı ekranını bu pencereden yöneteceğiz.

tailscale up

Drop The Connections

Termux cihazınız tailnet (Tailscale VPN Ağı) 'ndan disconnect etmeniz için uygulama üzerinden Connect anahtarını kapatmanız yeterlidir.

Linux Bilgisayarınızı ağdan disconnect etmek için ise aşağıdaki komutu kullanıyoruz:

tailscale down

Mevcut SSH serverlarını durdurmak için ise aşağıdaki komutlardan faydalanıyoruz:

Termux:

pkill sshd

Linux:

sudo systemctl stop sshd

Check the Local IP's given From Tailscale

Eğer cihazınızın ip adresini Linux terminal üzerinden görmek istiyorsanız aşağıdaki komutu kullanmanız gerekecektir:

tailscale ip -4

Bu komut IPv4 formatında tailnet'in Linux bilgisayarınız için oluşturduğu IP adresini ekrana getirir.

Hatırlatma: İnternet Protokolü sürüm 4 (IPv4), İnternet Protokolünün (IP) bağımsız bir spesifikasyon halindeki ilk sürümüdür.


Niye Bu Yöntemi Tercih Etmeliyim?

Bu yöntem klasik “port yönlendirme” veya “dinamik DNS” çözümlerine göre çok daha güvenli ve esnek.
Tailscale, NAT arkasındaki cihazları bile ek yapılandırmaya gerek kalmadan birbirine bağlar; OpenSSH ise bağlantının güvenlik katmanını sağlar.

Yöntemin Avantajları:

İşlemler sırasında dikkat edilmesi gerekenler:

Sonuç ve Değerlendirme

Bu rehberde, Android cihazınızı Termux aracılığıyla bir SSH istemcisine dönüştürüp, Tailscale üzerinden Linux bilgisayarınıza güvenli bir VPN hattı kurmayı adım adım anlattım.

Yapılan işlemlere dair temel akış şu şekildeydi:

  1. Tailscale kurulumu → Android ve Linux arasında özel bir VPN (tailnet) oluşturulur.
  2. OpenSSH kurulumu → Her iki cihazda da SSH istemci ve sunucu bileşenleri yüklenir.
  3. Bağlantı kurulumu → Termux üzerinden ssh komutuyla Linux sistemine, veya Linux’tan Termux cihazına erişim sağlanır.
  4. Bağlantı yönetimitailscale up/down, sshd, pkill sshd gibi komutlarla oturumlar başlatılır veya sonlandırılır.
  5. Doğrulama ve IP yönetimitailscale ip -4 komutuyla her cihazın VPN üzerindeki özel IP adresleri görüntülenir.

Sonuç olarak, Android cihazınızı yalnızca bir terminal değil, aynı zamanda uzak erişim sağlayabilen taşınabilir bir yönetim aracı haline getirirsiniz.

#bash #linux #termux