$xjj  —>  小丶鸡丷鸡

Tag: uBuntu

ubuntu server — 05 配置通达OA

@2010,05.18 22:27:15

以前有转载过通达OA配置在Linux服务器,昨天自己实践下,
1、首先数据库要手工改成大些文件名,这个工作量最大,在FTP传到mysql目录下;
2、把在Windows下安装好MYOA用FTP(注意选二进制)上传到web目录下,配置好多域名;
3、修正好php.ini的参数 http://blog.putian.name/?p=438;(这步做好OA可以登录,菜单也正常,就是桌面出不来
4、桌面问题是因为字符集的关系,自己摸索了半天发现字符集问题只能改英文文件名,今天再看下按转载的文章有说的改成英文文件名即可,杯具…;

留言 :, , 更多...

ubuntu server — 04 多域名配置

@2010,04.27 23:56:35

修改/etc/apache2/httpd.conf,添加
ServerRoot “/var/wwwroot/www”
《Directory “/var/wwwroot/目录1″>
Options Indexes FollowSymlinks Multiviews
AllowOverride All
Order allow,deny
Allow from all
《/Directory>
在/etc/apache2/sites-available下建立个allsites.conf,添加
NameVirtualHost xxx.xxx.xxx.xxx
《VirtualHost IP地址[:端口]>
DocumentRoot “/var/wwwroot/www”
ServerName www.putian.name
《/VirtualHost>
最后执行 sudo ln -s /etc/apache2/sites-available/allsites.conf /etc/apache2/sites-enabled

留言 : 更多...

ubuntu server — 03 Vsftpd配置

@2010,04.25 10:28:09

安装跳过
配置MySQL数据库

#mysqladmin -u root -p password 123456 修改mysql的root密码,第一次修改因为root密码是空所以不用输入旧密码。

连接数据库:

#mysql -h 127.1 -u root -p 使用root用户连入本机mysql服务器

Enter password: 输入root用户密码,注意:不是系统根用户哦

mysql> 连入成功!如果没有出现这个提示符,则是上面两个步骤没有正确

mysql>create databases vsftpd; 建立库名。记住,在mysql环境下命令的结束必须有“;”,如果忘记了输入“;”也不怕的,忘记了输入“;”则是换行,在mysql里面命令是可以分成几行执行的。你再输入“;”起同样的作用。

mysql>show databases; 查看库名是否建立,如果没有则重新执行上一步。

mysql>use vsftpd; 打开库vsftpd,以下操作就会针对vsftpd库。

mysql>create table users (name varchar(20) not null,password varchar(20) not null,primary key (name)) type=myisam; 创建名为users的表名,其中设置了两个键name和password。这里比较难理解,我一一解释吧!varchar(20) not null设置键长度为20,且不能为空,primary key(name)设置表的主键(主键是不能赋相同的值,因为ftp用户名不能相同)。type=myisam设置表的类型(MyISAM 全新二进制可移植的表处理器),www.britepic.org这个是默认的,可以省略。

mysql>show tables; 查看表是否建立成功,没有请退到上一步。

mysql>insert into users values(‘admin’,'admin’); 建设虚拟用户admin,密码为admin。

mysql>insert into users values(‘download’,'download’);

mysql>insert into users values(‘upload’,'upload’);

mysql>insert into users values(‘web’,'web’);

mysql>select * from users; 验证结果,如果看不到刚才建立的虚拟用户那么请退到上一步。

MySQL数据建好了,但是我们不能直接用root用户吧,要给它建立个用户供pam使用。

mysql>grant select on vsftpd.users to vsftpd@localhost identified by ‘vsftpd’;

grant 命令

select on vsftpd.users 所有权限,这里设置权限仅在vsftpd库的users表使用select。

to vsftpd@localhost 本机vsftpd用户(mysql按照用户名和所在IP区分用户,root和root@%不是同一个用户。)

identified by ‘vsftpd’ 设置vsftpd@localhost用户的口令为vsftpd。

mysql>quit;
退出mysql,mysql配置完成。
*************
配置vsftpd的PAM验证
#vim /etc/pam.d/vsftpd
把以前的内容全部注释掉,然后添加如下肉容(下面只有两行,请注意):
auth required pam_mysql.so user=vsftpd passwd=vsftpd host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=0

account required pam_mysql.so user=vsftpd passwd=vsftpd host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=0
解释一下:
user=vsftpd 刚才添加的mysql用户名
passwd=vsftpd 刚才添加的用户名密码
host=localhost mysql服务器名,我是做在本机所以……。
db=vsftpd 与这个对应create databases vsftpd,是存储用户名的mysql库名
table=users 存储用户名的mysql库中的表名
usercolumn=name 与mysql对应的键
passwdcolumn=password 与mysql对应的键
crypt=0 加密方式,0表示明文,1表示unix方式加密,2表示mysql中的password函数加密,3表示md5加密的。不过我都只有做成明文才成功了,1、2、3方法都不行! 知道的朋友告诉下哦! (加密好像要装mysql的一个pam的模块 pam_mysql-0.7RC1.tar.gz我把Mysql的位置移动了,./install的事后显示错误,不能make的 )

sudo apt-get install libpam-mysql 这句很关键
*****************
配置vsftpd,这里很重要,请大家参考vsftpd手册,我这里只简单的实现一下。
#vim /etc/vsftpd.conf
#接受匿名用户
anonymous_enable=YES
#匿名用户login时不询问口令
no_anon_password=YES
#匿名用户主目录
anon_root=(none)
#接受本地用户
local_enable=YES
#本地用户主目录
local_root=(none)
#如果匿名用户需要密码,那么使用banned_email_file里面的电子邮件地址的用户不能登录
deny_email_enable=YES
#仅在没有pam验证版本时有用,是否检查用户有一个有效的shell来登录
check_shell=YES
#若启用此选项,userlist_deny选项才被启动
userlist_enable=YES
#若为YES,则userlist_file中的用户将不能登录,为NO则只有userlist_file的用户能登录
userlist_deny=NO
#如果和chroot_local_user一起开启,那么用户锁定的目录来自/etc/passwd每个用户指定的目录(这个不是非常清晰,非常哪位熟悉的指点一下)
passwd_chroot_enable=NO
#定义匿名登入的使用者名称。默认值为ftp。
ftp_username=FTP
#################用户权限控制###############
#能上传(全局控制).
write_enable=YES
#本地用户上传文件的umask
local_umask=022
#上传文件的权限配合umask使用
#file_open_mode=0666
#匿名用户能上传
anon_upload_enable=NO
#匿名用户能建目录
anon_mkdir_write_enable=NO
匿名用户其他的写权利(更改权限?)
anon_other_write_enable=NO
如果设为YES,匿名登入者会被允许下载可阅读的档案。默认值为YES。
anon_world_readable_only=YES
#如果开启,那么所有非匿名登陆的用户名都会被转换成guest_username指定的用户名
#guest_enable=NO
所有匿名上传的文件的所属用户将会被更改成chown_username
chown_uploads=YES
匿名上传文件所属用户名
chown_username=lightwiter
#如果启动这项功能,则所有列在chroot_list_file之中的使用者不能更改根目录
chroot_list_enable=YES
#允许使用”async ABOR”命令,一般不用,容易出问题
async_abor_enable=YES
管控是否可用ASCII 模式上传。默认值为NO。
ascii_upload_enable=YES
#管控是否可用ASCII 模式下载。默认值为NO。
ascii_download_enable=YES
#这个选项必须指定一个空的数据夹且所有登入者都不能有写入的权限,当vsftpd 不必file system 的权限时,就会将使用者限制在此数据夹中。默认值为/usr/share/empty
secure_chroot_dir=/usr/share/empty
###################超时设置##################
#空闲连接超时
idle_session_timeout=600
#数据传输超时
data_connection_timeout=120
#PAVS请求超时
ACCEPT_TIMEOUT=60
#PROT模式连接超时
connect_timeout=60
################服务器功能选项###############
#开启日记功能
xferlog_enable=YES
#使用标准格式
xferlog_std_format=YES
#当xferlog_std_format关闭且本选项开启时,记录所有ftp请求和回复,当调试比较有用.
#log_ftp_protocol=NO
#允许使用pasv模式
pasv_enable=YES
#关闭安全检查,小心呀.
#pasv_promiscuous+NO
#允许使用port模式
#port_enable=YES
#关闭安全检查
#prot_promiscuous
#开启tcp_wrappers支持
tcp_wrappers=YES
#定义PAM 所使用的名称,预设为vsftpd。
pam_service_name=vsftpd
#当服务器运行于最底层时使用的用户名
nopriv_user=nobody
#使vsftpd在pasv命令回复时跳转到指定的IP地址.(服务器联接跳转?)
pasv_address=(none)
#################服务器性能选项##############
#是否能使用ls -R命令以防止浪费大量的服务器资源
#ls_recurse_enable=YES
#是否使用单进程模式
#one_process_model
#绑定到listen_port指定的端口,既然都绑定了也就是每时都开着的,就是那个什么standalone模式
listen=YES
#当使用者登入后使用ls -al 之类的指令查询该档案的管理权时,预设会出现拥有者的UID,而不是该档案拥有者的名称。若是希望出现拥有者的名称,则将此功能开启。
text_userdb_names=NO
#显示目录清单时是用本地时间还是GMT时间,能通过mdtm命令来达到相同的效果
use_localtime=NO
#测试平台优化
#use_sendfile=YES
################信息类设置################
#login时显示欢迎信息.如果设置了banner_file则此设置无效
ftpd_banner=欢迎来到** FTP 网站.
#允许为目录设置显示信息,显示每个目录下面的message_file文件的内容
dirmessage_enable=YES
#显示会话状态信息,关!
#setproctitle_enable=YES
############## 文件定义 ##################
#定义不能更改用户主目录的文件
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
#定义限制/允许用户登录的文件
userlist_file=/etc/vsftpd/vsftpd.user_list
#定义登录信息文件的位置
banner_file=/etc/vsftpd/banner
#禁止使用的匿名用户登陆时作为密码的电子邮件地址
banned_email_file=/etc/vsftpd.banned_emails
#日志文件位置
xferlog_file=/var/log/vsftpd.log
#目录信息文件
message_file=.message
############## 目录定义 #################
#定义用户设置文件的目录
user_config_dir=/etc/vsftpd/userconf
#定义本地用户登陆的根目录,注意定义根目录能是相对路径也能是绝对路径.相对路径是针对用户家目录来说的.
local_root=webdisk #此项设置每个用户登陆后其根目录为/home/username/webdisk
#匿名用户登陆后的根目录
anon_root=/var/ftp
#############用户连接选项#################
#可接受的最大client数目
max_clients=100
#每个ip的最大client数目
max_per_ip=5
#使用标准的20端口来连接ftp
connect_from_port_20=YES
#绑定到某个IP,其他IP不能访问
listen_address=192.168.0.2
#绑定到某个端口
#listen_port=2121
#数据传输端口
#ftp_data_port=2020
#pasv连接模式时能使用port 范围的上界,0 表示任意。默认值为0。
pasv_max_port=0
#pasv连接模式时能使用port 范围的下界,0 表示任意。默认值为0。
pasv_min_port=0
##############数据传输选项#################
#匿名用户的传输比率(b/s)
anon_max_rate=51200
#本地用户的传输比率(b/s)
local_max_rate=5120000
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
guest_enable=YES #允许虚拟用户
guest_username=ftp #把虚拟用户映射成本地用户
user_config_dir=/etc/vsftpd/vsftpd_user_conf #虚拟用户的权限设置目录

设置文件 /etc/vsftpd/vsftpd_user_conf 范例如下,文件名就是虚拟用户的名字

local_root=/var/www #网站目录
anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
virtual_use_local_privs=YES
chmod_enable=YES
local_umask=011 #umask

***********
启动服务
#/etc/init.d/vsftpd stop
#etc/init.d/mysql stop
#etc/init.d/mysql start
#etc/init.d/vsftpd start

留言 :, 更多...

ubuntu server — 02 Mysql数据转移

@2010,04.23 00:51:07

1、sudo /etc/init.d/mysql stop
2、sudo mv -f /var/lib/mysql /home/database
3、sudo nano /etc/mysql/my.cnf
将datadir=/var/lib/mysql改为datadir=/home/database
或则 sudo ln -s /home/database /var/lib
4、sudo nano /etc/apparmor.d/usr.sbin.mysqld 在这个文件里面加入权限设定,将原来的
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
更换成
/home/database/mysql/ r,
/home/database/mysql/** rwk,
5、sudo /etc/init.d/apparmor restart
6、sudo /etc/init.d/mysql start
以上注意两个地方一是第5点一定要执行,二是要用nano不能gedit,昨天晚上11点半搞到早上3点,一致不行,今天早上换成nano按照以上顺序执行,顺利转移成功。

下面是网上搜到的参考资料,经验证可以不必那么麻烦

*************
1、关掉数据库 sudo /etc/init.d/mysql stop

2、假设我们指定的数据库文件目录为/db
创建目录 /db,并修改其拥有者及所属群组为mysql:mysql.命令:chown mysql:mysql db
修改mysql配置文件my.cnf:将datadir=/var/lib/mysql改为datadir=/db

3、修改ubuntu中的安全设置
sudo gedit /etc/apparmor.d/usr.sbin.mysqld 在这个文件里面加入权限设定,将原来的
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
更换成
/db/mysql/ r,
/db/mysql/** rwk,

4、重新初始化数据文件:执行sudo mysql_install_db

5、启动mysql数据库服务:sudo /etc/init.d/mysql start

6、设置mysql数据库root密码:mysqladmin -u root password ‘new-password’

7、在/etc/mysql/debian.cnf中找到你的debian-sys-maint用户密码,在mysql中重新建立这个用户.

此时我们会发现/db目录下出现mysql相关文件。如果我们新建数据库,其数据库文件也将出现在db目录下。表示我们修改的mysql数据库文件存储目录正确。

error: ‘Access denied for user ‘debian-sys-maint’@'localhost’ (using password: YES)’
出现这问题只要找到/etc/mysql/debian.cnf 这文件里面
把root 跟password 这两项删除就行了。内容留空。

留言 :, 更多...


 uBuntu « $xjj —> 小丶鸡丷鸡