Споделен хостинг на Linux с FTP достъп

Споделен хостинг на Linux с FTP достъп

Събота, 04 октомври 2014 г. 00:00ч

Споделен хостинг с PureFTP и MySQL (включително управление на квоти и честотна лента) на Linux.

хостинг

Пример за изграждане на система, базирана на PureFTP, е сървърът на сайта www.gkds.ru. Както можете да видите от илюстрацията, прави се опит за FTP връзка и отговорът е от услугата PureFTP.

За да администрирате MySQL бази данни, можете да използвате уеб базирани инструменти като phpMyAdmin, които могат да бъдат инсталирани по избор. phpMyAdmin е удобен за потребителя GUI, така че не е нужно да се справяте с командния ред.

Тази статия дава практически препоръки, тук няма да разглеждаме теоретичните основи, тъй като голям брой статии в Интернет вече са посветени на тях.

1 Предварителни бележки

2 Инсталирайте MySQL

Инсталацията е разгледана подробно в основната статия. Като правило е достатъчно да използвате командата:

След това ще създадем връзки за стартиране на системата с MySQL и Apache (и двете програми ще се стартират автоматично при стартиране на системата) и ще стартираме и двете услуги:

Ако възникне грешка като тази:

Създайте администраторска парола за MySQL (заменете вашата rootsqlpassword с паролата, която искате):

За да влезете в MySQL, трябва да натиснете Enter и да въведете вашето потребителско име и парола, ние просто се съгласяваме с останалите въпроси, като натиснете Enter.

3 Инсталиране на phpMyAdmin

4 Инсталиране на PureFTP с поддръжка на MySQL

Услугата PureFTPd на Linux поддържа голям брой системи за управление на бази данни, като MySQL, PostgreSQL, LDAP и др. За да започнем, нека инсталирамеPureFTPd, за това ще стартираме yum със следните параметри

След това ще създадем група (ftpgroup) и потребител (ftpuser), така че всички виртуални потребители ще бъдат показани. Заменете групата и потребителския идентификатор 2001 с безплатната норма на вашата система:

5 Създаване на MySQL бази данни за PureFTPd

Нека създадем база данни, наречена pureftpd, и потребител на MySQL, наречен pureftpd, който PureFTPd ще използва за свързване към базите данни:

Заменете ftpdpass с паролата, която изберете за потребителя pureftpd. В обвивката на MySQL създайте таблица с необходимите бази данни:

Както може би сте забелязали, с командата quit напуснахме обвивката на MySQL и се върнахме към стандартния Linux.

5 Конфигуриране на PureFTPd

Редактирайки /etc/pure-ftpd/pure-ftpd.conf, трябва да проверим редовете ChrootEveryone, MySQLConfigFile и CreateHomeDir, които трябва да изглеждат така:

Когато ChrootEveryone е активиран, всеки виртуален потребител ще има достъп само до собствената си основна директория и няма да може да преглежда файлове и директории извън собствената си. Линията CreateHomeDir ще направи домашна директория на потребителя, когато потребителят е влязъл и домашната директория все още не съществува.

След това редактираме файла /etc/pure-ftpd/pureftpd-mysql.conf, както следва:

Уверете се, че сте заменили ftpdpass с вашата MySQL парола и pureftpd потребител в реда MYSQLPassword! Обърнете внимание, че ще използваме md5 криптиране на данни, което означава, че ще съхраняваме потребителски пароли като MD5 низ в базата данни, това е много по-сигурно от паролите с обикновен текст.

Сега нека създадем връзките за автоматично зареждане на PureFTPd и след това да стартираме самата програма:

6 Попълнете базата данни иПреглед

За да попълните базите данни, използвайте обвивката на MySQL:

Ако сте успели да се свържете - поздравления! Ако не, нещо е направено погрешно.

Сега, ако въведете следното:

ще видите директорията /home/example (стандартната директория exampleuser), създадена автоматично, а собственикът е ftpuse r и ftpgroup (потребителят/групата, която създадохме в края на точка две):

7 Управление на бази данни

За повечето потребители е много по-лесно да използват предния край на MySQL; поради тази причина можете също да използвате phpMyAdmin за управление на pureftpd бази данни.

За да създадете нов потребител, трябва да попълните таблицата ftpd, разгледайте всеки елемент в тази таблица:

8 Анонимен FTP

Ако искате да промените домашната директория, отворете /etc/passwd и променете домашната директория на ftp потребителя от /var/ftp на /home/ftp:

Заменете /var/ftp с /home:

След това ще създадем директория /home/ftp/incoming, където анонимни потребители могат да качват файлове. Нека дадем на директориите /home/ftp/incoming разрешения 311, така че потребителите да могат само да качват файлове, но не и да ги изтеглят и разглеждат. Директорията /home/ftp ще има 555 разрешения, които ви позволяват да преглеждате и изтегляте файлове:

(Ако искате да използвате /var/ftp, заменете /home/ftp с /var/ftp.)

Сега нека конфигурираме PureFTPd за анонимен ftp. Нека отворим файла /etc/pure-ftpd/pure-ftpd.conf и зададем съответните настройки там:

(Настройката AnonymousBandwidth не е задължителна - можете да зададете ширината на честотната лента за изтегляне и качване за анонимни потребители в нея. Например 16 означава 16 KB/s. Можете да зададете произволна стойност или да пропуснете тази настройка, ако не искате да зададетечестотна лента.)

Накрая рестартирайте PureFTPd:

Ура, нашият хостинг е готов да приеме сайтове за поставяне!