痛点
最近需要在Mac上远程连接一台Linux服务器,管理一些文件。不仅需要进行常规的本地文件操作,还需要上传、下载、编辑。
虽然有一些付费或免费的App,也可以完成类似工作。但其实Mac OS X自带的Finder就可以搞定了!
samba简介
samba,是一个基于GPL协议的自由软件。它重新实现了SMB/CIFS协议,可以在各个平台共享文件和打印机。
1991年,还是大学生的Andrew Tridgwell,有三台机器,分别是Microsoft的DOS系统、DEC的Digital Unix系统、以及Sun的Unix系统。当时的技术无法让三者共享文件。为此,他开发了samba并将其开源。
本来改名为smbserver,但是一家商业公司注册了SMBServer商标。他被告知不能使用。于是执行了grep -i '^s.*m.*b' /usr/share/dict/words
,从中选择了samba这个词。
前辈们的技术罗曼史,总是令人心潮澎湃啊!
Linux配置
安装samba
我的远程Linux服务器用的是Ubutu系统,包管理器是apt,以此为例。
sudo apt-get install samba
安装samba及其所有依赖。
共享文件夹
先创建一个需要共享的文件夹,这里用shared_directory
。如果已经有,直接执行chmod
改变它的权限。
mkdir /home/USER_NAME/shared_directory
sudo chmod 777 /home/USER_NAME/shared_directory
USER_NAME
就是你的用户名。
配置samba.conf
可以直接修改/etc/samba/smb.conf
,在文件末尾添加:
[share]
path = /home/USER_NAME/shared_directory
available = yes
browseable = yes
public = yes
writable = yes
每一行的意义,其英文都很明白。关键path
要指定为你需要的文件夹。
添加samba账户
sudo touch /etc/samba/smbpasswd
sudo smbpasswd -a USER_NAME
USER_NAME就是你需要添加的用户名。然后会提示输入两次密码。
在Mac上连接
打开Finder(或在桌面),CMD + k
,可以得到以下页面:
在`smb://`后面,输入你的服务器地址或域名
输入前面的`USER_NAME`和刚设置的密码
然后,就可以在Mac的Finder下,管理远程Linux服务器的那个文件夹下的所有内容啦!
.DS_Store安全隐患
由于Finder自带的.DS_Store包含了太多信息,如果在服务器产生.DS_Store会造成安全隐患。如果没有特殊配置,你用Finder管理远程的文件夹会自动产生.DS_Store。
在云端检查你的共享文件夹,如果发现.DS_Store,立即删除!
ls -a /home/USER_NAME/shared_directory
如何让Finder不在远程连接时产生.DS_Store?
打开Mac的Terminal,输入
defaults write com.apple.desktopservices DSDontWriteNetworkStores true
然后重启Mac,再试试远程连接。
结论
此后,工作、学习的效率又有所提高。
技术的天梯更上一层,人生的境界也更进一步。
O(∩_∩)O~
作者:匿蟒
链接:https://www.jianshu.com/p/fe7fd0286c4e
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
FTP方法
VSFTP是一个非常安全和快速的FTP应用程序,它的设置和管理非常简单。
1、准备工作
需要安装并运行的Ubuntu Server 18.04系统。当然还需要一个具有sudo权限的账号。
2、安装VSFTP
VSFTP程序位于标准存储库中,因此可以使用单个命令删除安装。打开终端窗口并使用以下命令:
sudo apt-get install vsftpd
使用以下命令启动并启用该服务:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
安装完成后,您就可以继续了。
3、创建FTP用户
我们将使这很容易,并为FTP服务创建一个用户,然后您可以将其提供给需要它的人(并且在服务器上没有用户帐户)。这可以被视为通用FTP使用的帐户。您可以随时创建更多,服务器上具有用户帐户的任何人都可以通过FTP进行登录。我们的用户将被称为ftpuser,并使用以下命令创建:
sudo useradd -m ftpuser
使用以下命令设置用户密码:
sudo passwd ftpuser
至此用户已设置完成。
4、配置VSFTP
我们将创建一个全新的配置文件。在我们这样做之前,让我们用命令重命名原始文件:
sudo mv /etc/vsftpd.conf /etc/vsftpd.conf.orig
使用以下命令创建新文件:
sudo nano /etc/vsftpd.conf
在该文件中,输入以下内容:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=10100
allow_writeable_chroot=YES
5、登录
此时,您应该能够使用之前创建的ftpuser登录FTP服务器。使用您最喜欢的FTP GUI客户端或命令行登录。您现在可以上传和下载文件到您的内容。这些文件将保存在ftpuser用户的主目录中(so/home/ftpuser)。使用我们的配置文件,我们已禁用匿名使用,因此登录的唯一方法是使用服务器上的工作帐户。
总结
至此,在Ubuntu 18.04上创建了FTP服务器的任务已经完成。
要了解有关此FTP服务器可以执行的操作的更多信息,请使用命令man vsftpd。