Teleport adalah sistem Otoritas sertifikat sumber terbuka yang mudah dipasang. Jika Anda memiliki server berbeda yang dapat diakses melalui SSH, basis data Kubernetes yang berbeda, dan aplikasi Web. Jadi teleport digunakan untuk menempatkan semuanya dalam satu platform sebagai pesawat akses ke semua infrastruktur ini. Ini juga memiliki fitur berbagi dan merekam sesi interaktif di semua lingkungan.
Teleport juga berjalan sebagai layanan systemd dan sangat mudah dipasang dan digunakan. Pada artikel ini, kita akan membahas proses instalasi teleport di server Ubuntu 20.04.
Pemasangan
Seperti halnya untuk sistem operasi Linux dan Mac, layanan inti teleportasi teleportasi dan alat admin tctl digunakan karena dirancang untuk bekerja pada sistem operasi seperti itu. Juga klien pengguna teleportasi tsh dan UI tersedia untuk Linux, Mac, dan sistem operasi lainnya.
Prasyarat
- Mesin Linux dengan port 443 terbuka
- Aplikasi autentikator dua faktor seperti Authy, Google Authenticator, atau Microsoft Authenticator
- Klien SSH seperti OpenSSH
- Akses ke layanan DNS seperti Amazon Route 53 atau CoreDNS
Instalasi teleport di server Ubuntu 20.04
Jika Anda menginginkan binari 32-bit atau binari ARM, periksa halaman rilis terbaru di tautan ini https://goteleport.com/teleport/download/ . Tetapi untuk menginstal binari teleport versi 64-bit, jalankan perintah seperti yang ditunjukkan di bawah ini.
Untuk menginstal kunci publik teleport, jalankan perintah seperti yang ditunjukkan di bawah ini.
$ curl https://deb.releases.teleport.dev/teleport-pubkey.asc | sudo apt-key add -
Untuk menambahkan repo ke APT, jalankan perintah seperti yang ditunjukkan di bawah ini.
$ sudo add-apt-repository 'deb https://deb.releases.teleport.dev/ stable main'
Untuk memperbarui APT Cache, jalankan perintah seperti yang ditunjukkan di bawah ini.
$ sudo apt-get update
Terakhir untuk Install Teleport, jalankan perintah seperti di bawah ini.
$ sudo apt install teleport
Konfigurasi teleportasi
Untuk konfigurasi teleport, cukup jalankan konfigurasi dan simpan dengan format yaml. Untuk detail lebih lanjut, periksa konfigurasi seperti yang ditunjukkan di bawah ini dengan menggunakan editor favorit Anda.
$ sudo vim /etc/teleport.yaml
teleport: nodename: linuxways data_dir: /var/lib/teleport log: output: stderr severity: INFO format: output: text ca_pin: [] diag_addr: "" auth_service: enabled: “yes” cluster_name: "teleport" listen_addr: 0.0.0.0:3025 tokens: - proxy,node,app:e6cebf660b1f3390f204130b9649 public_addr: 5.22.209.65:3025 ssh_service: enabled: “yes” labels: env: example commands: - name: hostname command: [hostname] period: 1m0s app_service: enabled: “yes” debug_app: true proxy_service: enabled: “yes” listen_addr: 0.0.0.0:3023 web_listen_addr: 0.0.0.0:3080 tunnel_listen_addr: 0.0.0.0:3024 public_addr: 5.22.209.65:3080
Agar konfigurasi berfungsi dengan baik, direktori /var/lib/teleport harus diberikan izin yang tepat yang memungkinkan teleportasi dan tctl membaca dan menulis tanpa masalah. Jalankan perintah seperti yang ditunjukkan di bawah ini untuk tujuan itu.
$ sudo chmod 755 -R /var/lib/teleport/
Konfigurasi Sistem Nama Domain
Anda harus memberikan sertifikat untuk protokol https yang aman. Hal ini dimungkinkan dengan sertifikat yang sudah Anda miliki atau dengan membuat sertifikat tanda diri atau menambahkan DNS seperti tele.example.com menunjuk ke ip publik Anda dan menjalankan perintah dengan menggunakan protokol ACME yang meminta sertifikat TLS tersedia secara otomatis dari Mari Enkripsi. Ini mengakses titik akhir HTTP di host Teleport Anda untuk menyelesaikan tantangan autentikasi.
$ sudo teleport configure --acme [email protected] --cluster-name=tele.example.com -o file
Atau buat sertifikat tanda tangan sendiri dan
$ sudo openssl req -x509 -days 365 -nodes -newkey rsa:2048 -keyout /etc/pki/tls/private/teleport.key -out /etc/pki/tls/certs/teleport.crt
Setelah pembuatan sertifikat, tambahkan sertifikat tersebut pada konfigurasi teleportasi seperti yang ditunjukkan di bawah ini.
$ sudo vim /etc/teleport.yaml
teleport: nodename: linuxways data_dir: /var/lib/teleport log: output: stderr severity: INFO format: output: text ca_pin: [] diag_addr: "" auth_service: enabled: “yes” cluster_name: "teleport" listen_addr: 0.0.0.0:3025 tokens: - proxy,node,app:e6cebf660b1f3390f204130b9649 public_addr: 5.22.209.65:3025 ssh_service: enabled: “yes” labels: env: example commands: - name: hostname command: [hostname] period: 1m0s app_service: enabled: “yes” debug_app: true proxy_service: enabled: “yes” listen_addr: 0.0.0.0:3023 web_listen_addr: 0.0.0.0:3080 tunnel_listen_addr: 0.0.0.0:3024 public_addr: 5.22.209.65:3080
https_keypairs:
- key_file: /etc/pki/tls/private/teleport1.key
cert_file: /etc/pki/tls/certs/teleport1.crt
Konfigurasi layanan Teleport dan mulai layanan
Mari kita buat layanan systemd untuk layanan teleportasi dengan perintah seperti di bawah ini.
$ sudo vim /etc/systemd/system/teleport.service
[Unit] Description=Teleport SSH Service After=network.target [Service] Type=simple Restart=on-failure EnvironmentFile=-/etc/default/teleport ExecStart=/usr/local/bin/teleport start --pid-file=/run/teleport.pid ExecReload=/bin/kill -HUP $MAINPID PIDFile=/run/teleport.pid LimitNOFILE=8192 [Install] WantedBy=multi-user.target
Sekarang, mari kita jalankan perintah seperti yang ditunjukkan di bawah ini untuk memuat ulang daemon, mengaktifkan dan memulai layanan.
$ sudo systemctl daemon-reload
$ sudo systemctl start teleport
$ sudo systemctl enable teleport
Untuk memeriksa status layanan teleportasi, jalankan perintah seperti yang ditunjukkan di bawah ini.
$ sudo systemctl status teleport.service
Membuat pengguna teleportasi dengan pengaturan otentikasi dua faktor
Untuk masuk, Anda harus memiliki pengguna dengan hak istimewa yang tepat. Secara default, teleport memberlakukan penggunaan otentikasi dua faktor sehingga kami membuat pengguna dengan nama pengguna admin-pengguna menggunakan otentikasi dua faktor dengan menggunakan google authenticator. Anda juga dapat menggunakan cara autentikasi lain yang tersedia di opsi.
Jalankan perintah seperti yang ditunjukkan di bawah ini untuk membuat pengguna.
$ sudo tctl users add admin-user --roles=editor,access --logins=root,ubuntu,linuxways
Seperti yang Anda lihat, kami menyediakan peran editor dan akses ke pengguna ini sebagai hak istimewa admin dan pengguna seperti root, ubuntu atau linuxways dapat masuk ke server di server cluster teleport.
Setelah menjalankan perintah di atas, Anda akan melihat output seperti yang ditunjukkan pada tangkapan layar di bawah ini dengan tautan untuk membuat kata sandi untuk pengguna.
Sekarang, mari jelajahi situs dan buat kata sandi untuk pengguna dengan menggunakan otentikasi dua faktor seperti yang ditunjukkan pada tangkapan layar di bawah.
Setelah Anda mengklik buat akun, dasbor UI Web teleport akan ditampilkan. Anda akan melihat pengguna yang baru dibuat dengan daftar node yang diistimewakan untuk pengguna tersebut. Untuk detail lebih lanjut, periksa tangkapan layar seperti yang ditunjukkan di bawah ini.
Menambahkan node ke cluster
Untuk menambahkan node baru ke cluster teleport, jalankan perintah seperti yang ditunjukkan di bawah ini.
Login pertama ke teleportasi
$ tsh login --proxy=tele.example.com --auth=local --user=admin-user
Buat token dengan batas waktu yang ditentukan, di sini kami membatasi waktu selama 1 jam.
$ tctl tokens add --type=node --ttl=1h
Sekarang unduh paket teleport ke node baru Anda. Dalam kasus kami, node baru kami berjalan dengan sistem operasi Ubuntu. Untuk itu, lakukan proses instalasi seperti gambar di bawah ini..
$ curl https://deb.releases.teleport.dev/teleport-pubkey.asc | sudo apt-key add -
$sudo add-apt-repository 'deb https://deb.releases.teleport.dev/ stable main'
$ sudo apt-get update
$ sudo apt install teleport
Sekarang jalankan perintah ini pada node baru dengan menggunakan token yang dibuat dengan perintah di atas. Untuk detail lebih lanjut, periksa perintah seperti yang ditunjukkan di bawah ini.
Seperti dalam kasus kami, nama host adalah testserver sehingga kami dapat memverifikasinya dengan menelusuri situs Teleport WEB-UI dan memeriksa bagian server seperti yang ditunjukkan pada gambar di bawah ini.
Mengakses server yang ditambahkan
Sekarang, simpul baru telah berhasil ditambahkan sehingga mudah diakses dengan UI WEB atau terminal hanya dengan mengklik sambungkan dan mengaksesnya dengan opsi pengguna yang diinginkan pada daftar. Untuk detail lebih lanjut, periksa tangkapan layar seperti yang ditunjukkan di bawah ini.
Dalam kasus kami, kami memilih root sebagai pengguna kemudian tab berikutnya akan terbuka di mana server node baru dapat diakses seperti yang ditunjukkan pada gambar di bawah.
Seperti yang Anda lihat, kami dengan mudah menjalankan perintah pada node baru “testserver” dengan UI WEB teleport.
Kesimpulan
Pada artikel ini, Anda telah mempelajari cara menginstal teleport di server Ubuntu 20.04 dan menambahkan node baru. Menjalankan perintah pada server yang ditambahkan melalui UI WEB teleport mudah dilakukan. Terima kasih!