docker如何搭建sftp服务器
centos 作為基礎(chǔ)鏡像
1. pull centos鏡像
docker pull centos2. 創(chuàng)建容器
docker run -itd --privileged --name myCentos -p 22:22 centos /usr/sbin/init一定要映射22端口,stpf默認22端口
3. 啟動容器
docker exec -it myCentos /bin/bash解決了問題:
System has not been booted with systemd as init system (PID 1). Can't operate.
? ? ? ?Failed to connect to bus: Host is down
4.?創(chuàng)建sftp組
# groupadd?sftp??
5.?創(chuàng)建一個sftp用戶mysftp并加入到創(chuàng)建的sftp組中,同時修改mysftp用戶的密碼
# useradd -g sftp -s /bin/false?mysftp??
# yum install passwd.x86_64
# passwd?mysftp
6.?新建/data/sftp/mysftp目錄,并將它指定為mysftp組用戶的home目錄
# mkdir -p /data/sftp/mysftp??
# usermod -d /data/sftp/mysftp mysftp
7.?編輯配置文件/etc/ssh/sshd_config,vi /etc/ssh/sshd_config
# yum install openssh-server
將如下這行用#符號注釋掉
# Subsystem? ? ? sftp? ? /usr/libexec/openssh/sftp-server??
并在文件最后面添加如下幾行內(nèi)容然后保存
Subsystem? ? ? ?sftp? ? internal-sftp? ??
Match Group sftp? ??
ChrootDirectory /data/sftp/%u? ??
ForceCommand? ? internal-sftp? ??
AllowTcpForwarding no? ??
X11Forwarding no?
8.設(shè)置Chroot目錄權(quán)限
# chown root:sftp /data/sftp/mysftp??
# chmod 755 /data/sftp/mysftp
9.?新建一個目錄供stp用戶mysftp上傳文件,這個目錄所有者為mysftp所有組為sftp,所有者有寫入權(quán)限所有組無寫入權(quán)限
# mkdir?/data/sftp/mysftp/upload??
# chown mysftp:sftp /data/sftp/mysftp/upload??
# chmod 755 /data/sftp/mysftp/upload??
10.?關(guān)閉centos并重啟sshd服務(wù),然后測試
# systemctl restart sshd.service
11.在其他服務(wù)器上進行驗證,sftp 用戶名@ip地址
sftp mysftp@localhost
總結(jié)
以上是生活随笔為你收集整理的docker如何搭建sftp服务器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: labview混合编程学习
- 下一篇: 华为手机序列号前三位_华为手机序列号怎么