Saya bekerja di distrik sekolah. Saya ditugaskan membangun server penyimpanan untuk siswa. Tempat bagi mereka untuk bekerja dari sekolah dan rumah.
Tantangan saya adalah membuat ini bekerja dari rumah. Di sekolah mereka login, otentikasi, dan mereka mendapatkan drive yang dipetakan ke folder mereka di server ( S:\fileserver\studentname
).
Pertanyaan saya adalah bagaimana saya bisa membuat ini tersedia untuk siswa di rumah?
Server menjalankan Windows Server 2008 R2. Saya memiliki PHP, Apache, dan MySQL yang bekerja bersama. Gagasan saya adalah menulis skrip yang akan "merangkak" melalui direktori yang berisi semua folder siswa, lalu membuat instance dari setiap file dan folder dalam DB MySQL. Buat halaman login yang akan menggunakan LDAP untuk autentikasi, dan begitu mereka masuk ke server dari rumah, mereka mendapatkan halaman dengan folder-file yang diikat dengan nama pengguna mereka.
Adakah yang pernah menempatkan sesuatu di luar sana bersama-sama?
Jawaban:
Jika Anda bersikeras melakukan ini (sebagai lawan pergi dengan jawaban @sweaves) maka saya akan mulai dengan:
menjatuhkan Php, Apache, dan MySql. Mereka tidak perlu dan akan memperkenalkan sakit kepala mereka sendiri.
Dapatkan server FTPS aktif dan berjalan. Sejalan dengan ini, Anda mungkin mempertimbangkan dump Windows Server 2003 mendukung 2008 R2. IIS 7 memiliki banyak item FTP yang lebih baik. Http://blogs.technet.com/b/chrisavis/archive/2008/06/12/how-to-configure-ftp-over-ssl-secure-ftp-on- windows-2008-dalam-kurang dari 10 menit.aspx
Jika Anda tidak dapat melakukan ini, lihat ini untuk cara mengatur File Zilla agar berfungsi dengan AD. http://retrohack.com/enabling-filezilla-server-integration-with-active-directory-authentication/
Pilihan lain (terima kasih @jscott) adalah menggunakan WebDav ( http://www.iis.net/download/webdav ). Inilah sekolah lain yang melakukan hal yang persis sama: http://kb.iu.edu/data/araf.html
Anda juga dapat mengatur server "> SFTP. SFTP mendukung login tanpa kata sandi, tetapi tidak didukung di Windows di luar kotak.
Catatan, solusi filezilla lebih banyak pekerjaan manajemen daripada IIS 7 satu.
sumber
Solusi yang jauh lebih mudah adalah dengan mengatur VPN. Siswa kemudian dapat masuk ke VPN dan mengakses semua sumber daya mereka seolah-olah mereka duduk di dalam kampus. Lihat detailnya ... http://lifehacker.com/162563/how-to-set-up-free-vpn
sumber
Apa yang sebenarnya harus mereka lakukan? Dapatkan akses saja? Jika Anda membukanya ke FTP, Anda meminta masalah besar. Jika mereka membutuhkan akses ke alat yang konsisten untuk mengerjakan dokumen dari sekolah, buka server (atau kluster) untuk layanan desktop jarak jauh.
Ya, mereka perlu menginstal klien desktop jarak jauh jika mereka belum memilikinya (mereka mungkin sudah melakukannya) tetapi klien tersedia untuk Linux, Windows, dan Mac secara gratis. Koneksi dienkripsi, dan mereka dapat memiliki akses ke apa pun yang digunakan sekolah Anda untuk Office atau alat lain, kecuali Anda menjalankan tugas berat seperti Photoshop.
Jika Anda menggunakan RDP, Anda mendapatkan enkripsi, Anda mendapatkan satu port untuk dibuka pada firewall Anda, dan Anda mendapatkan standarisasi utilitas (tidak "Saya membuat ini di rumah dan itu bekerja dengan baik, mengapa tidak terbuka di sini?" Keluhan) plus manajemen terpusat. Saya telah melihat masalah serupa seperti ini diselesaikan dengan cara yang persis seperti ini beberapa kali dan hanya dalam keadaan tertentu ada masalah dengannya.
Ditambah lagi, Anda tidak memiliki siswa dengan banyak salinan dokumen berkeliaran mengeluh bahwa mereka tidak tahu MENGAPA kertas mereka adalah versi yang salah karena bekerja HALUS di rumah ... atau mereka tidak menyimpannya di tempat yang tepat .. .etc.
sumber
Bagaimana dengan WebDAV?
Ini didukung di apache dan Anda masih bisa menggunakan LDAP untuk otentikasi.
Pengguna akan dapat mengakses file mereka dari browser, dan versi modern Windows dan OS X memungkinkan pengguna untuk me-mount share WebDAV di bawah Explorer dan Finder masing-masing.
Itu juga mencegah masalah yang terkait dengan mencoba untuk menyimpan keadaan sistem file yang terus berubah disinkronkan dengan database dalam metode propsed Anda.
sumber
Lihatlah Adito / OpenVPN ALS . Gratis, akan dipasang di Windows atau Linux, dan membuatnya sangat mudah untuk membuat antarmuka web untuk berbagi file, serta banyak fitur lainnya. Saya menggunakannya di kampus tempat saya bekerja. Itu memang memiliki beberapa kelemahan: itu membutuhkan java untuk diinstal pada klien, memicu pemblokir pop up pada banyak browser, pengaturan sertifikat bisa lebih mudah, dan tampilan halaman untuk daftar file bisa lebih mudah. Jika Anda memilih untuk mengatur webdav, itu dapat digunakan untuk membuatnya lebih mudah (dan lebih dapat diandalkan) bagi pengguna Anda untuk mendapatkan drive yang benar dipetakan.
sumber
Seperti yang orang lain katakan - jangan gunakan FTP - ada banyak, banyak hal yang salah dengannya. OTOH, Anda mungkin harus menggunakan protokol yang tidak mengharuskan pengguna untuk menginstal perangkat lunak sisi klien tambahan; meskipun akses berbasis ssh (sftp, scp) akan ideal, mesin MSWindows tidak datang dengan klien sebagai standar.
Tidak ada ujung manajer file yang tersedia ditulis dalam PHP (dan mungkin bahasa lain juga). IIS melakukan beberapa hal yang sangat aneh dengan tunneling izin NTLM - tetapi jika Anda menggunakan Apache itu harus cukup aman - namun mengakses drive tidak sesederhana hanya membaca dari \ server \ username \ - Anda harus mengizinkan hak admin webserver pada file-file ini - tapi itu mimpi buruk keamanan!
Cara saya melakukannya (untuk jenis aplikasi yang sangat berbeda) adalah untuk menangani I / O melalui smbclient menggunakan nama pengguna / kata sandi dari sesi pengguna PHP - tetapi itu pada mesin Linux - AFAIK, tidak ada padanan pada MSWindows.
Tentu saja Anda ingin menggunakan kredensial yang disediakan oleh pengguna untuk mengautentikasi terhadap penyimpanan.
Ini dengan cepat menjadi rumit menakutkan!
Jadi solusi praktis adalah dengan memungkinkan siswa untuk memetakan drive di internet. Dengan begitu Anda tidak perlu khawatir tentang komplikasi menyediakan file manager yang bukan merupakan bagian integral dari sistem operasi (yaitu langsung dapat diakses dari aplikasi). Tetapi Anda tidak ingin mengekspos server Anda kepada siapa pun dan semua orang. Cara biasa untuk mengatasi masalah ini adalah VPN - dan ada banyak yang bagus dan berbiaya rendah tersedia. Atau cukup bungkus layanan dalam SSL dengan otentikasi sertifikat klien. Tetapi sekali lagi ini membutuhkan instalasi sisi klien.
Begitu.....
Bagaimana dengan formulir web untuk mengotentikasi pengguna di alamat IP yang kemudian menciptakan lubang waktu terbatas di firewall agar alamat IP dapat terhubung melalui SMB (dan mereka masih perlu memberikan nama pengguna / kata sandi untuk memetakan drive tentu saja) .
sumber
"there are many, many things wrong with [FTP]"
- sebenarnya, hanya ada beberapa hal yang salah dengan ftp, tetapi mereka adalah hal yang sangat penting . ;) Semua tetap samaPS: secara pribadi saya pikir Anda akan memiliki tingkat keberhasilan yang jauh lebih baik jika Anda port sistem Anda ke * nix, karena lebih banyak alternatif akan tersedia (bebas)
Apa yang terlintas dalam pikiran:
Dropbox:
unggah perubahan ke Dropbox . Hal yang hebat tentang dropbox adalah mereka menawarkan paket gratis 20GB (sekarang) dan dapat digunakan dengan setiap Sistem Operasi yang populer (Windows / Linux / MacOSX) tanpa kesulitan. Saya belum membaca / mengimplementasikan apa pun menggunakan Dropbox API , tapi mudah-mudahan Anda dapat mencapai tanpa banyak sakit kepala. Saya kira masalahnya adalah apa yang terjadi ketika mereka mengubah rencana penetapan harga, tetapi itu adalah sesuatu untuk nanti.
Alternatif Dropbox sumber terbuka
Setelah melakukan pencarian Google cepat tautan ini menyediakan beberapa alternatif open-source, tetapi saya tidak tahu apakah ada di antara mereka yang bagus sehingga Anda harus mengujinya.
Web
Alih-alih memberi pengguna opsi untuk menyinkronkan hanya memberi mereka kesempatan untuk mengunduh file / folder (zip). Saya pikir Anda bisa menulis sistem seperti itu tanpa terlalu banyak keluhan.
VPN / RPC
Seperti beberapa pengguna lain mengatakan berikan pengguna untuk login menggunakan VPN / RPC.
sumber
Lihatlah Ajaxplorer ( http://www.ajaxplorer.info )
Ini adalah pengelola file berbasis web (ditulis dalam PHP & Javascript) yang memberikan administrasi izin, pengguna, grup, dan Anda dapat mengatur repositori bersama serta yang pribadi.
Itu juga dapat melakukan webdav dan memiliki konektor otentikasi untuk semua jenis sistem (ldap, mysql, flatfile .....)
dengan konektor filesystem Anda dapat mengatur aturan untuk memetakan akun pengguna ke direktori individual secara otomatis yang akan memilah kebutuhan Anda untuk mengakses drive yang dipetakan pengguna.
Kami baru saja mulai menggunakannya di sini (desain / agen web) dan klien dari semua kemampuan teknis merasa sangat mudah digunakan / dimengerti
Anda harus dapat mengintegrasikannya ke sistem Anda saat ini tanpa perubahan
sumber