成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在Debian 10中配置Chroot環境的SFTP服務

系統 Linux
在這篇文章中,我們將演示如何在 Debian 10 系統中在 “監獄式的” Chroot 環境中配置 sftp。在這里,Chroot 監獄式環境意味著,用戶不能超出各自的家目錄,或者用戶不能從各自的家目錄更改目錄。

[[324888]]

SFTP 意思是“安全文件傳輸協議Secure File Transfer Protocol” 或 “SSH 文件傳輸協議SSH File Transfer Protocol”,它是最常用的用于通過 ssh 將文件從本地系統安全地傳輸到遠程服務器的方法,反之亦然。sftp 的主要優點是,除 openssh-server 之外,我們不需要安裝任何額外的軟件包,在大多數的 Linux 發行版中,openssh-server 軟件包是默認安裝的一部分。sftp 的另外一個好處是,我們可以允許用戶使用 sftp ,而不允許使用 ssh

當前發布的 Debian 10 代號為 ‘Buster’,在這篇文章中,我們將演示如何在 Debian 10 系統中在 “監獄式的” Chroot 環境中配置 sftp。在這里,Chroot 監獄式環境意味著,用戶不能超出各自的家目錄,或者用戶不能從各自的家目錄更改目錄。下面實驗的詳細情況:

  • OS = Debian 10
  • IP 地址 = 192.168.56.151

讓我們跳轉到 SFTP 配置步驟,

步驟 1、使用 groupadd 命令給 sftp 創建一個組

打開終端,使用下面的 groupadd 命令創建一個名為的 sftp_users 組:

  1. root@linuxtechi:~# groupadd sftp_users

步驟 2、添加用戶到組 sftp_users 并設置權限

假設你想創建新的用戶,并且想添加該用戶到 sftp_users 組中,那么運行下面的命令,

語法:

  1. # useradd -m -G sftp_users <用戶名>

讓我們假設用戶名是 jonathan

  1. root@linuxtechi:~# useradd -m -G sftp_users jonathan

使用下面的 chpasswd 命令設置密碼:

  1. root@linuxtechi:~# echo "jonathan:<輸入密碼>" | chpasswd

假設你想添加現有的用戶到 sftp_users 組中,那么運行下面的 usermod 命令,讓我們假設已經存在的用戶名稱是 chris

  1. root@linuxtechi:~# usermod -G sftp_users chris

現在設置用戶所需的權限:

  1. root@linuxtechi:~# chown root /home/jonathan /home/chris/

在各用戶的家目錄中都創建一個上傳目錄,并設置正確地所有權:

  1. root@linuxtechi:~# mkdir /home/jonathan/upload
  2. root@linuxtechi:~# mkdir /home/chris/upload
  3. root@linuxtechi:~# chown jonathan /home/jonathan/upload
  4. root@linuxtechi:~# chown chris /home/chris/upload

注意: 像 Jonathan 和 Chris 之類的用戶可以從他們的本地系統上傳文件和目錄。

步驟 3、編輯 sftp 配置文件 /etc/ssh/sshd_config

正如我們已經陳述的,sftp 操作是通過 ssh 完成的,所以它的配置文件是 /etc/ssh/sshd_config,在做任何更改前,我建議首先備份文件,然后再編輯該文件,接下來添加下面的內容:

  1. root@linuxtechi:~# cp /etc/ssh/sshd_config /etc/ssh/sshd_config-org
  2. root@linuxtechi:~# vim /etc/ssh/sshd_config
  3. ......
  4. #Subsystem sftp /usr/lib/openssh/sftp-server
  5. Subsystem sftp internal-sftp
  6.  
  7. Match Group sftp_users
  8. X11Forwarding no
  9. AllowTcpForwarding no
  10. ChrootDirectory %h
  11. ForceCommand internal-sftp
  12. ......

保存并退出文件。

為使上述更改生效,使用下面的 systemctl 命令來重新啟動 ssh 服務:

  1. root@linuxtechi:~# systemctl restart sshd

在上面的 sshd_config 文件中,我們已經注釋掉了以 Subsystem 開頭的行,并添加了新的條目 Subsystem sftp internal-sftp 和新的行。而

Match Group sftp_users –> 它意味著如果用戶是 sftp_users 組中的一員,那么將應用下面提到的規則到這個條目。

ChrootDierctory %h –> 它意味著用戶只能在他們自己各自的家目錄中更改目錄,而不能超出他們各自的家目錄。或者換句話說,我們可以說用戶是不允許更改目錄的。他們將在他們的目錄中獲得監獄一樣的環境,并且不能訪問其他用戶的目錄和系統的目錄。

ForceCommand internal-sftp –> 它意味著用戶僅被限制到只能使用 sftp 命令。

步驟 4、測試和驗證 sftp

登錄到你的 sftp 服務器的同一個網絡上的任何其它的 Linux 系統,然后通過我們放入 sftp_users 組中的用戶來嘗試 ssh 和 sftp 服務。

  1. [root@linuxtechi ~]# ssh root@linuxtechi
  2. root@linuxtechi's password:
  3. Write failed: Broken pipe
  4. [root@linuxtechi ~]# ssh root@linuxtechi
  5. root@linuxtechi's password:
  6. Write failed: Broken pipe
  7. [root@linuxtechi ~]#

以上操作證實用戶不允許 ssh ,現在使用下面的命令嘗試 sftp

  1. [root@linuxtechi ~]# sftp root@linuxtechi
  2. root@linuxtechi's password:
  3. Connected to 192.168.56.151.
  4. sftp> ls -l
  5. drwxr-xr-x 2 root 1001 4096 Sep 14 07:52 debian10-pkgs
  6. -rw-r--r-- 1 root 1001 155 Sep 14 07:52 devops-actions.txt
  7. drwxr-xr-x 2 1001 1002 4096 Sep 14 08:29 upload

讓我們使用 sftp 的 get 命令來嘗試下載一個文件:

  1. sftp> get devops-actions.txt
  2. Fetching /devops-actions.txt to devops-actions.txt
  3. /devops-actions.txt 100% 155 0.2KB/s 00:00
  4. sftp>
  5. sftp> cd /etc
  6. Couldn't stat remote file: No such file or directory
  7. sftp> cd /root
  8. Couldn't stat remote file: No such file or directory
  9. sftp>

上面的輸出證實我們能從我們的 sftp 服務器下載文件到本地機器,除此之外,我們也必須測試用戶不能更改目錄。

讓我們在 upload 目錄下嘗試上傳一個文件:

  1. sftp> cd upload/
  2. sftp> put metricbeat-7.3.1-amd64.deb
  3. Uploading metricbeat-7.3.1-amd64.deb to /upload/metricbeat-7.3.1-amd64.deb
  4. metricbeat-7.3.1-amd64.deb 100% 38MB 38.4MB/s 00:01
  5. sftp> ls -l
  6. -rw-r--r-- 1 1001 1002 40275654 Sep 14 09:18 metricbeat-7.3.1-amd64.deb
  7. sftp>

這證實我們已經成功地從我們的本地系統上傳一個文件到 sftp 服務中。

現在使用 winscp 工具來測試 sftp 服務,輸入 sftp 服務器 IP 地址和用戶的憑證:

 

在 “Login” 上單擊,然后嘗試下載和上傳文件:

 

現在,在 upload 文件夾中嘗試上傳文件:

 

上面的窗口證實上傳是完好地工作的,這就是這篇文章的全部。

 

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2011-02-25 10:04:49

proftpChroot

2019-09-08 17:04:00

DebianLinuxAnsible

2019-04-16 10:30:45

Windows 10配置鍵盤Windows

2023-06-01 15:37:11

PyCharm工具開發

2017-03-30 17:02:13

UbuntuDebianDHCP

2017-03-09 17:40:50

DebianUbuntuMariaDB

2019-10-24 09:20:17

Windows 10隱藏電源選項

2018-03-29 15:21:03

LinuxDebian網橋

2015-12-25 14:30:47

LinuxISC DHCP服務器

2022-12-27 08:51:31

WebDebian 11

2019-08-02 10:20:39

OpenSSHWindows 10SFTP

2020-01-02 15:40:23

Windows 10配置離線地圖

2014-08-27 11:22:46

LinuxSFTP

2015-04-20 08:58:25

DHCPISC DHCP Se

2018-08-30 10:00:12

Windows 10修復黑屏

2018-04-09 09:45:09

Windows 10休眠

2018-04-23 10:10:25

Windows 10關閉通知

2015-11-09 13:23:49

PXEUbuntu 14.0Linux

2019-07-29 10:00:10

Windows 10節省空間Windows

2018-11-29 10:45:19

Windows 10WindowsCortana
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费一区 | 久久久久久国产精品 | 国产成人在线免费 | 一级毛片在线播放 | 美女视频黄色的 | 日韩精品一区中文字幕 | 国产精品久久久久一区二区三区 | 久久久毛片| 久久99蜜桃综合影院免费观看 | 日韩在线电影 | 久久精品国产久精国产 | 国产成人在线视频 | 国产日韩欧美一区 | 一区二区三区国产好 | 99re在线免费视频 | 国产一区二区精品在线观看 | 第一福利社区1024 | 欧美日产国产成人免费图片 | 欧美a√ | 天啪 | 国产伦一区二区三区 | 国产中文区二幕区2012 | 午夜影院在线观看免费 | 91精品国产综合久久精品 | 欧美国产视频一区二区 | 精久久| 久久精品视频播放 | 黄色一级片视频 | 亚洲精品在线国产 | 国产一区二区视频在线 | 欧美性视频在线播放 | 日本在线看片 | 特级毛片爽www免费版 | 日本黄色免费片 | 99久久久99久久国产片鸭王 | 搞黄网站在线观看 | 国产激情一区二区三区 | 国产精品久久久久久久久久久久 | 日韩欧美大片在线观看 | 久久精品| 国产免费一区二区三区网站免费 |