Mudah untuk Menginstal Kode-Server di Ubuntu 20.04
Nah memandu Anda untuk menginstal Code-Server di Ubuntu 20.04. Code-server v3.11.0 versi terbaru melayani VS Code di mesin manapun di manapun dan mengaksesnya di browser.
Pada artikel ini, kami akan memandu Anda untuk menginstal Code-Server di Ubuntu 20.04.
Code-server adalah aplikasi server open-source yang melayani VS Code di mesin manapun di manapun dan mengaksesnya di browser. Ini memungkinkan pemanfaatan server cloud yang kuat untuk mempercepat kompilasi dan pengujian, dan untuk menghemat baterai saat bepergian.
Prasyarat
Instal Kode-Server di Ubuntu 20.04
1. Perbarui server
Tetap perbarui server.
# apt update -y
# apt upgrade -y
2. Instal Kode-Server
Unduh kode-server dari repositori resmi menggunakan perintah berikut:
# cd /home
# wget https://github.com/cdr/code-server/releases/download/v3.11.0/code-server-3.11.0-linux-amd64.tar.gz
Ekstrak file tar dan ganti nama dengan kode-server menggunakan perintah berikut:
# tar xzf code-server-3.11.0-linux-amd64.tar.gz && rm code-server-3.11.0-linux-amd64.tar.gz
# mv code-server-3.11.0-linux-amd64 code-server
Jadikan biner kode-server dapat dieksekusi.
# cd code-server
Jalankan server kode.
./code-server --port 8000
Buka browser komputer Anda dan navigasikan ke http://YOUR_IP_ADDRESS:8000. Anda akan dimintai kata sandi. Gunakan kata sandi yang ditampilkan di terminal SSH. Antarmuka Visual Studio Code akan terbuka. Untuk menghentikan server, tekan CTRL + C di terminal SSH.
3. Buat Layanan Startup Sistem
Kami dapat membuat layanan menggunakan manajer layanan systemd Linux . Ikuti langkah ini:
Buat file baru dengan nama code-server.service menggunakan perintah berikut:
# vi /lib/systemd/system/code-server.service
Salin dan tempel konten berikut dan ganti dengan kata sandi yang ingin Anda atur. Ini akan menjadi kata sandi yang akan Anda gunakan untuk masuk ke server kode.
[Unit]
Description=Code Server Service
After=network.target[Service]
Type=simple
Restart=on-failure
RestartSec=10
WorkingDirectory=/home/code-server
Environment='PASSWORD='
ExecStart=/home/code-server/code-server --port 8000
StandardOutput=file:/var/log/code-server-output.log
StandardError=file:/var/log/code-server-error.log[Install]
WantedBy=multi-user.target
Simpan dan tutup file.
Sekarang, mulai dan aktifkan code-server.service menggunakan perintah berikut:
# systemctl daemon-reload
# systemctl start code-server
# systemctl enable code-server
Buka browser komputer Anda dan navigasikan ke http://YOUR_IP_ADDRESS:8000. Anda akan dimintai kata sandi. Gunakan kata sandi yang Anda sebutkan di file code-server.service .
4. Instal dan Konfigurasi Nginx
Untuk mengakses penginstalan melalui nama domain dan untuk menambahkan sertifikat SSL, disarankan untuk menyiapkan proxy terbalik. Untuk tujuan demonstrasi ini, kami menggunakan server web Nginx sebagai proxy terbalik.
Untuk menginstal Nginx gunakan perintah berikut:
# apt-get install nginx -y
Nonaktifkan file konfigurasi situs Nginx default.
# rm /etc/nginx/sites-enabled/default
Buat file konfigurasi situs Nginx baru untuk server kode.
# vi /etc/nginx/sites-available/code-server
Rekatkan cuplikan berikut ke dalam file, ganti example.com dengan nama domain Anda sendiri.
server {
listen 80;
listen [::]:80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:8000/;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Aktifkan konfigurasi dan mulai ulang server web Nginx.
# ln -s /etc/nginx/sites-available/code-server /etc/nginx/sites-enabled/
Uji file konfigurasi Nginx.
# nginx -t
Jika tidak terjadi kesalahan, mulai ulang layanan nginx .
# systemctl restart nginx
Jika Anda menggunakan UFW sebagai firewall, izinkan koneksi SSH dan Nginx melalui firewall, dan aktifkan firewall. Ini akan memastikan bahwa instalasi kode-server hanya dapat diakses melalui proxy terbalik Nginx.
# ufw allow ssh
# ufw allow 'Nginx Full'
# ufw enable
Arahkan ke nama domain Anda untuk menguji penginstalan.
5. Instal Let's Encrypt SSL
Jaga agar koneksi tetap aman antara server dan pengguna akhir, sangat disarankan untuk menginstal sertifikat SSL. Let's Encrypt adalah sertifikat SSL gratis yang datang dengan validitas 90 hari dan akan diperbarui setiap 90 hari. Kami menggunakan certbot untuk menginstal sertifikat SSL.
Unduh dan instal Certbot.
# apt-get install python3-certbot-nginx
Jalankan perintah berikut untuk meluncurkan penginstal baris perintah Certbot, menggantikan example.com dengan nama domain Anda sendiri.
# certbot --nginx -d example.com
Lanjutkan melalui penginstal interaktif. Ketika ditanya apakah akan mengarahkan ulang lalu lintas HTTP ke HTTPS, pilih untuk mengalihkan.
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you’re confident your site works on HTTPS. You can undo this
change by editing your web server’s configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/code-server
Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/code-server
6. Instal fail2ban (Disarankan)
Fail2ban adalah aplikasi yang mem-parsing log untuk mendeteksi dan mengurangi serangan otomatis pada server. Ketika sejumlah upaya login yang gagal terdeteksi, fail2ban akan mengubah iptables server untuk memblokir penyerang selama waktu yang telah ditentukan.
Instal alat penyiapan. Ini diperlukan untuk menginstal fail2ban.
# apt-get install python3-setuptools -y
Unduh dan instal fail2ban.
git clone https://github.com/fail2ban/fail2ban.git
cd fail2ban
sudo python3 setup.py install
cp build/fail2ban.service /lib/systemd/system/fail2ban.service
cd .. && rm -rf fail2ban
Salin file konfigurasi default jails.conf ke jails.local dan buka file yang disalin dalam editor teks.
# cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
# vi /etc/fail2ban/jail.local
Rekatkan cuplikan berikut di bagian bawah file. Anda dapat mengubah parameter maxretry, findtime, dan bantime.
[code-server]
enabled = true
logpath = /var/log/code-server-output.log
# maxretry: The amount of unsuccessful login attempts after which a ban is issued.
maxretry = 5
# findtime: The amount of time within which the login attempts must occur.
findtime = 10m
# bantime: The amount of time for which an IP is banned from accessing the server.
bantime = 10m
Buat file konfigurasi filter baru untuk menentukan pola filter guna menemukan upaya login yang gagal di log server kode.
# vi /etc/fail2ban/filter.d/code-server.conf
Rekatkan cuplikan berikut ke dalam file.
[Definition]
failregex = Failed login attempt {\'xForwardedFor\':\'\'.*
ignoreregex =
datepattern = "timestamp':{EPOCH}}$
Mulai ulang layanan rsyslog dan aktifkan dan mulai layanan fail2ban.
# systemctl restart rsyslog.service
# systemctl start fail2ban.service
# systemctl enable fail2ban.service
Itu dia. Instalasi berhasil diselesaikan.
Pada artikel ini, kami telah menjelaskan cara menginstal Code-Server di Ubuntu 20.04