linux上创建ftp服务器下载文件///使用AWS服务器作为代理,下载sbt相关的包

时间:2022-01-10 12:05:08

  最近觉得自己下载有些jar的速度太慢了,就在aws上下好了,然后转到我电脑上来,在aws上开了ftp服务器。结果就倒腾了一上午,作个记录,以便后面查看。

  1.安装vsftpd

  yum -y install vsftpd

  2.把aws里面安全组的20 21 端口按tcp方式打开

  3.使用root用户, 创建一个专门的ftp用户:

  adduser ftpuser

  passwd ftpuser

  //设置用户的根目录

  usermod -d /home/ftpuser ftpuser

  4. 启动vsftpd服务

  service vsftpd start

  5. 可以在客户端进行ftp了

  但是发现打得命令比如ls什么的 都久久没有回应,

  需要输入passive 来关掉Passive mode

  6 结果发现文件还是下载不了,报错如下:

  550 Failed to open file.

  网上查了查:

  getsebool -a |grep ftp

  中有一项:

  ftp_home_dir --> off   就是这个,需要设置为on才可以

  so,需要输入命令:

  setsebool -P ftp_home_dir=1

  再看看:

  getsebool -a |grep ftp  

  ftp_home_dir --> on

  

以上 然后再来ftpget 就可以下载了~~~~

主要参考:

http://jackyxin.blog.51cto.com/1976631/1652148

http://www.cnblogs.com/chenmh/p/5365274.html


这是是分割线

结果这样安装sbt还是太麻烦了,先吐个槽,国内的maven库是木有可以用的了么,还是只能自己搭代理去国外的maven库里取。

又找了找网上的资料,直接用代理来下载了:

亚马逊服务器设置:

tinyproxy是一个能够代理http和https的小程序 
安装软件 
sudo apt-get install tinyproxy 
配置: 
vi /etc/tinyproxy.conf 
端口:8888 [默认的端口不变] 
注释掉:#Allow 127.0.0.1 
启动代理:/etc/init.d/tinyproxy restart 
开机启动: 
vi /etc/rc.local 
/etc/init.d/tinyproxy restart

修改亚马逊服务器的登陆方式为密码的登陆

  sudo passwd root,设置root账号的密码root123 
  sudo passwd ubuntu,设置ubuntu账号的密码ubuntu 
  然后,使用如下命令修改SSHD设置:vi /etc/ssh/sshd_config, 
  把PermitRootLogin的参数修改为“yes”允许root登录 
  找到 PasswordAuthentication no,将no改为yes。 可以用密码登陆 
  去掉 #UsePAM no 前面的井号 ##### 修改UsePAM=no [关键] 
  重新启动ssh服务:sudo service ssh restart

自己有需要的 可以用 useradd 命令来增加一个用户,然后 记得创建下用户根目录,或者指向已存在的目录。

然后就是用:

  

ssh -p proxy_ssh_port username@proxy_ip -D local_port
e.g.:
ssh -p28888 root@123.124.125.126 -D
如果没有修改服务器上的ssh端口, 可以不用-p参数

这个命令来个本地代理,然后运行sbt下载的时候:

  sbt -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=7070

直接这样就好了。

---------------

参考链接:

http://blog.csdn.net/rainysia/article/details/51679871

http://blog.csdn.net/lsziri/article/details/49176735

以上。。。。估计木有aws上申请机器的,还是很麻烦。。。。