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 阅读(1145) 评论(1) 编辑 收藏 举报