ubuntu server 9.04下配置ftp服务和可读写samba服务

这几天很忙,也没有更新博客,刚刚忙完,简单总结一下。最近公司在大批量的更换业务到linux下面去,所有的开发机换成了ubuntu 9.04 desktop版本,我们我负责装配8台左右,弄完哪些,下午开始更新以前公司的服务器。以前的公司服务器又两台采用red hat el4的,我ssh上去,发现巨用不习惯,准备开ftp服务器,发现上面安装了vsftp服务器,可是确启动不起来,但是远程ftp可以登陆上去,不能上传,纳闷,翻阅资料,后来发现原来redhat el4在上个同时开启了默认的gssftp,我先把他停掉,然后service vsftpd start来开启了ftp服务,可是怎么都不能上传,期间检查了权限等种种原因无果,最后df命令解救了我,巨郁闷,空间100%占用,硬盘满了,粗心的代价啊。浏览了两台服务器,没有太多重要的东西了,用ubuntu server 9.04重做了,为了以后管理方便。下面把整个过程整理一下。

服务器是我们公司自己产的浪潮服务器,80G硬盘、2G内存、双核intel cpu。安装ubuntu server的过程网上很多,就是文字图形界面,没有desktop的安装向导漂亮,不过也能指导着顺利完成安装。安装完成重启机器,进入console,输入用户名密码,开始配置服务。

1、配置vsftpd,实现ftp服务。

先要安装vsftpd,在ubuntu下面都是小菜一碟,sudo apt-get install vsftpd,等待一会就安装完成了vsftpd,并且会自动启动ftp服务。完成之后会在/etc/vsftpd.conf文件,这个就是vsftpd的配置文件,我们来配置一下 sudo vim /etc/vsftpd.conf 。下面是文件的详细参数说明:

################################################################
#接受匿名用户
anonymous_enable=YES
#匿名用户login时不询问口令
no_anon_password=YES
#接受本地用户
local_enable=YES
#可以上传(全局控制).若想要匿名用户也可上传则需要设置anon_upload_enable=YES,
#若想要匿名用户可以建立目录则需要设置anon_mkdir_write_enable=YES.
#这里禁止匿名用户上传,所以不设置这两项.
write_enable=YES
#本地用户上传文件的umask
local_umask=022
#login时的欢迎信息
ftpd_banner=Welcome to KingArthur's FTP service.
#本地用户login后所在目录,若没有设置此项,则本地用户login后将
#在他的home目录(/etc/passwd的第六个字段)中.匿名用户的对应选项是anon_root
local_root=/var/ftp
#设置为YES则下面的控制有效
chroot_list_enable=YES
#若为NO,则记录在chroot_list_file选项所指定的文件(默认是/etc
#/vsftpd.chroot_list)中的用户将被chroot在登录后所在目录中,无
#法离开.如果为YES,则所记录的用户将不被chroot.这里选择YES.
chroot_local_user=YES
#服务器以standalong模式运行,这样可以进行下面的控制
listen=YES

上面这些都是我打开的参数,他的基本功能就完成了本地用户和匿名用户都可以登录,ftp的文件会放在 /var/ftp下面。你建立/etc/vsftpd.chroom_list文件,把你准备本地登录的用户名放到这个文件里面,他们 登录的时候会把/var/ftp作为根目录,用户登录ftp之后就无法看到整个系统的目录结构,这样相对安全点。我们 这里要新建一个叫做ftpmanager的用户,他作为专门的ftp用户,把他的名字加入到vsftpd.chroom_list里面。

sudo groupadd ftpuser
sudo useradd -g ftpuser -d /var/ftp ftpmanager
sudo passwd ftpmanager //设置密码
chown ftpmanager /var/ftp   //完成权限设置,这样才能用这个用户对这个目录可读可写
chmod 777 /var/ftp

最后命令 sudo service vsftpd restart重启服务器,然后用ftpmanager登录就可以上传文件了。

2、配置可读写samba,主要是为了vss文件服务器

首先当然是要安装samba了,呵呵:

sudo apt-get install samba
sudo apt-get install smbfs

下面我们来共享群组可读写文件夹,假设你要共享的文件夹为: /var/vss 首先创建这个文件夹

mkdir /var/vss
chmod 777 /var/vss

备份并编辑smb.conf允许网络用户访问

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup
sudo vim /etc/samba/smb.conf

在vim里面/sercurity搜寻这一行文字

; security = user

用下面这几行取代

security = user
username map = /etc/samba/smbusers

将下列几行新增到文件的最后面,假设允许访问的用户为:vssuser。而文件夹的共享名为VSS

[VSS]
comment = VSS folder for vss file server
path = /var/vss
public = yes
writable = yes
valid users = nvssuser
create mask = 0700
directory mask = 0700
force user = nobody
force group = nogroup
available = yes
browseable = yes

然后顺便把这里改一下,找到[global]改成

workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936

后面的三行是为了防止出现中文目录乱码的情况。其中根据你的local,UTF-8 有可能需要改成 cp936。 现在要添加vssuser这个网络访问帐户。如果系统中当前没有这个帐户,那么

sudo useradd vssuser

要注意,上面只是增加了vssuser这个用户,却没有给用户赋予本机登录密码。所以这个用户将只能从远程访问,不能从本机登录。而且samba的登录密码可以和本机登录密码不一样。 现在要新增网络使用者的帐号:

sudo smbpasswd -a vssuser
sudo vim /etc/samba/smbusers

在新建立的文件内加入下面这一行保存

vssuser = "vss user name"

删除网络使用者的帐号的命令把上面的 -a 改成 -x

sudo testparm
sudo /etc/init.d/samba restart

最后退出重新登录或者重新启动一下机器。

3、在windows下面映射samba共享的网盘

右击《我的电脑》,选择映射网络驱动器,选择盘符,输入samba共享目录,勾选登录时重新连接,单击使用其他用户名进行连接并输入samba帐号。 上面方法在win2k系统是正常的,但在XP以上系统就会出现当时正常连接但重新登录后不能连接到的问题。下面解决办法:

   1,添加网络密码
   依次打开控制面板->用户帐户->选择一个用户->管理我的网络密码->添加,
   输入samba服务器IP及帐号,然后重新映射samba共享目录,且无需选择使
   用其它用户名进行连接即可自动重连。
   2,若添加网络密码选项不可用,则依次打开开始->设置->控制面板->
   管理工具->本地安全策略->本地策略->安全选项->网络访问:不允许为
   网络身份验证储存凭据或.NET Passports,将其设置为已停用。
   重启系统,即可看到管理我的网络密码->添加选项,然后依第1条设置即可。

4、明天还有一台服务器要处理,郁闷啊,不知道要弄成什么服务呢 ⊙﹏⊙b汗

posted on 2010-06-09 22:38  JesseZhao  阅读(1148)  评论(1编辑  收藏  举报

导航