LeetCode
来源:互联网 发布:一元抽奖的软件是什么 编辑:程序博客网 时间:2024/06/15 21:16
虚拟机的网络配置:
虚拟机内部默认用10.0.2.15,主机ip为10.0.2.2供虚拟机访问.
虚拟机中,直接ping 10.0.2.2就可以通,然后直接sftp传文件,
sftp的使用
一:主机配置sftp
需求:在服务器上开通SFTP文件服务,允许某些用户上传及下载文件。但是这些用户只能使用SFTP传输文件,不能使用SSH终端访问服务器,并且SFTP不能访问系统文件(即所谓的“Jail(监狱)”)。系统管理员则既能使用SFTP传输文件,也能使用SSH远程管理服务器。
为了便于讨论,我假设我将允许sftp-users用户组内的用户使用SFTP,但不允许使用SSH Shell,且该组用户将被"监狱"(修改系统根目录)。我将在sftp-users组内创建一个用户“alice”。而我将允许ssh-users使用SFTP以及SSH。系统管理员的账户名为admin。
第01步,如果还没有安装OpenSSH服务器,先安装它。
sudo apt-getinstall openssh-server
第02步,为SFTP访问创建用户组,便于管理权限。
sudo addgroupsftp-users
第03步,创建SFTP用户,并配置相应权限。这里第二行的意思是将alice从所有其他用户组中移除并加入到sftp-users组,并且关闭其Shell访问。如果想深入了解usermod命令,可以使用以下"manusermod"命令查看帮助文档。
sudo adduseralice
sudo usermod -Gsftp-users -s /bin/false alice
第04步,创建SSH用户组,并把管理员加入到该组(注意usermod中的-a参数的意思是不从其他用户组用移除)。
sudo addgroupssh-users
sudo usermod -a-G ssh-users admin
第05步,准备“监狱”的根目录及共享目录。这里解释一下,“监狱”的根目录必须满足以下要求:所有者为root,其他任何用户都不能拥有写入权限。因此,为了让SFTP用户能够上传文件,还必须在“监狱”根目录下再创建一个普通用户能够写入的共享文件目录。为了便于管理员通过SFTP管理上传的文件,我把这个共享文件目录配置为:由admin所有,允许sftp-users读写。这样,管理员和SFTP用户组成员就都能读写这个目录了。
sudo mkdir/home/sftp_root
sudo mkdir/home/sftp_root/shared
sudo chownadmin:sftp-users /home/sftp_root/shared
sudo chmod 770/home/sftp_root/shared
第06步,修改SSH配置文件。
sudo nano/etc/ssh/sshd_config
在sshd_config文件的最后,添加以下内容:
AllowGroupsssh-users sftp-users
Match Groupsftp-users
ChrootDirectory /home/sftp_root
AllowTcpForwarding no
X11Forwarding no
ForceCommand internal-sftp
这些内容的意思是:只允许ssh-uers及sftp-users通过SSH访问系统;
针对sftp-users用户,额外增加一些设置:将“/home/sftp_root”设置为该组用户的系统根目录(因此它们将不能访问该目录之外的其他系统文件);禁止TCP Forwarding和X11 Forwarding;强制该组用户仅仅使用SFTP。
第07步,重启系统以便使新配置生效。
sudo reboot now
二:使用sftp
举例,如远程主机的 IP 是10.0.2.2,用户名是 wei ,在命令行模式下:sftp wei@10.0.2.2。回车提示输入密码。进入提示符
sftp>
获取主机文件:
sftp> get /var/www/fuyatao/index.php /home/fuyatao/
这条语句将从远程主机的 /var/www/fuyatao/目录下将 index.php 下载到本地 /home/fuyatao/目录下。
将虚拟机文件传给主机
sftp> put/home/fuyatao/downloads/Linuxgl.pdf /var/www/fuyatao/
这条语句将把本地 /home/fuyatao/downloads/目录下的 linuxgl.pdf文件上传至远程主机/var/www/fuyatao/目录下。
你如果不知道远程主机的目录是什么样, pwd命令可以帮您查询远程主机的当前路径。查询本机当前工作目录 lpwd.
改变路径可以用cd ,改变本机路径可以用 lcd;ls rm rmdir mkdir 这些命令都可以使用。同理调用本机都是加 l , 即 lls lrm.要离开sftp,用exit 或quit、 bye 均可。详细情况可以查阅 man sftp.
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode
- leetcode:
- leetcode:
- LeetCode
- leetcode
- LEETCODE
- leetcode
- leetCode
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode:
- leetcode
- 1.1数组和链表:33. Search in Rotated Sorted Array(Leetcode)
- Keil 汇编asm/A51多个文件
- 微信JS-SDK说明文档
- swift 访问权限
- android 配置文件,所有权限
- LeetCode
- 深入java集合系列:双端队列deque
- C++ 一次创建多级目录
- 如何把httpclient请求头变成OKhttp请求
- 编写一个学生类Students,该类成员变量包括学号no、姓名name、性别sex和年龄age,该类的成员方法有genNo()getName ). * getSex().getAge().和setA
- 看书 ecma-262
- 关于button自动提交表单事件
- 将设计稿图标制作成iconfont(ps cs6 + ai cs6)
- Dubbo/Dubbox的服务暴露(一)