VirtualBox安装增强功能

VirtualBox Guest Addition,相当于VmWare的vm tools,能够提高虚拟机的图形性能等等。VirtualBox直带了这个ISO文件,在VirtualBox的安装文件根目录下可以找到它。

      直接在虚拟机的主菜单上点击“Install VB Guest Addition”,Fedora会自动挂载一个iso。打开终端,进入root模式。进入到/media/cdrom 目录下,运行./VBoxLinuxAdditions-x86.run 或 sh VBoxLinuxAdditions-x86.run

得到如下信息:

Verifying archive integrity... All good.
Uncompressing VirtualBox 1.6.6 Guest Additions for Linux installation...........................................................................................................................................
VirtualBox 1.6.6 Guest Additions installation
Building the VirtualBox Guest Additions kernel module...
Building the shared folder support kernel module...
Installing the VirtualBox Guest Additions...

Successfully installed the VirtualBox Guest Additions.
You must restart your guest system in order to complete the installation.
表明安装已经成功,直接在终端输入 reboot 重启即可生效。

      装完重启之后,鼠标就可以在Host主机系统和虚拟系统之间自由移动而不需按右边Ctrl键切换了,而且虚拟系统的窗口可以拉动,位置合适的话Ubuntu桌面会自动全屏显示。如果开启了与Host系统共享剪贴板的话,还可以在Host系统与虚拟系统之间进行复制/剪切和粘贴。

      另:系统内核更新之后,这个增强功能可能会失效,需要重新安装一次!

ubuntu服务器版安装桌面

ubuntu服务器版安装桌面

安装完ubuntu服务器版后,默认不没有安装任何图形桌面系统的,需要手动安装和配置。在文本模式下可以使用nano,vi新手很难适应。

为了方便,可以激活root帐号:passwd root

以root身份进入后,sudo可不再输入。

1、安装桌面包

sudo apt-get install ubuntu-desktop

2、如果无法显示桌面,说明显卡驱动有问题,需要重新手动安装显卡驱动,笔者的机器是IBM X3550服务器,显卡为ATI,所有操作如下:(具体可见官方的关天ATI显卡的安装,如果为NVIDIA显卡请看NVIDIA显卡安装配置页面)如果不知道显卡型号可以在机器的相关公司主页上查到配置)

sudo apt-get update sudo apt-get install xorg-driver-fglrxYou might also want to install a control panel for your graphic card. Please note that I do not recommend it, as it seems to be buggy, and generally doesnt work.
您可能还想为您的图形卡安装一个控制面板。请注意我并不推荐这样做,因为这个控制面板看起来有些bug,并且一般不起作用。
sudo apt-get install fglrx-controlMake sure fglrx is not disabled: gksudo gedit /etc/default/linux-restricted-modules-common
产生一确答fglrx并未被禁用(在终端命令行中输入以下命令,查看最后一行的DISABLED_MODULES=""的双引号中是否含有fglrx。--译者注): gksudo gedit /etc/default/linux-restricted-modules-common
Generate a new set of module dependencies so the fglrx driver starts properly.
产生一组新的模块以便 fglrx 驱动完全启动。
sudo depmod -aYou now have to configure xorg to use your graphic card. The aticonfig tool, provided with the driver, will do that for you:
现在您需要配置xorg来使用您的图形卡。驱动自带的aticonfig工具会帮您完成这项工作。
sudo aticonfig --initial sudo aticonfig --overlay-type=Xv

ubuntu apt-get命令详解

  • apt-get update —— 在修改/etc/apt/sources.list或者/etc/apt/preferences之後运行该命令。此外您需要定期运行这一命令以确保您的软件包列表是最新的
  • apt-get install packagename——安装一个新软件包(参见下文的aptitude)
  • apt-get remove packagename —— 卸载一个已安装的软件包(保留配置文件)
  • apt-get –purge remove packagename —— 卸载一个已安装的软件包(删除配置文件)
  • dpkg –force-all –purge packagename —— 有些软件很难卸载,而且还阻止了别的软件的应用,就可以用这个,不过有点冒险。
  • apt-get autoclean apt —— 会把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以让这个命令来删除你已经删掉的软件
  • apt-get clean —— 这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的。
  • apt-get upgrade —— 更新所有已安装的软件包
  • apt-get dist-upgrade —— 将系统升级到新版本
  • apt-cache search string —— 在软件包列表中搜索字符串
  • dpkg -l package-name-pattern —— 列出所有与模式相匹配的软件包。如果您不知道软件包的全名,您可以使用“*package-name-pattern*”。
  • aptitude —— 详细查看已安装或可用的软件包。与apt-get类似,aptitude可以通过命令行方式调用,但仅限于某些命令——最常见的有安装和卸载命令。由于aptitude比apt-get —— 了解更多信息,可以说它更适合用来进行安装和卸载。
  • apt-cache showpkg pkgs —— 显示软件包信息。
  • apt-cache dumpavail —— 打印可用软件包列表。
  • apt-cache show pkgs —— 显示软件包记录,类似于dpkg –print-avail。
  • apt-cache pkgnames —— 打印软件包列表中所有软件包的名称。
  • dpkg -S file —— 这个文件属于哪个已安装软件包。
  • dpkg -L package —— 列出软件包中的所有文件。
  • apt-file search filename —— 查找包含特定文件的软件包(不一定是已安装的),这些文件的文件名中含有指定的字符串。apt-file是一个独立的软件包。您必须 先使用apt-get install来安装它,然後运行apt-file update。如果apt-file search filename输出的内容太多,您可以尝试使用apt-file search filename | grep -w filename(只显示指定字符串作为完整的单词出现在其中的那些文件名)或者类似方法,例如:apt-file search filename | grep /bin/(只显示位于诸如/bin或/usr/bin这些文件夹中的文件,如果您要查找的是某个特定的执行文件的话,这样做是有帮助的)。

* apt-get autoclean——定期运行这个命令来清除那些已经卸载的软件包的.deb文件。通过这种方式,您可以释放大量的磁盘空间。如果您的需求十分迫切,可 以使用apt-get clean以释放更多空间。这个命令会将已安装软件包裹的.deb文件一并删除。大多数情况下您不会再用到这些.debs文件,因此如果您为磁盘空间不足 而感到焦头烂额,这个办法也许值得一试。

典型应用

我是个赛车发烧友,想装个赛车类游戏玩玩。有哪些赛车类游戏可供选择呢?

apt-cache search racing game

出来了一大堆结果。看看有没有更多关于torcs这个游戏的信息。

apt-cache show torcs

看上去不错。这个游戏是不是已经安装了?最新版本是多少?它属于哪一类软件,universe还是main?

apt-cache policy torcs

好吧,现在我要来安装它!

apt-get install torcs

在控制台下我应该调用什么命令来运行这个游戏呢?在这个例子中,直接用torcs就行了,但并不是每次都这么简单。我们可一通过查找哪些文件被安装 到了“/usr/bin”文件夹下来确定二进制文件名。对于游戏软件,这些二进制文件将被安装到“/usr/games”下面。对于系统管理工具相应的文 件夹是“/usr/sbin”。

dpkg -L torcs|grep /usr/games/

这个命令的前面一部分显示软件包“torcs”安装的所有文件(您自己试试看)。通过命令的第二部分,我们告诉系统只显示前一部分的输出结果中含有“/usr/games”的那些行。

这个游戏很酷哦。说不定还有其他赛道可玩的?

apt-cache search torcs

我的磁盘空间不够用了。我得把apt的缓存空间清空才行。

apt-get clean

哦不,老妈叫我把机器上的所有游戏都删掉。但是我想把配置文件保留下来,这样下次我想玩的时候只要重装一下就可以了。

apt-get remove torcs

如果我想连配置文件一块删除:

apt-get remove --purge torcs

 

额外的软件包

deborphan和debfoster工具可以找出已经安装在系统上的不会被用到的软件包。

提高命令行方式下的工作效率

您可以通过定义别名(alias)来提高这些命令的输入速度。例如,您可以在您的*~/.bashrc*文件中添加下列内容

alias acs='apt-cache search'
alias agu='sudo apt-get update'
alias agg='sudo apt-get upgrade'
alias agd='sudo apt-get dist-upgrade'
alias agi='sudo apt-get install'
alias agr='sudo apt-get remove'

或者使用前面介绍的aptitude命令,如“alias agi=’sudo aptitude install’”。

为apt-get设置http代理

可以通过三种方法为apt-get设置http代理

方法一

这是一种临时的手段,如果您仅仅是暂时需要通过http代理使用apt-get,您可以使用这种方式。

在使用apt-get之前,在终端中输入以下命令(根据您的实际情况替换yourproxyaddress和proxyport)。

export http_proxy=http://yourproxyaddress:proxyport

方法二

这种方法要用到/etc/apt/文件夹下的apt.conf文件。如果您希望apt-get(而不是其他应用程序)一直使用http代理,您可以使用这种方式。

注意: 某些情况下,系统安装过程中没有建立apt配置文件。下面的操作将视情况修改现有的配置文件或者新建配置文件。

sudo gedit /etc/apt/apt.conf

在您的apt.conf文件中加入下面这行(根据你的实际情况替换yourproxyaddress和proxyport)。

Acquire::http::Proxy "http://yourproxyaddress:proxyport";

保存apt.conf文件。

方法三

这种方法会在您的主目录下的.bashrc文件中添加两行。如果您希望apt-get和其他应用程序如wget等都使用http代理,您可以使用这种方式。

gedit ~/.bashrc

在您的.bashrc文件末尾添加如下内容(根据你的实际情况替换yourproxyaddress和proxyport)。

http_proxy=http://yourproxyaddress:proxyport
export http_proxy

保存文件。关闭当前终端,然後打开另一个终端。

使用apt-get update或者任何您想用的网络工具测试代理。我使用firestarter查看活动的网络连接。

如果您为了纠正错误而再次修改了配置文件,记得关闭终端并重新打开,否自新的设置不会生效。

Ubuntu软件安装和删除相关命令

Ubuntu软件安装和删除相关命令安装软件命令: 

apt-get install softname1 softname2 softname3……

卸载软件命令: apt-get remove softname1 softname2 softname3……

卸载并清除配置命令: apt-get remove --purge softname1

更新软件信息数据库命令: apt-get update

进行系统升级命令: apt-get upgrade

搜索软件包命令: apt-cache search softname1 softname2 softname3……

Deb软件包相关安装和卸载安装deb软件包命令: dpkg -i xxx.deb

删除软件包命令:  dpkg -r xxx.deb

连同配置文档一起删除命令: dpkg -r --purge xxx.deb

查看软件包信息命令: dpkg -info xxx.deb

查看文档拷贝详情命令: dpkg -L xxx.deb

查看系统中已安装软件包信息命令: dpkg -l

重新配置软件包命令:  dpkg-reconfigure xxx

基于Linux的虚拟主机搭建

很多工具,例如开源的VHCS,商业的Plesk功能虽然十分强大,但他们的主要服务对象是商业虚拟主机客户,和我们的集中管理模式不太一样。

最后我选用了Webmin的一个支持虚拟主机的模块virtual-host。因为我对Webmin比较了解,它在Linux管理上非常强大和稳定。

主要安装步骤如下:
1 安装webmin,地址http://ip:10000

2 进入webmin安装virtual-host模块,地址:http://ip:10000/virtual-host

3 服务器安装BIND 9,webmin中该模块路径也要有相应修改

4 按照帮助手册内容,
先重编译apache2 加上./configure --prefix=/usr/local/apache/ --enable-suexec

配置Apache
主要包括修改httpd等的路径
加上
NameVirtualHost ip

LoadModule suexec_module modules/mod_suexec.so

5 进入 http://ip:10000/virtual-host,按照提示,把一些不用的模块先删除,然后将该模块成功运行。

6 add new virtual-server,填入相应域名,帐号信息,点击确定。

根据提示可以看到linux系统帐号,apache conf配置,html主目录(home下)的生成,mysql帐号,数据库,包括ftp帐号,webmin帐号,等都依次被建好。

Ubuntu server下安装phpmyadmin

安装phpmyadmin命令:

sudo apt-get install phpmyadmin使用 http://localhost/phpmyadmin访问。
有可能出现的问题:
默认安装在 /usr/share/phpmyadmin
作个链接到 /var/www/ 目录下,命令为:sudo ln -s /usr/share/phpmyadmin/ /var/www/
再使用 http://localhost/phpmyadmin 即可以访问了。

将phpmyadmin的权限设置为 drwxr-xr-x(chmod )

给Ubuntu Server服务器版安装桌面(Gnome Desktop)环境

安装Server的过程和Alternate是基本一样的,但最后一步Alternate版是选择安装Ubuntu-desktop,Server版本就没得选了,你可以全不选。。。我选了个LAMP,呵呵。。。不需要的不选就是。。。

然后我还得说明一下,我只是总结我的情况,我也是第一次用server版本来安装desktop,也就只安装过一次,相当成功,安装后可以正常进入桌面, 和 desktop一样正常使用,这样DIY出来的Ubuntu优点就是开机后内存占用相当少,80兆内存左右。当然,开多个软件后内存占用有300多是很正 常的吧。还有就是这样安装的系统会比较干净,因为没有安装任何桌面应用软件,和desktop不一样,不会预装有常用软件,这样你可以要用什么软件,都得 自 己安装。

安装好ubuntu-7.10-server启动,启动进入后是没有桌面环境的,是黑乎乎的命令行模式。那装上桌面就是啦~

安装新软件,第一个问题就是软件源问题,要安装新的软件包,软件包从哪里来?我是从服务器镜像下载的。光盘源在命令行模式下不会设置。那基本思路就是设置软件源,连接网络,安装软件,ok,就三步,详细说一下吧:

第一步:设置软件源。我的机子同时安装了两个ubuntu,软件使用的sources.list直接复制过去就可以了,位置在 /etc/apt/sources.list,复制到server安装分区的相应文件夹下就可以了。如果没这环境就用wget下载某某服务器上的 sources.list,然后cp到/etc/apt/就是了,一样。

第二步:连接网络。sudo pppoeconf,我的是ASDL。其他连接方式我可不知道。。。

第三步:更新软件源,sudo apt-get update,然后安装你需要的软件就可以了。

具体要安装哪些软件呢?我说说装了哪些软件吧:
apt-get install x-window-system-core
apt-get install gnome-core

有桌面了,进去会发现窗口是没边框的。那安装metacity吧,运行一下metacity窗口就会有边框了,建议把metacity加入 Session,开机自启动。快速安装需要的软件,那就安装gnome-app-install吧,synaptic自然也少不了。还有就是中文是显示不 了的,都是网状的方框,那是因为没有显示中文的字体。那就要安装字体啦。。。

如果要图形登录界面安装 gdm, apt-get install gdm,你喜欢ubuntu studio的,那也装上吧:
sudo apt-get install ubuntustudio-theme ubuntustudio-icon-theme ubuntustudio-gdm-theme ubuntustudio-wallpapers usplash-theme-ubuntustudio,我是装了studio的,虽然我也不喜欢黑+蓝这样的搭配。。。

自动登录的要gdmsetup,apt-get install gdmsetup,然后就配置一下Login Window就可以了。如果想看看你DIY的成果,安装gnome-system-monitor吧,apt-get install gnome-system-monitor,我的内存占用就80多哦,是空闲时候的。其他的都都都不难了吧。。。

用Ubuntu Server版本安装的Desktop是很不错的,我Firefox浏览网页就很有感觉,很爽快,很可能是字体问题。我就只安装了一个雅黑字体,呵呵~

Linux服务器网络安全经验

关于分区

一个潜在的黑客如果要攻击你的Linux服务器,他首先就会尝试缓冲区溢出。在过去的几年中,以缓冲区溢出为类型的安全漏洞是最为常见的一种形式了。更为严重的是,缓冲区溢出漏洞占了远程网络攻击的绝大多数,这种攻击可以轻易使得一个匿名的Internet用户有机会获得一台主机的部分或全部的控制权!

为了防止此类攻击,我们从安装系统时就应该注意。如果用root分区纪录数据,如log文件和email,就可能因为拒绝服务产生大量日志或垃圾邮件,从而导致系统崩溃。所以建议为/var开辟单独的分区,用来存放日志和邮件,以避免root分区被溢出。最好为特殊的应用程序单独开一个分区,特别是可以产生大量日志的程序,还有建议为/home单独分一个区,这样他们就不能填满/分区了,从而就避免了部分针对Linux分区溢出的恶意攻击。

关于BIOS

记着要在BIOS设置中设定一个BIOS密码,不接收软盘启动。这样可以阻止不怀好意的人用专门的启动盘启动你的Linux系统,并避免别人更改BIOS设置,如更改软盘启动设置或不弹出密码框直接启动服务器等等。

关于口令

口令是系统中认证用户的主要手段,系统安装时默认的口令最小长度通常为5,但为保证口令不易被猜测攻击,可增加口令的最小长度,至少等于8。为此,需修改文件/etc/login.defs中参数PASS_MIN_LEN(口令最小长度)。同时应限制口令使用时间,保证定期更换口令,建议修改参数PASS_MIN_DAYS(口令使用时间)。

关于Ping

既然没有人能ping通你的机器并收到响应,你可以大大增强你的站点的安全性。你可以加下面的一行命令到/etc/rc.d/rc.local,以使每次启动后自动运行,这样就可以阻止你的系统响应任何从外部/内部来的ping请求。

echo 1 》 /proc/sys/net/ipv4/icmp_echo_ignore_all

关于Telnet

如果你希望用户用Telnet远程登录到你的服务器时不要显示操作系统和版本信息(可以避免有针对性的漏洞攻击),你应该改写/etc/inetd.conf中的一行象下面这样:

telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -h

加-h标志在最后使得telnet后台不要显示系统信息,而仅仅显示login。

关于特权账号

禁止所有默认的被操作系统本身启动的且不需要的帐号,当你第一次装上系统时就应该做此检查,Linux提供了各种帐号,你可能不需要,如果你不需要这个帐号,就移走它,你有的帐号越多,就越容易受到攻击。

为删除你系统上的用户,用下面的命令:userdel username

为删除你系统上的组用户帐号,用下面的命令:groupdel username

在终端上打入下面的命令删掉下面的特权用账号:

userdel adm

userdel lp

userdel sync

userdel shutdown

userdel halt

userdel mail

如果你不用sendmail服务器,就删除这几个帐号:

userdel news

userdel uucp

userdel operator

userdel games

如果你不用X windows 服务器,就删掉这个帐号。

userdel gopher

如果你不允许匿名FTP,就删掉这个用户帐号:

userdel ftp

关于su命令

如果你不想任何人能够su为root的话,你应该编辑/etc/pam.d/su文件,加下面几行:

auth sufficient /lib-

http://security.chinaitlab.com/pam_rootok-

.so debug

auth required /lib-

http://security.chinaitlab.com/pam_wheel-

.so group=isd

这意味着仅仅isd组的用户可以su作为root。如果你希望用户admin能su作为root.就运行下面的命令:

usermod -G10 admin

suid程序也是非常危险的,这些程序被普通用户以euid=0(即root)的身份执行,只能有少量程序被设置为suid。用这个命令列出系统的suid二进制程序:

suneagle# find / -perm -4000 -print

你可以用chmod -s去掉一些不需要程序的suid位。

关于账户注销

如果系统管理员在离开系统时忘了从root注销,系统应该能够自动从shell中注销。那么,你就需要设置一个特殊的 Linux 变量“tmout”,用以设定时间。 同样,如果用户离开机器时忘记了注销账户,则可能给系统安全带来隐患。你可以修改/etc/profile文件,保证账户在一段时间没有操作后,自动从系统注销。 编辑文件/etc/profile,在“histfilesize=”行的下一行增加如下一行:

tmout=600

则所有用户将在10分钟无操作后自动注销。注意:修改了该参数后,必须退出并重新登录root,更改才能生效。

关于系统文件

对于系统中的某些关键性文件如passwd、passwd.old、passwd._、shadow、shadown._、inetd.conf、services和lilo.conf等可修改其属性,防止意外修改和被普通用户查看。 如将inetd文件属性改为600:

# chmod 600 /etc/inetd.conf

这样就保证文件的属主为root,然后还可以将其设置为不能改变:

# chattr +i /etc/inetd.conf

这样,对该文件的任何改变都将被禁止。 你可能要问:那我自己不是也不能修改了?当然,我们可以设置成只有root重新设置复位标志后才能进行修改:

# chattr -i /etc/inetd.conf

关于用户资源

对你的系统上所有的用户设置资源限制可以防止DoS类型攻击,如最大进程数,内存数量等。例如,对所有用户的限制, 编辑/etchttp://security.chinaitlab.com/limits.con加入以下几行:

* hard core 0

* hard rss 5000

* hard nproc 20

你也必须编辑/etc/pam.d/login文件,检查这一行的存在:

session required /libhttp://security.chinaitlab.com/pam_limits.so

上面的命令禁止core files“core 0”,限制进程数为“nproc 50“,且限制内存使用为5M“rss 5000”。

关于NFS服务器

由于NFS服务器漏洞比较多,你一定要小心。如果要使用NFS网络文件系统服务,那么确保你的/etc/exports具有最严格的存取权限设置,不意味着不要使用任何通配符,不允许root写权限,mount成只读文件系统。你可以编辑文件/etc/exports并且加:

/dir/to/export host1.mydomain.com(ro,root_squash)

/dir/to/export host2.mydomain.com(ro,root_squash)

其中/dir/to/export 是你想输出的目录,host.mydomain.com是登录这个目录的机器名,ro意味着mount成只读系统,root_squash禁止root写入该目录。最后为了让上面的改变生效,还要运行/usr/sbin/exportfs -a

Ubuntu服务器版操作系统介绍

服务器版 -建立在众所周知稳定的 Debian 上, 它的强劲的服务器安装 — 具有浓厚的传统, 性能可靠和可以预见的变化。

集成安全平台

由于您的业务增长, 所以您的网络、大多数的应用程序需要重新部署到更多的服务器。 Ubuntu 服务器版提供了几种常见配置的支持, 简化了普通 Linux 服务器的部署过程。 它提供了一个良好的集成平台, 使您迅速和容易的部署新服务器,标准互联网服务: mail, web, DNS, 文件安服务 或 数据库管理。

Debian 传统是默认安全的。 Ubuntu 服务但安装完毕后没有开放任何端口仅仅包含了需要建立一个安全服务器的基本软件。

降低总体拥有成本和自动安装 LAMP

从安装好的 Ubuntu 服务器版大约花费 15 分钟, 您就可以有一个 LAMP (Linux, Apache, MySQL 和 PHP) 服务, 并开始运行。 这个特点, 只有 Ubuntu 服务器版, 在安装的时候被激活。

LAMP 的选项意味着您不需要安装和集成这四个 LAMP 组成部分, 一个过程可以处理和帮助需要安装和配置的人。 相反, 您将得到增强的安全性, 缩短时间去安装和减少风险, 所有的这些都有一个较低的成本。

消除更新个人工作站的成本

Ubuntu 服务器版包括了使用 LTSP (Linux Terminal Server Project) 的瘦客户机支持。 LTSP-5, 最新版本, 提供了简易安装, 方便维护。 所有的数据都存储在服务器上, 这将大大降低成本: 更新个人工作站, 并帮助其保证他们的安全。 Ubuntu 瘦客户端有如下支持:

简单管理:从一个系统上管理所有的用户。 安装新软件, 修改配置, 甚至在服务器上升级到一个新的版本, 所有的客户端都可以升级到最新。 并且为所有的客户端只有一个备份。

全自动安装和设置: 安装一个瘦客户机服务器和乱安装一个单一的桌面系统一样,非常容易,而一旦安装完毕, 新的客户端就可以在服务器上添加任何额外的管理。

通过资源共享,低的 CTO: 通用高性能的桌面工作站大部分时间都在空闲而支付了贵的价格。 使用高性能的服务器和低成本的瘦客户端, 你可以得到伟大的业绩和节省资金。 需要更高的业绩? 马上升级服务器,这样所有的客户端都将得到好处。

快速失败恢复: 如果一个客户端系统失败, 简单的交换一个新的就可以继续工作。 不需要配置, 并且所有的用户数据和设置都完好无损。

本地附加装置: 用户可以访问打印机, 相机, iPods, USB存储设备和其它直接连接到瘦客户端的设备。

支持的架构

Ubuntu 服务器版支持 x86, AMD64 和 UltraSPARC T1 架构。