Thứ hai, 21/11/2016 | 00:00 GMT+7

Cách chia sẻ tệp bằng FileRun trên CentOS 7

FileRun là một trình quản lý file PHP và ứng dụng chia sẻ file giúp bạn truy cập, sắp xếp, xem và chỉnh sửa file . Bạn có thể sử dụng nó với các tài liệu văn phòng, ảnh, nhạc và bất kỳ loại file nào khác mà bạn có thể lưu trữ trên web server của bạn . Trong hướng dẫn này, ta sẽ cài đặt FileRun trên server CentOS 7.

Một bài báo từ FileRun

Yêu cầu

Để làm theo hướng dẫn này, bạn cần :

FileRun là một ứng dụng thân thiện với tài nguyên, vì vậy bộ nhớ 512MB sẽ đủ cho hầu hết các trường hợp. Đối với không gian đĩa, FileRun và tất cả các phần mềm bên thứ ba được yêu cầu sẽ không sử dụng quá 2GB.

Bước 1 - Cài đặt database của FileRun

FileRun sử dụng MariaDB để quản lý database của nó, database này chứa cài đặt ứng dụng, cài đặt user và thông tin về file của bạn. Đầu tiên, ta sẽ tạo database này và account user sẽ truy cập nó.

Để bắt đầu, hãy đăng nhập vào MariaDB bằng account root trên server của bạn.

  • mysql -u root -p

Nhập password bạn đã đặt cho user root MariaDB khi cài đặt server .

FileRun yêu cầu một database riêng để lưu trữ dữ liệu của nó. Bạn có thể gọi database này bạn muốn ; ở đây, ta đang sử dụng tên filerun .

  • CREATE DATABASE filerun;

Tiếp theo, tạo một account user MariaDB riêng biệt sẽ tương tác với database mới được tạo. Tạo database và account một chức năng là một ý tưởng hay từ quan điểm quản lý và bảo mật.

Giống như đặt tên cho database , bạn có thể chọn bất kỳ tên user nào bạn muốn . Ở đây, ta đang sử dụng tên user sammy . Đảm bảo rằng bạn chọn một password database mạnh.

  • GRANT ALL ON filerun.* to 'sammy'@'localhost' IDENTIFIED BY 'your_database_password';

Với user được chỉ định quyền truy cập vào database , hãy làm mới bảng-cấp quyền quyền đảm bảo rằng version MariaDB đang chạy biết về việc gán quyền gần đây.

  • FLUSH PRIVILEGES;

Đến đây bạn có thể thoát khỏi MariaDB.

  • exit

Ghi lại tên database filerun , tên user sammy và password bạn đã chọn, vì bạn cần lại thông tin này trong thời gian ngắn.

Bước 2 - Cài đặt PHP

PHP-FPM (FastCGI Process Manager) là một triển khai PHP FastCGI thay thế có một số tính năng bổ sung hữu ích cho các trang web bận rộn hơn. Ở đây, đây là lựa chọn tốt hơn so với mod_php phổ biến bởi vì, trong số các lợi ích khác, các file được tạo bởi các tập lệnh PHP sẽ không thuộc sở hữu của web server . Điều này nghĩa là bạn có thể đồng thời truy cập chúng qua FTP hoặc các phương pháp khác.

FileRun yêu cầu PHP version 5.5 trở lên. CentOS 7 chỉ cung cấp version PHP cũ hơn 5.4 theo mặc định, vì vậy trước tiên ta cần cập nhật repository yum .

  • sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  • sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Bây giờ, hãy cài đặt PHP 5.6.

  • sudo yum install php56w-fpm

Tiếp theo, tạo các liên kết khởi động hệ thống cho PHP-FPM và khởi động nó.

  • sudo systemctl enable php-fpm.service
  • sudo systemctl start php-fpm.service

PHP-FPM là một quy trình daemon (với init script /etc/init.d/php-fpm ) chạy một server FastCGI trên cổng 9000 . Để Apache hoạt động với PHP-FPM, ta có thể sử dụng chỉ thị ProxyPassMatch trong mỗi vhost sử dụng PHP-FPM. Ta làm điều đó bằng cách chỉnh sửa file cấu hình Apache:

  • sudo vi /etc/httpd/conf/httpd.conf

Thêm khối này vào gần cuối, trước dòng IncludeOptional conf.d/*.conf .

Phần để thêm vào httpd.conf
<IfModule proxy_module>   ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/html/$1 </IfModule> 

Nó sẽ giống như thế này:

/etc/httpd/conf/httpd.conf
. . . #EnableMMAP off EnableSendFile on  <IfModule proxy_module>   ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/var/www/html/$1 </IfModule>  # Supplemental configuration # # Load  config files in the "/etc/httpd/conf.d" directory if any. IncludeOptional conf.f/*.conf 

Tiếp theo, lên cao hơn trong cùng một file , định vị chỉ thị DirectoryIndex và thêm index.php vào đó.

/etc/httpd/conf/httpd.conf
. . . # # DirectoryIndex: sets the file that Apache will serve if a directory # is requested. # <IfModule dir_module>     DirectoryIndex index.html index.php </IfModule> . . . 

Khởi động lại Apache để kết thúc quá trình cài đặt PHP.

  • sudo systemctl restart httpd.service

FileRun cũng cần các module PHP bổ sung sau:

  • php56w-mbstring , cho phép FileRun xử lý các ký tự nhiều byte.
  • php56w-pdophp56w-mysql , cho phép FileRun sử dụng database MySQL / MariaDB.
  • php56w-mcrypt , cung cấp khả năng mật mã cho FileRun.
  • php56w-gd , là tùy chọn nhưng cho phép FileRun tạo hình đại diện user , mã QR và các hình ảnh tương tự nhỏ khác.
  • php56w-opcache , cũng là tùy chọn nhưng cải thiện đáng kể hiệu suất của PHP.

Ta có thể cài đặt tất cả những điều trên bằng lệnh sau:

  • sudo yum install php56w-mbstring php56w-mcrypt php56w-opcache php56w-pdo php56w-mysql php56w-gd

Một module cần thiết cuối cùng không có trong repository lưu trữ yumionCube . ionCube là một phần mở rộng PHP được sử dụng rộng rãi để chạy mã PHP được bảo vệ nhằm tăng cường bảo mật trang web, chặn phần mềm độc hại và tăng hiệu suất.

Download version ionCube mới nhất vào folder /usr/lib64/php/modules .

  • sudo wget -P /usr/lib64/php/modules http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Sau đó extract file trong folder đó.

  • sudo tar xvfz /usr/lib64/php/modules/ioncube_loaders_lin_x86-64.tar.gz -C /usr/lib64/php/modules

Tiếp theo, hãy tạo một file sẽ tự động được PHP thêm vào cấu hình của nó. Điều này sẽ bao gồm các cài đặt dành riêng cho FileRun.

  • sudo vi /etc/php.d/filerun.ini

Dán nội dung sau vào file đã tạo:

date.timezone  = "UTC" zend_extension = "/usr/lib64/php/modules/ioncube/ioncube_loader_lin_5.6.so" 

Thao tác này sẽ đặt múi giờ và yêu cầu PHP tải phần mở rộng ionCube. Ở đây, ta đã chọn múi giờ UTC, nhưng bạn có thể chọn múi giờ của riêng mình .

Lưu ý: Bạn có thể xem tất cả các cài đặt PHP được đề xuất của FileRun tại đây . Các chỉ thị có thể được thêm vào file /etc/php.d/filerun.ini .

Cuối cùng, ta cần khởi động lại dịch vụ PHP-FPM để các thay đổi có hiệu lực:

  • sudo systemctl restart php-fpm.service

Server của bạn hiện đáp ứng tất cả các yêu cầu và ta có thể tiến hành cài đặt FileRun.

Bước 3 - Cài đặt FileRun

Download FileRun trong folder root của web server của bạn ( /var/www/html/ ):

  • cd /var/www/html/
  • sudo wget -O FileRun.zip http://www.filerun.com/download-latest

Để extract trình cài đặt FileRun, ta cần tiện ích unzip .

  • sudo yum install unzip

Bây giờ, extract repository FIleRun.

  • sudo unzip FileRun.zip

Đặt Apache làm chủ sở hữu của folder để nó có thể cho phép PHP cài đặt FileRun.

  • sudo chown -R apache:apache /var/www/html/

Mở trình duyệt của bạn và trỏ nó đến http:// your_server_ip . Từ đây, bạn chỉ cần làm theo trình cài đặt web, điều này sẽ giúp bạn chạy FileRun chỉ với một vài cú nhấp chuột.

Trong lần đầu tiên Chào mừng bạn đến với FileRun! , nhấp vào nút Tiếp theo màu xanh lam ở dưới cùng bên phải để tiếp tục. Xem lại kiểm tra yêu cầu server trên trang tiếp theo đảm bảo không có thông báo lỗi màu đỏ, sau đó nhấp vào Tiếp theo .

Trang tiếp theo cài đặt kết nối database . Điền vào các trường như sau:

  • MySQL Hostname phải là localhost .
  • Tên database phải là tên bạn đã sử dụng trong Bước 2 của hướng dẫn này. Ví dụ của ta đã sử dụng filerun .
  • User MySQL phải là tên bạn đã sử dụng trong Bước 2 của hướng dẫn này. Ví dụ của ta sử dụng sammy .
  • Mật khẩu phải là password bạn đã chọn ở Bước 2.

Sau khi những điều này được điền vào, hãy nhấp vào Tiếp theo . Bạn sẽ thấy một màn hình cho biết Tất cả đã xong! , nghĩa là FileRun đã được cài đặt thành công.

Lưu ý : Bạn sẽ thấy tên user và password (được tạo ngẫu nhiên) trên màn hình này. Hãy chắc chắn để sao chép nó! Bạn cần nó sau.

Nhấp vào Tiếp theo để mở FileRun. Bạn sẽ thấy một trang đăng nhập. Biểu mẫu phải được điền trước, vì vậy bạn có thể chỉ cần nhấp vào Đăng nhập .

Bạn đã đăng nhập tất cả! Tiếp theo, hãy đảm bảo cài đặt của ta được bảo mật.

Bước 4 - Bảo mật cài đặt FileRun

Ngay sau khi bạn đăng nhập vào FileRun, bạn sẽ được yêu cầu thay đổi password . Mặc dù password được tạo tự động khá an toàn, nhưng bạn vẫn nên đặt password của riêng mình.

Cảnh báo: FileRun superuser là account duy nhất không được bảo vệ trước các cuộc tấn công đăng nhập brute force, vì vậy điều quan trọng là bạn phải đặt password mà máy tính rất khó đoán. Đặt một password dài có chứa các chữ cái hoa, chữ số và ký hiệu.

Quyền của file ứng dụng FileRun không cho phép PHP (hoặc bất kỳ ứng dụng web server nào khác) thực hiện thay đổi đối với chúng, vì vậy hãy cập nhật chúng ngay bây giờ.

  • sudo chown -R root:root /var/www/html

Thư mục /var/www/html/system/data FileRun là folder duy nhất mà PHP cần quyền ghi, vì vậy hãy cập nhật nó.

  • sudo chown -R apache:apache /var/www/html/system/data

Theo mặc định, folder chính của superuser nằm bên trong /var/www/html/system/data/ . Điều quan trọng là bạn phải chỉnh sửa account user từ console FileRun và đặt đường dẫn folder chính trỏ đến một folder nằm bên ngoài khu vực công cộng của web server của bạn (tức là bên ngoài /var/www/html ).

Một giải pháp dễ dàng là tạo một folder có tên /files và lưu trữ tất cả các file FileRun trong đó:

  • sudo mkdir /files
  • sudo chown apache:apache /files

Tiếp theo, kết nối lại với server MariaDB.

  • mysql -u root -p

Cập nhật account user MariaDB đã cấu hình và xóa các quyền ALTERDROP .

  • REVOKE ALTER, DROP ON filerun.* FROM 'sammy'@'localhost';
  • FLUSH PRIVILEGES;

Sau đó thoát khỏi MariaDB bằng lệnh CTRL+D

Lưu ý : Bạn cần phải thêm lại các quyền này trước khi cài đặt bất kỳ bản cập nhật phần mềm FileRun nào trong tương lai. Để làm điều đó, hãy kết nối lại với server database và chạy GRANT ALTER, DROP ON filerun .* TO ' sammy '@'localhost'; tiếp theo là FLUSH PRIVILEGES; .

Cài đặt FileRun của bạn hiện đã được bảo mật và sẵn sàng sử dụng. Nếu muốn, bây giờ bạn có thể cài đặt một số gói tùy chọn để hỗ trợ hình thu nhỏ cho các loại file khác nhau.

Bước 5 - Thêm hỗ trợ hình thu nhỏ (Tùy chọn)

Để tạo hình thu nhỏ cho file hình ảnh, file nhiếp ảnh và tài liệu PDF, bạn cần cài đặt ImageMagick.

  • sudo yum install ImageMagick*

Tiếp theo, kích hoạt nó bên trong FileRun từ console , trong phần Cấu hình hệ thống > Tệp > Xem trước hình ảnh , sử dụng đường dẫn /usr/bin/convert .

Để tạo hình thu nhỏ cho file video, bạn cần cài đặt ffmpeg, có sẵn trong repository ATrpms.

  • sudo rpm --import http://packages.atrpms.net/RPM-GPG-KEY.atrpms
  • sudo rpm -ivh http://dl.atrpms.net/el6-x86_64/atrpms/stable/atrpms-repo-6-7.el6.x86_64.rpm

Cuối cùng, cài đặt nó.

  • sudo yum install ffmpeg

Tương tự, kích hoạt nó bên trong FileRun từ console , trong phần Cấu hình hệ thống > Tệp > Xem trước hình ảnh , sử dụng đường dẫn /usr/bin/ffmpeg .

Nếu bạn truy cập FileRun trong trình duyệt của bạn ngay bây giờ, bạn sẽ thấy các hình thu nhỏ cho các file của bạn .

Kết luận

Đến đây bạn đã triển khai thành công FileRun trên server riêng và an toàn của bạn . Đã đến lúc tải lên file , ảnh, nhạc hoặc tài liệu công việc của bạn và bắt đầu chia sẻ.

Có rất nhiều điều bổ sung bạn có thể làm từ đây. Ví dụ: bạn có thể trỏ một domain đến server của bạn theo hướng dẫn về tên server này .

Bạn cũng có thể cài đặt SSL. Chứng chỉ SSL sẽ mã hóa giao tiếp giữa trình duyệt và cài đặt FileRun của bạn. Nó không chỉ giúp tăng đáng kể quyền riêng tư và bảo mật cho dữ liệu mà còn cho phép bạn truy cập các file của bạn bằng ứng dụng Android miễn phí FileRun.

Để cài đặt certificate SSL miễn phí, hãy làm theo hướng dẫn Let's Encrypt này . Nếu bạn không có domain và bạn đang sử dụng cấu hình này chỉ để thử nghiệm hoặc sử dụng cá nhân, bạn có thể sử dụng certificate tự ký để thay thế. Làm theo hướng dẫn SSL tự ký cho Apache để cài đặt .

Để biết thêm thông tin về các tính năng và cài đặt của FileRun, hãy truy cập tài liệu chính thức .


Tags:

Các tin liên quan

Cách cài đặt và cấu hình Grafana để vẽ đồ thị đẹp từ Zabbix trên CentOS 7
2016-11-13
Cách cài đặt và cấu hình ownCloud trên CentOS 7
2016-10-31
Cách triển khai bộ đệm trình duyệt với module tiêu đề của Nginx trên CentOS 7
2016-10-31
Cách sử dụng module bản đồ của Nginx trên CentOS 7
2016-10-31
Cách cài đặt Go 1.7 trên CentOS 7
2016-10-31
Cách cài đặt và cấu hình Sphinx trên CentOS 7
2016-09-20
Cách cài đặt MEAN Stack với MEAN.JS trên CentOS 7
2016-09-09
Cách tạo người dùng Sudo trên CentOS [Quickstart]
2016-03-29
Cách cài đặt Graylog 1.x trên CentOS 7
2016-03-21
Cách cài đặt Puppet 4 trong Thiết lập Master-Agent trên CentOS 7
2016-03-08