#1 ^_^ : Linux 常见问题小结
linux 学习笔记 by btpka3 一, vsftpd禁止chroot设置:
单词记忆: anonymous vsftpd官方在线配置手册: 假设vsftpd.conf所在目录为/etc/vsftpd/, 编辑vsftpd.conf文件, 注意: /etc/vsftpd/目录下不允许有多个后缀为.conf的文件, 否则vsftpd会将 它最先找到的.conf文件当作配置文件!!!
1>. 想要使ftp用户 可以 跳出自家目录而到根目录: chroot_local_user=YES #chroot权限打开 chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list #这个列表文件每个用户名占一行, 他们 可以 浏览其主目录的上级目录 # 而不在该列表文件里的用户则不能够拥有chroot权限!!!
2>. 想要使ftp用户 不能 跳出自己目录而到根目录: #上面的最后一句方法也可以, 但是如下配置也行!! chroot_local_user=NO #chroot权限关闭 chroot_list_enable=YES #该行必须要有 chroot_list_file=/etc/vsftpd/vsftpd.chroot_list #这个列表中的用户 不能 浏览其主目录以外的上级目录!! 呵呵,再次看到这部分说明的时候仍然感到困惑, 官方的文档说得也让人费解, 网上的例子也没说的透彻的, 索性干脆做个实验,把他们的所有情况一一实验,得到如下控制表: CHROOT chroot_local_user chroot_list_enable usersInListFile userNotInList YES NO NO NO YES YES YES NO NO NO YES YES NO YES NO YES 望大家以后方便使用
二, IP访问限制
适合与ftp, telnet等服务!!! vsftpd的IP访问控制默认是使用tcp_wrappers 来控制访问的. telnet虽然有单独的访问控制文件, 但是推荐用 /etc/hosts.allow 和 /etc/hosts.deny 文件来统一控制访问! 但是一般可以只用 /etc/hosts.allow 文件即可做到! 下面以vsfptd为例介绍访问控制: Step1. 确定/etc/vsftpd/vsftpd.conf 之中tcp_wrappers 的设定为YES,如下所示: tcp_wrappers=YES Step2. 新启动vsftpd [root@home vsftpd]# /sbin/service vsftpd restart
Step3. 在/etc/hosts.allow文件里添加如下语句: #对vsftpd进程允许172.29.1.*, 172.29.2.*, 222.149.1.*的网段的用户访问 #拒绝其他网段的访问! vsftpd : 172.29.1. 172.29.2. 222.149.1. : allow vsftpd : ALL : deny #telnet设置同vsftpd in.telnetd : 172.29.1. 172.29.2. 222.149.1. : allow in.telnetd : ALL : deny
资料参考: hosts.allow, hosts.deny文件语法说明:
三, 系统编码修改
由于vsftpd不支持编码转换, 而一般使用系统默认的字符集 "zh_CN.UTF-8", 而大多说 windows客户端都是用GBK或GB18030编码, 因此会出现乱码, telnet时也会出现乱码! 解决 方法: 对于vsftpd有个补丁, 地址:
但是对于telnet依旧如故!! 可以修改 文件 /etc/sysconfig/i18n # vi /etc/sysconfig/i18n 修改 LANG="zh_CN.GB2312" 或者 LANG="zh_CN.GBK" #(推荐) 默认的是 LANG="zh_CN.UTF-8" #对于GB2312, GBK小企鹅输入法都能正确支持 #对于GB18030会使小企鹅输入法无法输入(快捷键失效) 或者 LANG="zh_CN.18030" 缺点: 文件名: 对于原有的用UTF编码的中文文件名将显示乱码, 文件内容: 对于一些不能自动辨认文件编码的编辑器来说, 原来系统上已有的用UTF编码 的文件再次显示时会乱码, 但是能够自动矫正编码的编辑器(如gedit)就能够正确显示.
四, 修改系统编码后的Konqueror, Gvim的乱码解决 用Konqueror来浏览f t p 时会有乱码问题, 解决方法: 工具 -> Select Remote Charset -> 简体中文(gb18030)
Gvim, vim, vi在更换系统编码后会使菜单, 文件内容乱码: 解决方法: 在用户的Ho me 里添加一个 .vimrc文件 简要的内容如下: "#设置编码 "set enc=cp936 set encoding=cp936
"设置文件编码 "set fenc=cp936 set fileencoding=cp936 "设置文件编码检测类型及支持格式 set fencs=GBK,UTF-8,ucs-bom,gb18030,gb2312,cp936 "指定菜单语言 set langmenu=zh_CN.GB18030 "这两句只在linux下需要 source $VIMRUNTIME/delmenu.vim source $VIMRUNTIME/menu.vim "使tab 键的宽度为4个空格的宽度 set tabstop=4 "使自动缩进的宽度也是4个空格的宽度 set shiftwidth=4 " 设置字体。 " 字体名称可以通过前一节介绍的语句获得, " 如果字体名称中含有空格, " 需要在空格前面加上一个反斜杠,如下: set guifont=Courier\ 9
不过大家可以看看一个自称"史上最强的 Vim 配置文件?" 地址如下: http://blog.csdn.net/redguardtoo/archive/2006/09/03/1172136.aspx Warning: 经过测试, 该配置文件有BUG, 描述如下: step 1: 从windows telent 到linux上, vi一个现有文件(例如: test.txt), 修改后不保存, 也不退出, step 2: 再从windows上打开一个telnet, kill掉刚才的 vi 进程, 这是将有一个test.txt修改后的版本留在交换分区上, step 3: 用step 1 的 telnet 重新 vi 该文本, 这时, vi 将没有反应, 且对Ctrl+C, Ctrl+D没有响应, 有时候该 vi 进程将占有很高的cpu, 且 kill 不掉!
本地编辑未测试!
五, 小企鹅输入法安装!! 目前linux下最好的输入法之一!! 网址: 说明: 我的操作系统的Fedora Core 4, 以下是针对我遇到的一些问题的说明, 其他平台请到官网 查看在线文档或到官网BBS上求助!! Step 1: 安装 见于源代码编译总遇到错误, 可以下载二进制的tar包或rpm包, 如: fcitx-3.3.1-bin.tar.bz2 $tar -jxvf fcitx-3.3.1-bin.tar.bz2 $cd fcitx-3.3.1-bin $./fcitx.install $./fcitx.uninstall 卸载时可以是用该方法!!! Step 2: 自起动配置 $vi /etc/X11/xinit/xinput.d/zh_CN #没有的就创建, 默认有, 这里进行修改, 先注释掉其他, 再配置如下 XIM=fcitx XIM_PROGRAM=fcitx GTK_IM_MODULE=fcitx gnome-im-settings-daemon >/dev/nul $vi /etc/sysconfig/i18n #确保 LANG="zh_CN" 或 LANG="zh_CN.GB2312" 或 #LANG="zh_CN.GBK" 或 LANG="zh_CN.UTF-8", 但千万不要是 "zh_CN.GB18030" Step 3: 注销, 重新登录 注意: fcitx与Telnet输入乱码, 用FC4自带的输入法可以在Telnet时正确输入汉字, 但是在用fcitx时, 需要telnet多加一个 -8 的参数: $ telnet -8 172.29.2.70 |