Споделен хостинг на 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:
Ура, нашият хостинг е готов да приеме сайтове за поставяне!