ubuntu14.04安装ssh和ftp

时间:2022-10-03 05:10:03

0.安装SSH

>1.先使用netstat -tl或service ssh status查看ssh服务是否开启,如果没有开启,用service ssh restart开启,如果没有安装,使用sudo apt-get install openssh-server安装ssh.

>2.因为我安装的是Ubuntu server版本,查看防火墙的端口:发现没有任何端口来侦听外来侦听。

$sudo ufw default deny
$sudo ufw enable

通过第一命令,我们设置默认的规则为deny, 这样除非指明打开的端口, 否则所有端口默认都是关闭的。第二个命令则启动了ufw。如果下次重新启动机器, ufw也会自动启动。

然后开启22端口:
    

$sudo ufw allow 

PS:ufw是一个主机端的iptables类防火墙配置工具,比较容易上手。一般桌面应用使用ufw已经可以满足要求了。详细请看:UFW

现在可以通过下面命令来查看防火墙的状态了:

$sudo ufw status

ubuntu14.04安装ssh和ftp

这里是开启了22和21号端口。

1.安装FTP--VSFTPD

这里我要在我的虚拟机中搭建一个ftp服务器。其中可以使用系统的用户和密码可以登录.

>1.这里我选择使用vsftpd服务来搭建我的ftp服务器。首先检测Linux是否安装了vsftpd,其中有多种测试方式:通过 service vsftpd status ,来查看服务状态,

   如果没有安装vsftpd,则通过下面命令安装vsftpd:

$> sudo apt-get install vsftpd

>2.需要修改vsftpd的配置文件,你也可以先备份一个配置文件。

#备份vsftpd配置文件
$> sudo cp vsftpd.conf vsftpd.conf.old
$> sudo vi /etc/vsftpd.conf

anonymous_enable=NO     #这个表示不能匿名登录,必须是允许的用户登录,后边设置只有那些系统用户可以登录。默认为NO

local_root=/home/ftpuser    #这个在conf中默认没有,需要在文本最后加上一句。设置ftp目录是 /home/ftpuser

local_enable=YES      #表示本机也能访问,默认为yes

chroot_list_enable=YES     #开启用户登录列表

chroot_list_file=/etc/vsftpd.chroot_list   #这个文件是存放用户名称,例如我的 ubuntu 系统用户,表示Ubuntu这个系统用户可以登录ftp。

#这里需要/etc/vsftpd.chroot_list 这个文件,如果没有请新建:

$> sudo vi /etc/vsftpd.chroot_list

然后vi这个文件 输入ubuntu.

记住:因为新安装了ubunu server,在防火墙中没有开放21端口,所以需要开放21端口:

$> sudo ufw allow 

因为在安装vsftpd服务后,会自动开启了vsftpd服务。所以,更改完配置文需要重启服务:

$> sudo service vsftpd restart

最后本地测试:

$>  ftp 127.0.0.1

发现一个错误如下:

OOPS: vsftpd: refusing to run with writable root inside chroot() Login failed. 明显是登录失败。

解决办法:

因为配置 chroot_list_enable=YES和chroot_list_file=/etc/vsftpd.chroot_list的原因,在vsftpd.chroot_list不能有队 /home/ftpuser 拥有写权限。

所以更改Ubuntu对 /home/ftpuser的权限,只让root用户拥有这个文件夹权限:

$> sudo chown -R root:root /home/ftpuser

然后我们利用 ftp 127.0.0.1进行登录测试:

ubuntu14.04安装ssh和ftp

登录成功!

在win利用ftp,使用Ubuntu用户和密码进行登录,上传文件的时候发现不能上传成功!因为我更改了Ubuntu对ftp目录的写权限!

那怎么办?要不然这个ftp不就废了?

解决办法:

在 /home/ftpuser/下再创建一个目录,并给Ubuntu用户在这个目录下的全部写权限。

$> sudo mkdir /home/ftpuser/realfiles
$> sudo chown -R ubuntu:ubuntu /home/ftpuser/realfiles

如此一来,就可以在windows 下通过ftp上传文件到Linux机器上。