Setup Pure-FTPd With TLS در Debian 9

Pure-FTPd یک سرور FTP سریع و سبک است که با امنیت در ذهن ساخته شده است. در این آموزش قصد دارم نحوه نصب و استفاده از Pure FTP را در 4 مرحله آسان به شما نشان دهم. در این راهنما نحوه نصب Pure FTPd در Debian 9 توضیح داده شده است.

مرحله اول - نصب

Pure-FTPd در مخزن پایدار Debian است ، بنابراین نیازی به اضافه کردن مخازن اضافی به سیستم شما نیست.

دستور زیر را با امتیازات اصلی اجرا کنید:

apt install -y pure-ftpd-common pure-ftpd 

مرحله دوم - پیکربندی

گزینه های بسیاری وجود دارد که می توانید برای تغییر رفتار برنامه استفاده کنید. این گزینه ها می توانند در هنگام راه اندازی روی Daemon Pure-FTPd اعمال شوند یا می توانید با ایجاد پرونده های لازم در داخل confفهرست ، آنها را ماندگار کنید .

ما می خواهیم که:

  • کاربران مجازی ایجاد کنید.
  • دایرکتوری های خانگی را بطور خودکار برای کاربران ایجاد کنید.
  • chrootکاربران ( فقط) را محدود کنید تا فقط به فهرست خانه خود دسترسی داشته باشید.

پایگاه داده Pure-FTPd را فعال کنید و تأیید هویت PAM و Unix را غیرفعال کنید تا کاربران مجازی فعال شوند:

ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
echo no > /etc/pure-ftpd/conf/PAMAuthentication
echo no > /etc/pure-ftpd/conf/UnixAuthentication

Pure-FTPd را تنظیم کنید تا در اولین ورود خود فهرست های خانگی را برای کاربران ایجاد کند:

echo "yes" > /etc/pure-ftpd/conf/CreateHomeDir

همه را انتخاب کنید.

echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone

اگر علاقه دارید در مورد گزینه های دیگر بیاموزید ، به صفحه اسناد رسمی مراجعه کنید .

مرحله سوم - ایجاد کاربران

Pure-FTPd می تواند کاربران مجازی را اداره کند ، به این معنی که آنها در پایگاه داده Pure-FTPd نگهداری می شوند و مربوط به کاربران سیستم لینوکس نیستند.

برای اینکه Pure-FTPd بتواند فایلها را با کاربران مجازی مدیریت کند ، ما باید یک کاربر و گروه لینوکس ایجاد کنیم که در آن همه کاربران مجازی در ارتباط باشند. همه کاربران مجازی می توانند از همان کاربر و گروه سیستم استفاده کنند تا زمانی که مورد هجوم قرار گرفته باشند.

دستورات زیر را برای ایجاد کاربر و گروه سیستم اجرا کنید:

groupadd ftpusr
useradd -g ftpusr -d /dev/null -s /etc ftpusr

توجه : ما نمی خواهیم این کاربر یک فهرست خانه یا قابلیت ورود به سیستم داشته باشد.

دایرکتوری ریشه FTP ما را ایجاد کنید:

mkdir /home/FTP

یک کاربر مجازی در Pure-FTPd ایجاد کنید:

pure-pw useradd alex -u ftpusr -g ftpusr -d /home/FTP/alex 

ما اولین کاربر مجازی ( alex) را اضافه کرده ایم و آن را با کاربر / گروه سیستم ( ftpusr) مرتبط کرده ایم. کلیه پرونده هایی که با آنها می نویسید alexمتعلق ftpusrبه سیستم است.

پایگاه داده Pure-FTPd را به روز کنید:

pure-pw mkdb

اطلاعات کاربر را بررسی کنید:

pure-pw show alex

Login              : alex
Password           : <encrypted password>
UID                : 1000 (ftpusr)
GID                : 1000 (ftpusr)
Directory          : /home/FTP/alex/./
Full name          : 
Download bandwidth : 0 Kb (unlimited)
Upload   bandwidth : 0 Kb (unlimited)
Max files          : 0 (unlimited)
Max size           : 0 Mb (unlimited)
Ratio              : 0:0 (unlimited:unlimited)
Allowed local  IPs : 
Denied  local  IPs : 
Allowed client IPs : 
Denied  client IPs : 
Time restrictions  : 0000-0000 (unlimited)
Max sim sessions   : 0 (unlimited)

برای آسانتر کردن زندگی ، از اسکریپت زیر برای افزودن حسابهای FTP استفاده کنید:

echo -e  '#!/bin/bash\nread -p "Enter UserName: " usrname\npure-pw useradd $usrname -u ftpusr -g ftpusr -d /home/FTP/$usrname && pure-pw mkdb'  > /usr/sbin/ftp-createacc

chmod u+x /usr/sbin/ftp-createacc

اکنون ، ایجاد حساب های FTP ساده است:

ftp-createacc

Enter UserName: mike
Password: 
Enter it again:

مرحله چهارم - پشتیبانی TLS

ابتدا باید OpenSSL را نصب کنیم.

apt install -y openssl

Force Pure-FTPd را برای استفاده از TLS ، یا می توانیم آن را اختیاری بدانیم که به این معنی هم اتصالات ناامن و TLS پذیرفته می شوند

# force TLS
echo 2 > /etc/pure-ftpd/conf/TLS

# insecure + TLS
echo 1 > /etc/pure-ftpd/conf/TLS

برای ذخیره کلیدهای ما یک دایرکتوری ایجاد کنید.

mkdir -p /etc/ssl/pure-ftpd

ایجاد یک کلید بسته نرم افزاری (کلید خصوصی و کلید عمومی).

openssl req -x509 -nodes -days 730 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

pure-ftpdDaemon را مجدداً راه اندازی کنید .

systemctl restart pure-ftpd

اگر فایروال روی سیستم خود نصب کرده اید ، یا سرور شما در پشت NAT است ، باید درگاه های منفعل را در Pure-FTPd تعریف کرده و این پورت ها را در فایروال خود باز کنید ، در غیر این صورت خطاهایی مانند این ها دریافت خواهید کرد:

Server sent passive reply with unroutable address. Passive mode failed.

Failed to retrieve directory listing.

500 I won't open a connection to 192.168.1.4 (only to 10.10.10.10).

پورت های منفعل را در Pure-FTPd تنظیم کنید:

echo "40110 42210" > /etc/pure-ftpd/conf/PassivePortRange

راه اندازی مجدد pure-ftpdبرای اعمال تغییر.

systemctl restart pure-ftpd

در فایروال خود ، محدوده پورت ورودی از 40110 تا 42210 ، پروتکل TCP را باز کنید.

FTP از نظر طبیعت ناامن است ، اما همچنین تنظیم سریع و آسان است. برای یک راه حل امن تر ، به جای آن از SFTP استفاده کنید.

یک نظر بگذارید

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

نحوه نصب Anchor CMS بر روی یک VPS Fedora 26 LAMP

با استفاده از یک سیستم متفاوت؟ Anchor CMS یک سیستم مدیریت محتوا (CMS) بسیار ساده و بسیار سبک ، بسیار آزاد و آزاد است.

اشتراک NFS را در Debian تنظیم کنید

اشتراک NFS را در Debian تنظیم کنید

NFS یک سیستم فایل مبتنی بر شبکه است که به رایانه ها اجازه می دهد تا از طریق شبکه رایانه ای به فایلها دسترسی پیدا کنند. این راهنما توضیح می دهد که چگونه می توانید پوشه ها را روی NF قرار دهید

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

نحوه بروزرسانی CentOS 7 ، Ubuntu 16.04 و Debian 8

هنگام راه اندازی سرور جدید لینوکس ، به روزرسانی سیستم های هسته و سایر بسته ها تا آخرین نسخه پایدار یک روش توصیه شده است. در این مقاله

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

نحوه نصب بستر سبد خرید LiteCart در اوبونتو 16.04

LiteCart یک بستر سبد خرید آزاد و منبع باز است که به زبان های PHP ، jQuery و HTML 5 نوشته شده است. این نرم افزار ساده ، سبک و با کاربرد آسان است.

نحوه نصب Matomo Analytics در Fedora 28

نحوه نصب Matomo Analytics در Fedora 28

با استفاده از یک سیستم متفاوت؟ Matomo (سابقا پیویک) یک بستر تحلیلی منبع باز است ، یک جایگزین باز برای Google Analytics. منبع Matomo میزبان o

یک سرور TeamTalk را در لینوکس تنظیم کنید

یک سرور TeamTalk را در لینوکس تنظیم کنید

TeamTalk یک سیستم کنفرانس است که به کاربران امکان می دهد مکالمات صوتی / تصویری با کیفیت بالا ، چت متنی ، انتقال فایل ها و صفحه های به اشتراک بگذارند. من

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

با استفاده از کلید SSH خود برای ورود به کاربران غیر ریشه استفاده کنید

Vultr یک ویژگی را فراهم می کند که به شما امکان می دهد با ایجاد یک نمونه جدید ، کلیدهای SSH را از قبل نصب کنید. این اجازه می دهد تا به کاربر root دسترسی داشته باشید ، با این حال ، th

نحوه نصب انجمن NodeBB در FreeBSD 12

نحوه نصب انجمن NodeBB در FreeBSD 12

با استفاده از یک سیستم متفاوت؟ NodeBB یک نرم افزار انجمن مبتنی بر Node.js است. از سوکت های وب برای تعامل فوری و اعلامیه های زمان واقعی استفاده می کند. NodeB

نحوه نصب Ranger Terminal File Manager در لینوکس

نحوه نصب Ranger Terminal File Manager در لینوکس

رنجر یک مدیر فایل مبتنی بر خط فرمان است که دارای کلیدهای اتصال VI است. این برنامه یک رابط لعنتی مینیمالیستی و زیبا با نمای سلسله مراتب فهرست ارائه می دهد

نصب و راه اندازی ZNC در اوبونتو

نصب و راه اندازی ZNC در اوبونتو

ZNC یک پیشرانه پیشرفته شبکه IRC است که تمام وقت بهم متصل می شود تا مشتری IRC بتواند بدون از دست دادن جلسه گپ قطع یا وصل شود.