GNU/Linux >> Belajar Linux >  >> Debian

Cara mengatur server SFTP di Server Debian 11

File Transfer Protocol adalah protokol komunikasi standar yang digunakan untuk transfer file komputer dari server ke klien di jaringan komputer.

FTP tidak populer saat ini karena Kurang Keamanan. Ketika file dikirim menggunakan protokol ini, data, nama pengguna, dan kata sandi semuanya dibagikan dalam teks biasa, yang berarti peretas dapat mengakses informasi ini dengan sedikit atau tanpa usaha. Agar data aman, Anda perlu menggunakan versi FTP yang ditingkatkan seperti SFTP.

SFTP Secure File Transfer Protocol adalah protokol transfer file yang menyediakan akses aman ke komputer jarak jauh untuk menyampaikan komunikasi yang aman. Ini memanfaatkan SSH – Secure Socket Shell dan sering juga disebut sebagai 'Secure Shell File Transfer Protocol'.

Konten Terkait

  • Unduh File dari server SFTP Menggunakan skrip python
  • Daftar, Unggah, dan Unduh file dari Server SFTP menggunakan golang
  • Cara menyiapkan server SFTP di Server OpenSUSE Leap 15.3
  • Cara menginstal dan menyiapkan server sftp di Ubuntu 20.04
  • Cara menyiapkan server SFTP di Server CentOS 8 /RHEL 8

Prasyarat

Untuk mengikuti panduan ini, pastikan Anda memiliki hal berikut:

  1. Server Debian 11
  2. Akses root ke server atau pengguna dengan akses root
  3. Akses internet dari server

Daftar Isi

  1. Memastikan bahwa server selalu mutakhir
  2. Memastikan bahwa layanan SSH telah terinstal
  3. Membuat pengguna dan grup serta menambahkan direktori yang diperlukan
  4. Mengonfigurasi layanan ssh
  5. Memverifikasi bahwa penyiapan berfungsi seperti yang diharapkan

1. Memastikan bahwa server sudah diperbarui

Sebelum melanjutkan, pastikan sistem Anda mutakhir. Gunakan perintah ini untuk menyegarkan paket sistem dan memperbaruinya.

sudo apt update
sudo apt upgrade -y

2. Memastikan bahwa layanan SSH telah terinstal

Pastikan ssh sudah terpasang:

$ sudo apt install -y openssh-server
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
openssh-server is already the newest version (1:8.4p1-5).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Sekarang setelah diinstal, mulai layanan

sudo systemctl start sshd

Konfirmasi statusnya

$ sudo systemctl status sshd
● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-12-03 10:18:03 UTC; 2 days ago
       Docs: man:sshd(8)
             man:sshd_config(5)
    Process: 665 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
   Main PID: 682 (sshd)
      Tasks: 1 (limit: 4626)
     Memory: 6.2M
        CPU: 9.132s
     CGroup: /system.slice/ssh.service
             └─682 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups

Dec 05 09:20:46 ip-10-2-40-122 sshd[14717]: Received disconnect from 221.181.185.94 port 47597:11:  [preauth]
Dec 05 09:20:46 ip-10-2-40-122 sshd[14717]: Disconnected from authenticating user root 221.181.185.94 port 47597 [preauth]
Dec 05 10:34:30 ip-10-2-40-122 sshd[14797]: Received disconnect from 222.186.30.76 port 23207:11:  [preauth]
Dec 05 10:34:30 ip-10-2-40-122 sshd[14797]: Disconnected from authenticating user root 222.186.30.76 port 23207 [preauth]
Dec 05 10:34:41 ip-10-2-40-122 sshd[14799]: Received disconnect from 221.181.185.151 port 18104:11:  [preauth]
Dec 05 10:34:41 ip-10-2-40-122 sshd[14799]: Disconnected from authenticating user root 221.181.185.151 port 18104 [preauth]
Dec 05 11:11:54 ip-10-2-40-122 sshd[14830]: Received disconnect from 221.131.165.65 port 19729:11:  [preauth]
Dec 05 11:11:54 ip-10-2-40-122 sshd[14830]: Disconnected from authenticating user root 221.131.165.65 port 19729 [preauth]
Dec 05 11:19:03 ip-10-2-40-122 sshd[14840]: Accepted publickey for admin from 105.231.148.146 port 60649 ssh2: RSA SHA256:nDQ1FMciYtGpPYjdOwbUTVg7kQxEFtAjoSdWulRilIA
Dec 05 11:19:03 ip-10-2-40-122 sshd[14840]: pam_unix(sshd:session): session opened for user admin(uid=1000) by (uid=0)

3. Membuat pengguna dan grup dan menambahkan direktori yang diperlukan

Selanjutnya kami akan memastikan bahwa pengguna yang diperlukan ada dalam sistem. Dalam kasus saya, saya ingin pengguna sftp di rumah sebagai /srv/sftp

Mari kita buat rumah /srv/sftp dengan perintah ini:

sudo mkdir /srv/sftp

Kemudian mari kita buat grup payung untuk SFTP saja

sudo groupadd sftpusers

Kemudian buat pengguna khusus sftp bernama citizix:

sudo useradd -G sftpusers -d /srv/sftp/citizix -s /sbin/nologin citizix

Opsi di atas melakukan hal berikut:

  • -G sftpusers :Buat pengguna, tambahkan ke sftpusers grup
  • -d /srv/sftp/citizix :Setel direktori beranda sebagai /srv/sftp/citizix
  • -s /sbin/nologin :Kami tidak ingin pengguna login, jadi tidak ada shell login ssh
  • Terakhir, nama pengguna sebagai citizix

Kemudian tambahkan kata sandi ke pengguna yang dibuat menggunakan perintah ini:

$ sudo passwd citizix
New password:
Retype new password:
passwd: password updated successfully

3. Mengonfigurasi layanan ssh

Sekarang kita telah menginstal perangkat lunak yang diperlukan dan membuat pengguna dan grup, mari kita konfigurasikan ssh.

Pastikan otentikasi kata sandi diaktifkan untuk ssh. Edit file konfigurasi di sini /etc/ssh/sshd_config :

sudo vim /etc/ssh/sshd_config

Kemudian pastikan baris ini tidak dikomentari:

PasswordAuthentication yes

Selanjutnya, kita perlu menambahkan aturan untuk pengguna di sftpusers kelompok untuk dianggap sebagai sftp. Edit file konfigurasi:

sudo vim /etc/ssh/sshd_config

Tambahkan konten ini di bagian bawah file:

Match Group sftpusers  
    X11Forwarding no  
    AllowTcpForwarding no  
    ChrootDirectory /srv/sftp
    ForceCommand internal-sftp

Kemudian restart sshd untuk memuat ulang konfigurasi:

sudo systemctl restart sshd

Verifikasi bahwa sshd berjalan seperti yang diharapkan:

$ sudo systemctl status sshd
● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2021-12-05 11:22:02 UTC; 12s ago
       Docs: man:sshd(8)
             man:sshd_config(5)
    Process: 15292 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
   Main PID: 15293 (sshd)
      Tasks: 1 (limit: 4626)
     Memory: 1.0M
        CPU: 159ms
     CGroup: /system.slice/ssh.service
             └─15293 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups

Dec 05 11:22:02 ip-10-2-40-122 systemd[1]: Starting OpenBSD Secure Shell server...
Dec 05 11:22:02 ip-10-2-40-122 sshd[15293]: Server listening on 0.0.0.0 port 22.
Dec 05 11:22:02 ip-10-2-40-122 sshd[15293]: Server listening on :: port 22.
Dec 05 11:22:02 ip-10-2-40-122 systemd[1]: Started OpenBSD Secure Shell server.

4. Memverifikasi bahwa penyiapan berfungsi seperti yang diharapkan

Setelah berhasil membuat pengguna dan menambahkan konfigurasi sftp, mari kita uji pengaturan menggunakan perintah:

❯ sftp [email protected]
[email protected]'s password:
Connected to 18.236.122.10.
sftp>

Sekarang kami memiliki server sftp dan berjalan dengan pengguna yang dikonfigurasi!

Pengguna akan dapat masuk ke server dan mengakses file dan direktori yang terletak di direktori home mereka. Jika Anda ingin memberikan pengguna ke direktori lain di luar direktori mereka sendiri, pastikan pengguna memiliki hak yang cukup untuk mengakses. Direktori dan file ini harus berada dalam direktori sftp – /srv/sftp .

Contoh:jika saya ingin pengguna mengakses direktori /srv/sftp/paymentfiles , lakukan hal berikut:

Buat direktori

sudo mkdir /srv/sftp/paymentfiles

Kemudian tetapkan pengguna (citizix ) akses dengan menjadikan mereka pemilik direktori:

sudo chown citizix:sftpusers /srv/sftp/paymentfiles

Hanya itu saja. Pengguna sekarang seharusnya memiliki akses.

Kesimpulan

Kami berhasil menyiapkan server sftp di Debian 11 dalam panduan ini.


Debian
  1. Menyetel IP Statis di Debian 11 - Bagaimana cara melakukannya?

  2. Cara mengatur server SFTP di Arch Linux

  3. Cara Mengatur Server OpenVPN di Debian 10

  1. Cara Mengatur Server Samba di Debian 10 Buster

  2. Cara Mengatur Server LAMP di Debian 10 Buster

  3. Cara mengatur server SFTP di OpenSUSE Leap 15.3 Server

  1. Cara Mengatur Server NFS di Debian 10 Buster

  2. Cara Mengatur Server LEMP di Debian 10 Buster

  3. Cara Mengatur Blok Server Nginx di Debian 9