zoukankan      html  css  js  c++  java
  • linux 安装SSH Server + FTP Server(openssh-server + vsftp)

    openssh-server (推荐. 一般ssh,ftp 都是单独的,但是这个包含2个)

    默认ubuntu 已经安装了, ssh client ,ftp client

    dpkg -l | grep ftp
    dpkg -l | grep ssh

    但是没有安装ssh-server, 所以需要安装 sudo apt install openssh-server

    我一般用bitVise,其中 包含ssh,可视化的ftp

    输入 ip:port
    再输入 帐号密码。 就可以连接了

    bitVise下载地址


    linux确认sshserver是否启动了:(或用“netstat -tlp”命令)
    

      ps -e | grep ssh

      如果只有ssh-agent那ssh-server还没有启动,需要/etc/init.d/ssh start,如果看到sshd那说明ssh-server已经启动了。

      ssh-server配置文件位于/ etc/ssh/sshd_config,在这里可以定义SSH的服务端口,默认端口是22,你可以自己定义成其他端口号,如222。然后重启SSH服务:

      sudo /etc/init.d/ssh resart


    用psftp.exe 传输文件

    在linux下一般用scp这个命令来通过ssh传输文件。

    1、从服务器上下载文件
    scp username@servername:/path/filename /var/www/local_dir(本地目录)

    例如scp root@192.168.0.101:/var/www/test.txt 把192.168.0.101上的/var/www/test.txt 的文件下载到/var/www/local_dir(本地目录)

    2、上传本地文件到服务器
    scp /path/filename username@servername:/path

    例如scp /var/www/test.php root@192.168.0.101:/var/www/ 把本机/var/www/目录下的test.php文件上传到192.168.0.101这台服务器上的/var/www/目录中

    3、从服务器下载整个目录
    scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)

    例如:scp -r root@192.168.0.101:/var/www/test /var/www/

    4、上传目录到服务器
    scp -r local_dir username@servername:remote_dir
    例如:scp -r test root@192.168.0.101:/var/www/ 把当前目录下的test目录上传到服务器的/var/www/ 目录

    注:目标服务器要开启写入权限。

    vsftpd

    https://help.ubuntu.com/lts/serverguide/ftp-server.html

    FTP 服务器
    
    File Transfer Protocol (FTP) is a TCP protocol for downloading files between computers. In the past, it has also been used for uploading but, as that method does not use encryption, user credentials as well as data transferred in the clear and are easily intercepted. So if you are here looking for a way to upload and download files securely, see the section on OpenSSH in 远程管理 instead. 
    
    sudo apt install vsftpd
    

    http://www.linuxidc.com/Linux/2016-09/135634.htm
    http://www.cnblogs.com/swbzmx/p/5848257.html

    1.sudo apt-get update
    
    2.sudo apt-get install vsftpd ,执行完该步骤,vsftpd服务已经安装
    
    3.创建ftp用户
    
    a,创建用户目录 sudo mkdir /home/uftp
    
    b,创建用户 sudo useradd -d /home/uftp -s /bin/bash uftp
    
    c,修改密码 sudo passwd uftp
    
    4,修改ftp的配置文件 /etc/vsftpd.conf
    
    a,向文件中添加
    
    userlist_deny=NO
    
    userlist_enable=YES
    
    userlist_file=/etc/allowed_users
    
    seccomp_sandbox=NO
    
    使文件中的"local_enable=YES"-->保存。
    
    b,新建/etc/allowed_users文件
    
    输入"sudo gedit /etc/allowed_users"-->回车-->输入uftp-->保存
    
    c,使用gedit查看/etc/ftpusers文件中的内容
    
    打开"终端窗口",输入"sudo gedit /etc/ftpusers"-->回车-->打开这个文件后,看一看有没有uftp这个用户名,如果没有,就直接退出。如果有就删除uftp,因为这个文件中记录的是不能访问FTP服务器的用户清单。
    
    d,如果要更改默认下载目录,修改/etc/vsftpd/vsftpd.conf,加入如下三行:
    local_root=/
    
    local_root表示使用本地用户登录到ftp时的默认目录
    
    ----------------------------------------------
    
    5.注意相关目录权限
    
    错误:550 Permission denied
    
    原因:vsftp默认配置不允许上传文件。
    
    解决:修改/etc/vsftpd.conf
    
    将“write_enable=YES”前面的#取消。
    
    重启vsftp服务器。
    
    6.修改上传文件的权限
    
    默认为-rw---------
    
    进行如下设置后:
    
    local_umask=022
    
    变为:-rw-r--r--
    
    7.修改ftp编码
    
    使用utf8
    
    utf8_filesystem=YES
    
    
  • 相关阅读:
    Android+Jquery Mobile学习系列(9)-总结和代码分享
    Android+Jquery Mobile学习系列(8)-保单/生日提醒功能
    Android+Jquery Mobile学习系列(7)-保险人信息
    Android+Jquery Mobile学习系列(6)-个人信息设置
    jquerymobile之collapsible可折叠块标题内容动态显示
    Android+Jquery Mobile学习系列(5)-SQLite数据库
    Android+Jquery Mobile学习系列(4)-页面转场及参数传递
    Android+Jquery Mobile学习系列(3)-创建Android项目
    cmd命令 拷贝某文件夹及其子文件夹文件到其它文件夹
    精简JRE的思路初探
  • 原文地址:https://www.cnblogs.com/scotth/p/6592519.html
Copyright © 2011-2022 走看看