🐧 نحوه ایجاد کاربر SFTP بدون دسترسی پوسته در CentOS / RHEL 8 – Squad Security Security Squad

SFTP (پروتکل انتقال فایل SSH) یک پروتکل انتقال فایل امن بین دو سیستم است.

روی پروتکل SSH اجرا می شود و از همان پورت 22 استفاده می کند.

این راهنما به شما کمک می کند تا کاربران فقط با دسترسی دسترسی داشته باشید SFTP (بدون دسترسی ssh) در CentOS 8 و RedHat 8.

کاربر فقط می تواند از طریق SFTP به سرور متصل شود و به فهرست مشخص شده دسترسی پیدا کند.

کاربران نمی توانند SSH را به سرور دهند.

دستورالعمل نشان داده شده در زیر را دنبال کنید. برای ایجاد یک حساب کاربری sftp فقط در CentOS 8 و RHEL 8.

مرحله 1 – ایجاد یک حساب کاربری [

اول از همه ، برای دسترسی به sftp یک حساب کاربری ایجاد کنید.

برای این راهنما ، ما یک کاربر با نام sftpuser و بدون دسترسی به پوسته ایجاد خواهیم کرد.

همچنین یک رمزعبور قوی برای کاربر تعیین کنید.

 sudo adduser --shell / bin / sftpuser false
sudo passwd sftpuser 
 تغییر رمز عبور برای sftpuser کاربر.
گذرواژه جدید:
بارگیری مجدد رمزعبور جدید:
passwd: همه علائم احراز هویت با موفقیت به روز شد. 

مرحله 2 – دایرکتوری ایجاد کنید

اکنون یک ساختار دایرکتوری ایجاد کنید که از طریق sftp در دسترس کاربر باشد.

ما کاربر جدید را فقط به این فهرست راهنما محدود خواهیم کرد.

بنابراین کاربر نمی کند.

 sudo mkdir -p / var / sftp / پرونده ها 

مالک دایرکتوری را به کاربر ایجاد شده تغییر دهید.

این حقوق را اختصاص دهید تا sftpuser بتواند در این دایرکتوری بخواند و بنویسد.

 sudo chown sftpuser: sftpuser / var / sftp / پرونده ها 

شما باید مالک و گروه / var / sftp را روی ریشه تنظیم کنید. [19659002] کاربر اصلی مجوزهای خواندن و نوشتن را دارد.

اعضای گروه و سایر حساب ها فقط مجوزهای خواندن و اجرای آنها را انجام داده اند.

 root sown chown root: root / var / sftp
sudo chmod 755 / var / sftp 

مرحله 3 – SSH را برای SFTP پیکربندی کنید

همانطور که می دانیم SFTP روی SSH کار می کند ، بنابراین باید این مورد را در پرونده پیکربندی تنظیم کنیم.

پرونده پیکربندی SSH را در ویرایشگر متن ویرایش کنید.

 sudo vim / etc / ssh / sshd_config 
و تنظیمات زیر را به انتهای پرونده اضافه کنید.

 مطابقت با کاربر sftpuser
ForceCommand داخلی sftp
شناسه رمز ورود بله
ChrootDirectory / var / sftp
PermitTunnel no
مجاز نیست شماره حمل و نقل
AllowTcpForwarding no
X11Fordwarding no 

پیکربندی را ذخیره کنید و سرویس SSH را مجدداً اعمال کنید تا تغییرات اعمال شود.

 sudo systemctl restart sshd.service 

همه چیز آماده است ، سیستم شما آماده پذیرش فقط اتصال sftp برای حساب ایجاد شده است.

بیایید اتصال را بررسی کنیم. sftp ، و مطمئن شوید که کاربر به SSH وارد نشده است.

مرحله 4 – اتصال SFTP را تأیید کنید

من از FileZilla برای اتصال از طریق SFTP از سیستمهای ویندوز استفاده می کنم.

کاربران لینوکس نیز می توانند از Filezilla برای اتصال استفاده کنند. [19659038] برای سرور لینوکس ، کاربران می توانند از ابزار خط فرمان استفاده کنند. رشته های sftp برای اتصال به نمونه sftp از راه دور.

 sftp [email protected]
 در حال اتصال به sftp.itsecforu.ru ...
رمز عبور [email protected]:
sftp>

شما همچنین می توانید از فرمانده Midnight استفاده کنید.

ما یک راهنمای عالی در مورد چگونگی انجام این کار داریم:

این حساب فقط برای اتصالات SFTP تنظیم شده است.

بنابراین ، اگر هر کاربر سعی کرد از طریق SSH متصل شود ، این بلافاصله پس از احراز هویت موفق غیرفعال می شود.

کاربر پیامی را دریافت می کند:

 ssh [email protected]
رمز عبور 
 [email protected]:
این سرویس فقط به اتصالات sftp اجازه می دهد.
اتصال به sftp.tecadmin.net بسته شد.

پیام فوق (این سرویس فقط به اتصالات sftp اجازه می دهد) نشان می دهد که کاربر فقط به sftp دسترسی دارد.

کاربران نمی توانند از طریق SSH به سرور وصل شوند.