HowTo: FTP pakalpojums, izmantojot MySQL datu bāzi

Neskatoties uz zināmu nenoteiktību, kas var apņemt MySQL, personīgi es joprojām gribētu strādāt ar šo DB, nevis izmantot kādu citu. Man nav nekā pret Postgre, es vienkārši izmantoju MySQL visu mūžu, un līdz šim man nebija iemesla pārdomāt tā lietošanu.

Šoreiz es iemācīšu jums instalēt FTP serveri, bet ne tikai to, es iemācīšu jums ne tik sarežģīti, kā padarīt lietotājus, paroles un citus lietotāja datus glabāt MySQL datu bāzē, nevis kontos vietējais.

Kāpēc tas tā jādara?

Vienkārši, jo, veicot dublējumu, pārinstalējot serveri vai veicot citas būtiskas izmaiņas, pakalpojuma pārvietošana būtu tikpat vienkārša kā konfigurācijas faila kopēšana un MySQL datu bāzes eksportēšana uz FTP.

Lai to panāktu, mēs izmantosim Tīrs FTPd, nu ... sāksim darbu 🙂

FTP pakalpojuma instalēšana ar Pure-FTPd

1. Vispirms ir jāinstalē pakotne: tīrs-ftpd-mysql

Tādās distros kā Debian vai atvasinājumi: spēja instalēt pure-ftpd-mysql

2. Pēc instalēšanas mēs palaidām pakalpojumu, taču mums tas ir jāpārtrauc, lai apturētu to tādās sistēmās kā Debian vai atvasinājumi, pietiek ar:

/etc/init.d/pure-ftpd-mysql stop

Tomēr es jums atstāju līniju, kas pārtrauks pakalpojumu neatkarīgi no izmantotā traucējuma:

ps ax | grep pure | grep -v grep | awk '{print $1}' | xargs kill

Ja vēlaties detalizēti izprast šo rindu, izlasiet Šis raksts

Nosacījumu sagatavošana MySQL serverī

Es jau pirms neilga laika paskaidroju, kā izveidot datu bāzi, lietotāju un piešķirt šim lietotājam atļaujas datu bāzē: Lietotāji un atļaujas MySQL

Pārejam pie tā, ko mēs šeit darīsim? ...

1. Mēs izveidosim datu bāzi jā, bet vispirms mēs piekļūstam MySQL:

mysql -u root -p

Šeit viņi ievieto saknes paroli, un viņi piekļūs MySQL terminālim.

2. Iekļuvuši MySQL, mēs turpinām izveidot datu bāzi myftpdb:

CREATE DATABASE myftpdb;

Ievērojiet semikolu «;»Rindas beigās.

3. Tagad mēs izveidosim lietotāju myftpuser un mēs piešķirsim atļauju izmantot lietotāju tikko izveidotajā datu bāzē, šim lietotājam būs parole myftppasword:

CREATE USER 'myftpuser'@'localhost' IDENTIFIED BY 'myftppassword';
GRANT ALL PRIVILEGES ON myftpdb.* TO 'myftpuser'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES ;

4. Gatavs, mēs esam izveidojuši datu bāzi, lietotāju un iestatījuši atļaujas. Tagad mums ir jāimportē noklusējuma (vai tīra) datu bāze, lai tā būtu pilnīga. Lai to izdarītu, vispirms izejiet no MySQL:

exit;

Tagad lejupielādēsim jums piedāvāto noklusējuma datu bāzi:

Pēc noklusējuma lejupielādējiet DB

Vai arī serverī izmantojiet šādu rindu:

wget http://ftp.desdelinux.net/myftpdb.sql

Gatavs, tas jau ir mūsu serverī, tagad atliek tikai importēt datus:

mysql -u root -p myftpdb < myftpdb.sql

Un gatavs!

Viņi var arī izmantot kādu tīmekļa lietojumprogrammu, piemēram, Administrators o PhpMyAdmin lai importētu datu bāzi, es to atstāju pēc garšas.

5. Tas viss ir nepieciešams, lai mūsu MySQL nosacījumi būtu gatavi.

Pievienošanās FTP ar MySQL

Nu, mums jau ir instalēts FTP pakalpojums, MySQL pakalpojums ir uzstādīts un mūsu datu bāze ir iestatīta ... tagad mums vienkārši vajag, pievienojieties FTP pakalpojumam ar MySQL.

1. Vispirms mums ir jālejupielādē konfigurācijas fails, kuru izmantosim iepriekšminētajam. Servera terminālā ievietosim šādu rindu:

cd /etc/pure-ftpd/ && wget http://ftp.desdelinux.net/pure-ftpd-mysql.conf

2. Tagad mēs sākam FTP pakalpojumu, norādot to izmantot MySQL lietotāju autentificēšanai, un mēs arī norādīsim, kurš konfigurācijas fails jāizmanto, lai izveidotu savienojumu ar MySQL:

pure-ftpd-mysql -l mysql:/etc/pure-ftpd/pure-ftpd-mysql.conf

Un voila 😀

Tas ir pietiekami, lai instalētu mūsu pašu FTP serveri, kas autentificējas ar MySQL datu bāzi.

Ja vēlaties, lai serveris automātiski palaižot FTP pakalpojumu, jums tas jāievieto failā /etc/rc.local līnija, kuru mēs izmantojam, lai izpildītu FTP, tas ir, mēs ievietojam /etc/rc.local tas:

pure-ftpd-mysql -l mysql:/etc/pure-ftpd/pure-ftpd-mysql.conf

Starp citu, FTP varat piekļūt, izmantojot jebkuru pārlūkprogrammu, kā arī FTP klientus, piemēram, Filezilla ... un ne tikai to, izmantojot failu pārlūkus, piemēram, Nautilus, Dolphin vai PCManFM, varat arī lejupielādēt un augšupielādēt failus 😀

Pārbaudiet lietotāju, kurš atrodas datu bāzē

Lietotājvārds: testuser

parole: testa parole

Kā pārvaldīt FTP lietotājus?

Nu, ņemot vērā, ka tā ir MySQL datu bāze, kā jau teicu iepriekš ... pietiek ar PHPMyAdmin vai Adminer izmantošanu. Vienkārši izmantojiet iecienīto lietojumprogrammu, lai pārvaldītu datu bāzi, kurā ir viena tabula: Lietotāji … Un tajā ir lietotāji, šeit ir ekrānuzņēmums:

Ja vēlaties izveidot jaunu lietotāju, varat kopēt vai klonēt esošo līniju un mainīt datus, kas abiem lietotājiem būtu atšķirīgi, šeit es jums parādīšu ekrānuzņēmumu:

Nu ... nekas vairāk nav jāpiebilst 🙂

Es ceru, ka tas jums ir noderīgi, un jūs zināt, visi jautājumi vai ieteikumi man paziņo.

Sveicieni

PD: Šajā apmācībā mēs izmantojam datu bāzē saglabātās paroles vienkāršā tekstā, ja vēlaties lielāku drošību, iesaku izmēģināt md5 😉


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   LiGNUxer teica

    ĻOTI LABI!!! Pirms pāris nedēļām es to instalēju, bet ar vsftpd, un es neesmu pārliecināts, tāpēc mēģināšu to izmēģināt, lai redzētu, kā tas ir. Paldies

    1.    KZKG ^ Gaara teica

      Paldies draugs.
      vsftpd Es neatceros, kad es to pēdējo reizi izmantoju ... tagad būs daži gadi, ... ja es to kādreiz lietoju HAHA. Šobrīd ar PureFTPd esmu vairāk nekā laimīgs 😀

  2.   pienācīgs teica

    Ļoti labs ieguldījums!

    1.    KZKG ^ Gaara teica

      Paldies kompai 😀
      Jūs darāt to, ko varat lol ...

  3.   Datoru aizbildnis teica

    Uuumm, interesanti ... nodod man to DB IP, kuru es vēlos, lai būtu pieejama šī lietotāju un paroļu kolekcija 😉

    Neesi ļauns, cilvēks

    1.    KZKG ^ Gaara teica

      Es nesapratu hehehe ... par kādu IP un DB jūs runājat?
      Ja jūs domājat, ka šie dati, kurus es ievietoju apmācībā, varētu būt arī serverī, jā, tur jums ir taisnība ... viņi atrodas FTP pakalpojumā virtuālajā datorā uz mana klēpjdatora, tam ir ĻOTI labs ugunsmūris (iptables) tātad ... HAHAHAHAHA, protams, nevajag būt ļaunam LOL !!!

  4.   Datoru aizbildnis teica

    Joroņa, kāda joroņa ... Tas būs sarežģītāk, nekā šķiet, lai izmantotu kādu ievainojamību un sagūstītu šos datus 😉

  5.   Aļģes teica

    Ļoti interesanti!! 🙂

    1.    KZKG ^ Gaara teica

      Paldies
      Tas ir tas, ko es cenšos atšķirt mūs no pārējām vietnēm ... ka mēs cenšamies ievietot ne tik daudz ziņu, cik tehniskus rakstus 😀

  6.   Giskards teica

    Cik ātri tas notiek, salīdzinot ar Sambu? (tikai vietējais tīkls)

    1.    LiGNUxer teica

      ka samba un ftp ir 2 dažādas lietas, ftp ir nopietns protokols un smb tikai tāpēc, lai veicinātu dalīšanos starp win un linux.
      Ja jūs meklējat veiktspēju tīklā, izmantojiet FTP pakalpojumu, pretējā gadījumā izmantojiet sambu tikai bez problēmām

      1.    KZKG ^ Gaara teica

        Precīzi.
        Pieņemsim, ka FTP ir mazliet nopietnāks nekā Samba, vismaz manuprāt tā ir.

        Es vispār neesmu veicis nevienu etalonu, bet varbūt FTP ir mazliet ātrāks.

        1.    Giskards teica

          Paldies. Es izmantoju Samba, lai no savas Wii konsoles (izmantojot wiimc) es varētu skatīties filmas un seriālus, kurus es lejupielādēju savā datorā. Bet wiimc var izveidot savienojumu arī ar ftp serveri. Es izmantoju Samba, jo tas bija vieglākais, bet es vienmēr biju ieinteresēts, vai ar ftp būs ātrāk. Man būs jāmēģina.

          1.    KZKG ^ Gaara teica

            Nu, jūs varētu arī vienkārši instalēt Apache savā datorā, un tāpēc Wii izveidotu savienojumu, tam jābūt ātrākam par samba ... un daudz vienkāršāk konfigurēt nekā FTP 😀

          2.    Giskards teica

            Wiimc (Wii Media Player) pieņem tikai Samba un FTP savienojumus.

  7.   Makss Tērauds teica

    Izcili. Jums vienkārši ir nepieciešams kaut kas šāda veida rakstiem (un vietnei kopumā), lai viss būtu perfekts; CSS veidni, lai varētu izdrukāt rakstus PDF formātā vai uz papīra.

  8.   LiGNUxer teica

    Es nezinu, vai tas būs mans, bet lielā problēma ir tā, ka lietotāji var iziet cauri visiem direktorijiem, pat ja es viņiem piešķiru īpašu direktoriju, piemēram, "/ var / www / user_site", ja viņi izveido savienojumu ar ftp piekļūt jebkur no mana datora ¬¬
    tas nav ļoti droši haha

  9.   LiGNUxer teica

    TE TAS IR!!!
    Lai mūsu izveidotie lietotāji nevarētu pārvietoties visā mūsu sistēmā, palaižot tīru, mums jāpievieno parametrs "-A" ...

    Tātad tas, ko mēs pievienojam vietnei /etc/rc.local, kuru ievietojāt apmācībā, ir šāds
    pure-ftpd-mysql -l mysql: /etc/pure-ftpd/pure-ftpd-mysql.conf

    un jums tas ir jāaizstāj ar šo citu:
    pure-ftpd-mysql -A -l mysql: /etc/pure-ftpd/pure-ftpd-mysql.conf

    Vai tas tiek novērtēts? ... Šai jaunajai rindai ir parametrs -A, kas ierobežo direktoriju, kuram mēs to piešķiram, un neko citu. To var izveidot, bet tas nevar pakāpties uz augšu.

    D: šī jaukā tīrā-fptd

    1.    KZKG ^ Gaara teica

      Paldies par padomu 😀

  10.   roberto teica

    Sveiki, šajā MySQL un FTP ieviešanā ir iespējams ieviest kvotas, man šobrīd ir ftp serveris ar vsftpd, un man nav problēmu ar kvotām, bet, būdams virtuāls lietotājs (izveidots mysql), vai kvotas būs derīgas? un otrais ir tas, kur tiek glabāti lietotāju augšupielādētie faili, tas ir, kas ir katra lietotāja direktoriji.

    1.    KZKG ^ Gaara teica

      Teorētiski jūs varat ieviest kvotas, patiesībā datu bāzē tai ir izveidoti lauki, un FTP pakalpojuma konfigurācijas failā tam ir iestatīti vaicājumi, kurus es patiesībā neesmu pārbaudījis 😉

      Par to, kur lietotāji ievietos failus, jūs to definējat 5. laukā, skatiet ekrānuzņēmumu: https://blog.desdelinux.net/wp-content/uploads/2012/09/phpmyadmin-screenshot-nuevo-usuario.jpg

  11.   roberto teica

    Liels paldies par komentāru. Es testēšu šo sistēmu testa serverī un komentēšu rezultātus, cerams, ka varu, jo tā ir lieliska metode, lai viss būtu kārtībā, un ar RAID jums ir stabila dublēšanas sistēma. : D.

    1.    KZKG ^ Gaara teica

      Paldies jums par komentāru 🙂

  12.   roberto teica

    Man ir jautājums, man jau ir izdevies instalēt pure-ftp ar mysql un kvotām, jautājums tagad ir par to, kā es varu apturēt kontu no pašas mysql tabulas, nemainot tā lietotāja paroli vai augšupielādētos failus.

    1.    KZKG ^ Gaara teica

      Es varu iedomāties divus veidus, vienkāršākais ir mainīt vērtību Status no 1 līdz 0, teorētiski, ja konts ir 0, konts ir deaktivizēts, izmēģiniet to un pasakiet man 🙂

  13.   Birkhofs teica

    Roberto, kā jums izdevās noteikt maksu, izmantojot šo iespēju? Lūdzu, dalieties ar informāciju.
    Ļoti labs ieraksts !!

    1.    Roberto Sotelo teica

      Birkhoff, tieši savā personīgajā emuārā es izveidoju tēmu par to, atstāju saiti, lai jūs to pārskatītu:

      http://aprendelinux.net/instalar-servidor-ftp-pure-ftp-con-cuentas-virtuales-en-mysql/

  14.   Klaus teica

    Paldies!

    Es cenšos sekot visam, bet tiek parādīta kļūda 501 un galvenokārt atsauce uz faktu, ka parole ir nepareiza, kad zinu, ka tā ir kārtībā