GNU/Linux >> Belajar Linux >  >> OpenSuse

Cara Menginstal Pure-FTPd dengan TLS dan pengguna virtual di OpenSUSE Leap 42.1

Pure-FTPd adalah server FTP gratis dan ringan berdasarkan Troll-FTPd, pengembangan dimulai pada tahun 2001 dan berjalan di banyak OS mirip Unix termasuk Linux, *BSD, Solaris, dan HP-UX. Pure-FTPd memiliki banyak fitur seperti domain virtual, direktori home chroot, pengguna virtual, dukungan TLS/SSL, kuota virtual, dan banyak lagi.

Dalam tutorial ini, saya akan menunjukkan cara menginstal dan mengkonfigurasi pure-ftpd pada OpenSUSE Leap 42.1. Saya akan menunjukkan cara menyiapkan pure-ftpd dengan TLS/SSL dan kemudian menyiapkan pengguna virtual.

Prasyarat

  • OpenSUSE Leap 42.1
  • Hak istimewa root
  • OpenSUSE, Pengetahuan Zypper

Langkah 1 - Instal dan Konfigurasi SuSEfirewall2

SuSEfirewall2 adalah script untuk menghasilkan konfigurasi firewall pada file '/etc/sysconfig/SuSEfirewall2'. Kami akan menginstal SuSEfirewall2 dan kemudian membuka port untuk SSH dan layanan FTP.

Instal SuSEfirewall2 dengan zypper:

zypper in SuSEfirewall2

Selanjutnya, edit file konfigurasi '/etc/sysconfig/SuSEfirewall2' dengan vim:

vim /etc/sysconfig/SuSEfirewall2

Tambahkan layanan baru ssh dan FTP ke baris 253:

FW_SERVICES_EXT_TCP="ssh ftp"

Simpan dan keluar.

Sekarang Mulai SuSEfirewall2 dengan perintah systemctl:

systemctl start SuSEfirewall2

Langkah 2 - Instal dan Konfigurasikan Pure-FTPd

Pada langkah ini, kita akan menginstal pure-ftpd dengan OpenSSL untuk konfigurasi TLS/SSL dan mengkonfigurasi pengguna dan grup pure-ftpd.

Instal aplikasi dengan zypper seperti gambar di bawah ini:

zypper in pure-ftpd openssl

Sekarang tambahkan grup baru 'ftpgroup ' dan pengguna baru untuk master 'pengguna FTP' yang disebut 'ftpuser ' ke grup.

groupadd ftpgroup
useradd -g ftpgroup -d /dev/null -s /etc ftpuser

Buka direktori pure-ftpd dan edit file konfigurasi 'pure-ftpd.conf' dengan editor vim:

cd /etc/pure-ftpd/
vim pure-ftpd.conf

Ubah nilai pada baris 81 menjadi 'yes' untuk menonaktifkan pengguna anonim.

NoAnonymous                 yes

Batalkan komentar pada baris 131 untuk mengonfigurasi backend. Pure-ftpd memiliki dukungan untuk MySQL, PostgreSQL, dan LDAP sebagai backend, tetapi dalam tutorial ini, kita akan menggunakan 'PureDB' untuk backend.

PureDB                        /etc/pure-ftpd/pureftpd.pdb

Beri komentar pada baris PAMAuthentication untuk menonaktifkan otentikasi PAM pada baris 141 karena kami akan menggunakan PureDB sebagai sumber otentikasi.

#PAMAuthentication             yes

Simpan dan keluar.

Langkah 3 - Konfigurasikan TLS/SSL untuk Pure-FTPd

Buat file sertifikat baru yang ditandatangani sendiri di direktori '/etc/ssl/private' dengan perintah openssl:

openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem -days 365

Ubah izin file sertifikat menjadi 0600:

chmod 600 /etc/ssl/private/pure-ftpd.pem

Selanjutnya, kembali ke direktori pure-ftpd dan edit file konfigurasi untuk mengaktifkan dukungan TLS/SSL untuk koneksi klien.

cd /etc/pure-ftpd/
vim pure-ftpd.conf

Batalkan komentar pada baris 439 untuk mengaktifkan TLS.

TLS                      1

Batalkan komentar pada baris 449 dan tambahkan opsi baru untuk membuatnya lebih aman.

TLSCipherSuite           HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3

Batalkan komentar pada baris 445 untuk menentukan file sertifikat.

CertFile                 /etc/ssl/private/pure-ftpd.pem

Simpan dan keluar.

Sekarang mulai pure-ftpd dengan perintah systemctl:

systemctl start pure-ftpd

Langkah 4 - Konfigurasikan Pengguna Virtual

Pure-FTPd menyediakan fitur untuk membuat dan menggunakan pengguna virtual alih-alih pengguna sistem nyata (Linux). Pure-FTPd menyediakan beberapa backend auth dan konfigurasi pengguna virtual tergantung pada backend yang digunakan oleh server. Pada langkah 2 kita telah menetapkan 'PureDB' sebagai backend.

Kita dapat membuat pengguna virtual baru dengan perintah 'pure-pw' yang disediakan oleh pure-ftpd. Pada langkah ini, kita akan membuat pengguna virtual baru bernama 'shiro' dengan direktori '/srv/ftp/shiro' sebagai direktori home ftp dan pengguna tersebut di-chroot ke direktori tersebut sehingga dia tidak dapat mengakses direktori sistem lainnya.

Buat pengguna virtual baru dengan pure-pw:

pure-pw useradd shiro -u ftpuser -d /srv/ftp/shiro

Buat direktori untuk pengguna virtual dan ubah pemilik direktori tersebut menjadi 'pengguna FTP' master.

mkdir -p /srv/ftp/shiro
chown -R ftpuser.ftpgroup /srv/ftp/shiro

Selanjutnya, kita harus menyimpan perubahan dengan perintah di bawah ini:

pure-pw mkdb

Sekarang shiro pengguna sudah siap digunakan, kita dapat menggunakan FTPp dari baris perintah atau FileZilla untuk antarmuka GUI untuk terhubung ke server.

Catatan:

pure-pw memiliki lebih banyak opsi perintah, Anda dapat menggunakan 'bantuan pure-pw ' untuk melihat semua perintah yang berguna.

Langkah 5 - Pengujian

Saya akan menggunakan perintah FTP di terminal untuk pengujian. Buka terminal Anda dan ketik "ftp":

ftp

Selanjutnya masukkan ip server pure-ftpd:

open 192.168.43.69

Login dengan pengguna 'shiro' dan kata sandi lalu tekan 'Enter'.

Coba upload file dengan perintah 'put':

put picture.png mypict.png

Sekarang Anda akan melihat file mypict.png di server dengan perintah ls di bawah ini:

ls


OpenSuse
  1. Cara Menginstal PostgreSQL dan phpPgAdmin di OpenSUSE Leap 42.1

  2. Cara Menginstal Seafile dengan Nginx di openSUSE Leap 42.1

  3. Cara menginstal ProFTPd dengan TLS di OpenSuse 13.2

  1. Cara Instal Lighttpd Dengan PHP5 FastCGI Dan MySQL di openSUSE 12.1

  2. Cara Menginstal Nginx Dengan PHP-FPM Dan MySQL Di openSUSE 12.1

  3. Bagaimana menginstal Mongodb 5 di Opensuse Leap 15.3

  1. Cara menginstal dan menggunakan Podman di OpenSUSE Leap 15.3

  2. Bagaimana menginstal Java 17 di OpenSUSE Leap 15.3

  3. Cara Menginstal dan mengatur Nginx sebagai proxy OpenSUSE Leap 15.3