Bagaimana setel dan cari php.ini on localhost
1. Pertama-tama, Anda perlu mengaktifkan perangkat lunak. Dalam hal ini, itu WAMP.
2. Buka editor kode favorit Anda untuk membuat file .php. Dalam hal ini, kami menggunakan Dreamweaver (atau anda bisa menggunakan notepad pada sistem windows). Tambahkan potongan kode ini ke file baru:
3. Buka Local Disk. Temukan folder wamp, lalu buka folder www. Salin file info.php ini ke folder wamp/www.
Catatan: Jika Anda memiliki perangkat lunak lain, lokasinya bisa berbeda:
4. Buka browser. Ketik localhost / info.php di bilah alamat. Anda akan melihat tabel pengaturan yang tersedia.
Coba cari dengan php.ini sebagai kata kunci. Di dalam kolom Loaded Configuration File, Anda akan melihat path ke file php.ini. Dalam hal ini, itu adalah C:\wamp\bin\apache\apache2.4.9\bin\php.ini. Cukup ikuti jalan untuk menemukan file:
Ini adalah file php.ini yang perlu Anda edit. Cukup buka dan edit file, lalu simpan:
5. Jangan lupa, setelah diedit berkas php.ini, restart Apache.Service terlebih dahulu. Semoga berhasil ^_^
Cara Memperbaiki PHP.INI Yang Tidak Berfungsi?
FTP, singkatan dari File Transfer Protocol, adalah protokol jaringan yang dulunya banyak digunakan untuk memindahkan file antara client dan server. Sejak itu telah diganti dengan cara yang lebih cepat, lebih aman, dan lebih mudah dalam mengirimkan file. Banyak pengguna internet biasa yang ingin mendownload langsung dari browser web mereka dengan https, dan pengguna command-line lebih cenderung menggunakan protokol aman seperti scp atau sFTP.
FTP masih digunakan untuk mendukung aplikasi lawas dan alur kerja dengan kebutuhan yang sangat spesifik. Jika Anda memiliki pilihan protokol apa yang akan digunakan, pertimbangkan untuk mengeksplorasi pilihan yang lebih modern. Bila Anda membutuhkan FTP, bagaimanapun, vsftpd adalah pilihan yang sangat baik. Dioptimalkan untuk keamanan, kinerja, dan stabilitas, vsftpd menawarkan perlindungan yang kuat terhadap banyak masalah keamanan yang ditemukan di server FTP lain dan merupakan default untuk banyak distribusi Linux.
Dalam tutorial ini, kita akan menunjukkan cara mengkonfigurasi vsftpd agar pengguna dapat mengunggah file ke direktori rumahnya menggunakan FTP dengan kredensial masuk yang dijamin oleh SSL / TLS.
Prasyarat
Untuk mengikuti tutorial ini Anda akan memerlukan:
Setelah Anda memiliki server Ubuntu di tempat, Anda siap untuk memulai.
Dalam kasus ini, hanya SSH yang diperbolehkan melalui:
Anda mungkin memiliki peraturan lain di tempat atau tidak ada aturan firewall sama sekali. Karena hanya lalu lintas ssh diizinkan dalam kasus ini, kita perlu menambahkan aturan untuk lalu lintas FTP.
Kita perlu membuka port 20 dan 21 untuk FTP, port 990 untuk nanti bila kita mengaktifkan TLS, dan port 40000-50000 untuk kisaran port pasif yang akan kita tetapkan dalam file konfigurasi:
Dengan perubahan vsftpd dan port yang diperlukan terbuka, kita siap melanjutkan ke langkah berikutnya.
Langkah 3 - Mempersiapkan Direktori Pengguna
Tetapkan password saat diminta dan jangan ragu untuk menekan "ENTER" melalui perintah lainnya.
FTP umumnya lebih aman saat pengguna dibatasi ke direktori tertentu. Vsftpd menyelesaikan ini dengan chroot jails. Saat
Dalam contoh ini, daripada menghapus hak tulis dari direktori home, kita akan membuat direktori
Buat folder
Selanjutnya, kita akan membuat direktori dimana file dapat diupload dan memberikan kepemilikan kepada pengguna:
Langkah 4 - Mengkonfigurasi Akses FTP
Selanjutnya kita perlu mengubah beberapa nilai dalam file. Agar pengguna dapat mengunggah file, kita akan memberi tanda komentar pada setelan write_enable sehingga kita memiliki:
Kita juga akan memberi tanda komentar pada chroot untuk mencegah pengguna yang terhubung FTP mengakses file atau perintah di luar pohon direktori.
Akhirnya, kita akan membuat dan menambahkan pengguna kita ke file. Kita akan menggunakan flag
Restart daemon (perangkat) untuk memuat perubahan konfigurasi:
Langkah 5 - Menguji Akses FTP
Tutup koneksi:
Kita akan ganti ke direktori file, lalu gunakan perintah get untuk mentransfer file uji yang kita buat tadi ke mesin lokal kita:
Kita akan segera kembali dan mencoba mengunggah file dengan nama baru untuk menguji hak akses tulis:
Tutup koneksi:
Kami akan menggunakan
Anda akan diminta memberikan informasi alamat untuk sertifikat Anda. Ganti informasi Anda sendiri untuk pertanyaan di bawah ini:
Untuk
informasi lebih rinci tentang bendera sertifikat, lihat OpenSSL
Essentials: Working with SSL Certificates, Private Keys and CSRs
Setelah Anda membuat sertifikat, buka lagi file konfigurasi
Di bawahnya, tambahkan baris berikut yang menunjuk ke sertifikat dan kunci pribadi yang baru saja kita buat:
Setelah itu, kami akan memaksa penggunaan SSL, yang akan mencegah klien yang tidak dapat menangani TLS dari koneksi. Hal ini diperlukan untuk memastikan semua lalu lintas dienkripsi namun dapat memaksa pengguna FTP Anda untuk mengubah klien. Ubah
FTP masih digunakan untuk mendukung aplikasi lawas dan alur kerja dengan kebutuhan yang sangat spesifik. Jika Anda memiliki pilihan protokol apa yang akan digunakan, pertimbangkan untuk mengeksplorasi pilihan yang lebih modern. Bila Anda membutuhkan FTP, bagaimanapun, vsftpd adalah pilihan yang sangat baik. Dioptimalkan untuk keamanan, kinerja, dan stabilitas, vsftpd menawarkan perlindungan yang kuat terhadap banyak masalah keamanan yang ditemukan di server FTP lain dan merupakan default untuk banyak distribusi Linux.
Dalam tutorial ini, kita akan menunjukkan cara mengkonfigurasi vsftpd agar pengguna dapat mengunggah file ke direktori rumahnya menggunakan FTP dengan kredensial masuk yang dijamin oleh SSL / TLS.
Prasyarat
Untuk mengikuti tutorial ini Anda akan memerlukan:
- Server Ubuntu 16.04 dengan pengguna non-root dengan hak istimewa sudo: Anda dapat mempelajari lebih lanjut tentang cara menyiapkan pengguna dengan hak istimewa ini di Setup Server Awal kita dengan panduan Ubuntu 16.04.
Setelah Anda memiliki server Ubuntu di tempat, Anda siap untuk memulai.
Langkah 1 - Memasang vsftpd
Kita akan mulai dengan memperbarui daftar paket Anda dan menginstal daemon vsftpd:
$ sudo apt-get update
$ sudo apt-get install vsftpd
Saat penginstalan selesai, kita akan menyalin file konfigurasi agar kita bisa memulai dengan konfigurasi kosong, menyimpan yang asli sebagai backup.
$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
Dengan cadangan konfigurasi di tempat, maka kita siap untuk mengkonfigurasi firewall.
Langkah 2 - Membuka Firewall
Kita akan memeriksa status firewall untuk melihat apakah itu diaktifkan. Jika demikian, kita akan memastikan bahwa lalu lintas FTP diizinkan sehingga Anda tidak akan mematuhi peraturan firewall yang menghalangi Anda saat tiba saatnya untuk melakukan pengujian.
$ sudo ufw status
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Kita perlu membuka port 20 dan 21 untuk FTP, port 990 untuk nanti bila kita mengaktifkan TLS, dan port 40000-50000 untuk kisaran port pasif yang akan kita tetapkan dalam file konfigurasi:
$ sudo ufw allow 20/tcp
$ sudo ufw allow 21/tcp
$ sudo ufw allow 990/tcp
$ sudo ufw allow 40000:50000/tcp
$ sudo ufw status
Sekarang aturan firewall kita terlihat seperti:
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
990/tcp ALLOW Anywhere
20/tcp ALLOW Anywhere
21/tcp ALLOW Anywhere
40000:50000/tcp ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
20/tcp (v6) ALLOW Anywhere (v6)
21/tcp (v6) ALLOW Anywhere (v6)
990/tcp (v6) ALLOW Anywhere (v6)
40000:50000/tcp (v6) ALLOW Anywhere (v6)
Langkah 3 - Mempersiapkan Direktori Pengguna
Untuk tutorial ini, kita akan membuat user, tapi Anda mungkin sudah memiliki pengguna yang membutuhkan akses FTP. Kita akan berhati-hati untuk melestarikan akses pengguna yang ada ke data mereka sesuai petunjuk berikut. Meski begitu, sebaiknya Anda mulai dengan pengguna baru sampai Anda mengonfigurasi dan menguji penyiapan Anda.
Pertama, kita akan menambahkan pengguna uji coba:
$ sudo adduser sammy
FTP umumnya lebih aman saat pengguna dibatasi ke direktori tertentu. Vsftpd menyelesaikan ini dengan chroot jails. Saat
chroot
diaktifkan untuk pengguna lokal, mereka dibatasi ke direktori home mereka secara default. Namun, karena cara membagi direktorivsftpd
, itu tidak boleh bisa ditulis oleh pengguna. Ini baik untuk pengguna baru yang seharusnya hanya terhubung melalui FTP, namun pengguna yang ada mungkin perlu menulis ke folder asal mereka jika mereka juga mengakses shell.Dalam contoh ini, daripada menghapus hak tulis dari direktori home, kita akan membuat direktori
ftp
untuk berfungsi sebagai direktori file chroot
dan writable untuk menyimpan file
yang sebenarnya.Buat folder
ftp
, tetapkan kepemilikannya, dan pastikan untuk menghapus hak akses tulis dengan perintah berikut:
$ sudo mkdir /home/sammy/ftp
$ sudo chown nobody:nogroup /home/sammy/ftp
$ sudo chmod a-w /home/sammy/ftp
Mari verifikasi izin:
$ sudo ls -la /home/sammy/ftp
Output
total 8
4 dr-xr-xr-x 2 nobody nogroup 4096 Aug 24 21:29 .
4 drwxr-xr-x 3 sammy sammy 4096 Aug 24 21:29 ..
$ sudo mkdir /home/sammy/ftp/files
$ sudo chown sammy:sammy /home/sammy/ftp/files
Sebuah izin memeriksa direktori files harus mengembalikan yang berikut ini:
$ sudo ls -la /home/sammy/ftp
Akhirnya, kita akan menambahkan file test.txt untuk digunakan saat kita menguji nanti:
$ echo "vsftpd test file" | sudo tee /home/sammy/ftp/files/test.txt
Sekarang setelah kita mengamankan direktori ftp dan mengizinkan akses pengguna ke direktori files, kita akan mengalihkan perhatian kita ke konfigurasi.
Langkah 4 - Mengkonfigurasi Akses FTP
Kita berencana mengizinkan satu pengguna dengan akun shell lokal untuk terhubung dengan FTP. Dua pengaturan kunci untuk ini sudah diatur dalam vsftpd.conf. Mulailah dengan membuka file konfigurasi untuk memverifikasi bahwa pengaturan dalam konfigurasi Anda cocok dengan yang di bawah ini:
$ sudo nano /etc/vsftpd.conf
/etc/vsftpd.conf
. . .
# Allow anonymous FTP? (Disabled by default).
anonymous_enable=NO
#
# Uncomment this to allow local users to log in.
local_enable=YES
. . .
/etc/vsftpd.conf
. . .
write_enable=
YES
. . .
/etc/vsftpd.conf
. . .
chroot_local_user=YES
. . .
Kita akan menambahkan user_sub_token
untuk memasukkan nama pengguna di jalur direktori local_root directory
kita sehingga konfigurasi kita akan bekerja untuk pengguna ini dan pengguna masa depan yang mungkin ditambahkan.
/etc/vsftpd.conf
user_sub_token=$USER
local_root=/home/$USER/ftp
Kita akan membatasi jangkauan port yang bisa digunakan untuk FTP pasif untuk memastikan koneksi yang memadai tersedia:
/etc/vsftpd.conf
pasv_min_port = 40000
pasv_max_port = 50000
Note: We pre-opened the ports that we set here for the passive port range. If you change the values, be sure to update your firewall settings.
Karena kita hanya berencana mengizinkan akses FTP berdasarkan kasus per kasus, kita akan menyiapkan konfigurasi sehingga akses diberikan kepada pengguna hanya jika ditambahkan secara eksplisit ke daftar daripada secara default:
/etc/vsftpd.conf
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
userlist_deny
matikan logika. Saat disetel ke "YES", pengguna yang masuk dalam daftar ditolak akses FTP. Bila disetel ke "TIDAK", hanya pengguna yang masuk dalam daftar yang diizinkan mengaksesnya. Setelah selesai melakukan perubahan, simpan dan keluar dari file.
Akhirnya, kita akan membuat dan menambahkan pengguna kita ke file. Kita akan menggunakan flag
-a
untuk ditambahkan ke file:
$ echo "sammy" | sudo tee -a /etc/vsftpd.userlist
Periksa kembali apakah itu ditambahkan seperti yang Anda harapkan:
$ cat /etc/vsftpd.userlist
Output
sammy
$ sudo systemctl restart vsftpd
Sekarang kita siap untuk pengujian.Langkah 5 - Menguji Akses FTP
Kita telah mengonfigurasi server agar hanya mengizinkan pengguna untuk terhubung melalui FTP. Mari kita pastikan itu yang terjadi.
Pengguna anonim harus gagal untuk terhubung: Kita menonaktifkan akses anonim. Di sini kita akan mengujinya dengan mencoba menyambung secara anonim. Jika kita melakukannya dengan benar, pengguna anonim harus ditolak izinnya:
$ ftp -p 203.0.113.0
Output
Connected to 203.0.113.0.
220 (vsFTPd 3.0.3)
Name (203.0.113.0:default): anonymous
530 Permission denied.
ftp: Login failed.
ftp>
ftp > bye
Pengguna selain sammy
harus gagal untuk terhubung: Selanjutnya, kita akan mencoba menghubungkan sebagai pengguna sudo kita. Mereka juga harus ditolak aksesnya, dan itu harus terjadi sebelum mereka diizinkan memasukkan kata sandinya.
ftp -p 203.0.113.0
Output
Connected to 203.0.113.0.
220 (vsFTPd 3.0.3)
Name (203.0.113.0:default): sudo_user
530 Permission denied.
ftp: Login failed.
ftp>
sammy
harus bisa
terhubung, begitu juga file baca dan tulis: Di sini, kami akan
memastikan bahwa pengguna kami yang ditunjuk dapat terhubung:
ftp -p 203.0.113.0
Output
Connected to 203.0.113.0.
220 (vsFTPd 3.0.3)
Name (203.0.113.0:default): sammy
331 Please specify the password.
Password: your_user's_password
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
ftp > cd files
ftp > get test.txt
Output
227 Entering Passive Mode (203,0,113,0,169,12).
150 Opening BINARY mode data connection for test.txt (16 bytes).
226 Transfer complete.
16 bytes received in 0.0101 seconds (1588 bytes/s)
ftp>
ftp > put test.txt upload.txt
Output
227 Entering Passive Mode (203,0,113,0,164,71).
150 Ok to send data.
226 Transfer complete.
16 bytes sent in 0.000894 seconds (17897 bytes/s)
ftp > bye
Setelah kami menguji konfigurasi kami, kami akan mengambil langkah untuk mengamankan server kami lebih jauh. Langkah 6 - Mengamankan Transaksi
Karena FTP tidak mengenkripsi data apapun dalam perjalanan, termasuk kredensial pengguna, kami akan mengaktifkan TTL / SSL untuk menyediakan enkripsi tersebut. Langkah pertama adalah membuat sertifikat SSL untuk digunakan dengan vsftpd.Kami akan menggunakan
openssl
untuk membuat sertifikat baru dan menggunakan -days
flag agar berlaku selama satu tahun. Dalam perintah yang sama, kita akan menambahkan kunci RSA 2048-bit pribadi. Kemudian dengan menetapkan kedua -keyout
dan -out
flag ke nilai yang sama, kunci privat dan sertifikat akan berada di file yang sama.
Kami akan melakukan ini dengan perintah berikut:
$ sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
Anda akan diminta memberikan informasi alamat untuk sertifikat Anda. Ganti informasi Anda sendiri untuk pertanyaan di bawah ini:
Output
Generating a 2048 bit RSA private key
............................................................................+++
...........+++
writing new private key to '/etc/ssl/private/vsftpd.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:NY
Locality Name (eg, city) []:New York City
Organization Name (eg, company) [Internet Widgits Pty Ltd]:DigitalOcean
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
Setelah Anda membuat sertifikat, buka lagi file konfigurasi
vsftpd
:
$ sudo nano /etc/vsftpd.conf
Menuju bagian bawah file, Anda harus dua baris yang dimulai dengan rsa_
. Komentar mereka sehingga mereka terlihat seperti:
/etc/vsftpd.conf
# rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
# rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
/etc/vsftpd.conf
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable
ke YES
:Cara Membuat FTP Server Menggunakan VSFTPD di Ubuntu
Langganan:
Postingan (Atom)