Ubuntu防火墙ufw

ubuntu 9.10默认的是UFW防火墙,已经支持界面操作了。在命令行运行ufw命令就可以看到提示的一系列可进行的操作。

最简单的一个操作:

sudo ufw status可检查防火墙的状态,我的返回的是:不活动
sudo ufw version防火墙版本:ufw 0.29-4ubuntu1
Copyright 2008-2009 Canonical Ltd.

ubuntu 系统默认已安装ufw.

(以下内容引自:http://www.jmhdtv.com/post/198.html)
1.安装
sudo apt-get install ufw

2.启用
sudo ufw enable
sudo ufw default deny

运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常。

3.开启/禁用
sudo ufw allow|deny [service]

打开或关闭某个端口,例如:
sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口
sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口
sudo ufw allow 53 允许外部访问53端口(tcp/udp)
sudo ufw allow from 192.168.1.100 允许此IP访问所有的本机端口
sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53
sudo ufw deny smtp 禁止外部访问smtp服务
sudo ufw delete allow smtp 删除上面建立的某条规则

4.查看防火墙状态
sudo ufw status

一般用户,只需如下设置:
sudo apt-get install ufw
sudo ufw enable
sudo ufw default deny

以上三条命令已经足够安全了,如果你需要开放某些服务,再使用sudo ufw allow开启。

开启/关闭防火墙 (默认设置是’disable’)
sudo ufw enable|disable

转换日志状态
sudo ufw logging on|off

设置默认策略 (比如 “mostly open” vs “mostly closed”)

sudo ufw default allow|deny

许 可或者屏蔽端口 (可以在“status” 中查看到服务列表)。可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。 ‘allow’ 参数将把条目加入 /etc/ufw/maps ,而 ‘deny’ 则相反。基本语法如下:
sudo ufw allow|deny [service]

显示防火墙和端口的侦听状态,参见 /var/lib/ufw/maps。括号中的数字将不会被显示出来。
sudo ufw status

UFW 使用范例:

允许 53 端口
$ sudo ufw allow 53

禁用 53 端口
$ sudo ufw delete allow 53

允许 80 端口
$ sudo ufw allow 80/tcp

禁用 80 端口
$ sudo ufw delete allow 80/tcp

允许 smtp 端口
$ sudo ufw allow smtp

删除 smtp 端口的许可
$ sudo ufw delete allow smtp

允许某特定 IP
$ sudo ufw allow from 192.168.254.254

删除上面的规则
$ sudo ufw delete allow from 192.168.254.254

linux 2.4内核以后提供了一个非常优秀的防火墙工具:netfilter/iptables,他免费且功能强大,可以对流入、流出的信息进行细化控制,它可以 实现防火墙、NAT(网络地址翻译)和数据包的分割等功能。netfilter工作在内核内部,而iptables则是让用户定义规则集的表结构。

但是iptables的规则稍微有些“复杂”,因此ubuntu提供了ufw这个设定工具,以简化iptables的某些设定,其后台仍然是iptables。ufw 即uncomplicated firewall的简称,一些复杂的设定还是要去iptables。

ufw相关的文件和文件夹有:

/etc /ufw/:里面是一些ufw的环境设定文件,如 before.rules、after.rules、sysctl.conf、ufw.conf,及 for ip6 的 before6.rule 及 after6.rules。这些文件一般按照默认的设置进行就ok。

若开启ufw之 后,/etc/ufw/sysctl.conf会覆盖默认的/etc/sysctl.conf文件,若你原来的/etc/sysctl.conf做了修 改,启动ufw后,若/etc/ufw/sysctl.conf中有新赋值,则会覆盖/etc/sysctl.conf的,否则还以/etc /sysctl.conf为准。当然你可以通过修改/etc/default/ufw中的“IPT_SYSCTL=”条目来设置使用哪个 sysctrl.conf.

/var/lib/ufw/user.rules 这个文件中是我们设置的一些防火墙规则,打开大概就能看明白,有时我们可以直接修改这个文件,不用使用命令来设定。修改后记得ufw reload重启ufw使得新规则生效。

下面是ufw命令行的一些示例:

ufw enable/disable:打开/关闭ufw
ufw status:查看已经定义的ufw规则
ufw default allow/deny:外来访问默认允许/拒绝
ufw allow/deny 20:允许/拒绝 访问20端口,20后可跟/tcp或/udp,表示tcp或udp封包。
ufw allow/deny servicename:ufw从/etc/services中找到对应service的端口,进行过滤。
ufw allow proto tcp from 10.0.1.0/10 to 本机ip port 25:允许自10.0.1.0/10的tcp封包访问本机的25端口。
ufw delete allow/deny 20:删除以前定义的"允许/拒绝访问20端口"的规则

UFW防火墙是一个主机端的iptables类防火墙配置工具。这个工具的目的是提供给用户一个可以轻松驾驭的界面,就像包集成和动态检测开放的端口一样。

在Ubuntu中安装UFW:

目前这个包存在于Ubuntu 8.04的库中。

sudo apt-get install ufw

上面这行命令将把软件安装到您系统中。

开启/关闭防火墙 (默认设置是’disable’)

# ufw enable|disable

转换日志状态

# ufw logging on|off

设置默认策略 (比如 “mostly open” vs “mostly closed”)

# ufw default allow|deny

许 可或者屏蔽某些入埠的包 (可以在“status” 中查看到服务列表[见后文])。可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。 ‘allow’ 参数将把条目加入 /etc/ufw/maps ,而 ‘deny’ 则相反。基本语法如下:

# ufw allow|deny [service]

显示防火墙和端口的侦听状态,参见 /var/lib/ufw/maps。括号中的数字将不会被显示出来。

# ufw status

[注意:上文中虽然没有使用 sudo,但是命令提示符号都是“#”。所以……你知道啥意思了哈。原文如此。──译者注]

UFW 使用范例:

允许 53 端口

$ sudo ufw allow 53

禁用 53 端口

$ sudo ufw delete allow 53

允许 80 端口

$ sudo ufw allow 80/tcp

禁用 80 端口

$ sudo ufw delete allow 80/tcp

允许 smtp 端口

$ sudo ufw allow smtp

删除 smtp 端口的许可

$ sudo ufw delete allow smtp

允许某特定 IP

$ sudo ufw allow from 192.168.254.254

删除上面的规则

$ sudo ufw delete allow from 192.168.254.254

Ubuntu下安装Memcache

安装服务器
sudo apt-get install memcached
$ memcached -d -m 50 -p 11211 -u root

参数说明 -m 指定使用多少兆的缓存空间;-p 指定要监听的端口; -u 指定以哪个用户来运行
 

安装php 模块

sudo apt-get install php5-memcache
 

编辑配置文件
$ sudo vim /etc/php5/conf.d/memcache.ini
; uncomment the next line to enable the module

extension=memcache.so
 

[memcache]
memcache.dbpath="/var/lib/memcache"
memcache.maxreclevel=0
memcache.maxfiles=0
memcache.archivememlim=0
memcache.maxfilesize=0

memcache.maxratio=0
 

在apache中使用 memcache 来作 session 存储,用例子测试一下:

 

session.save_handler = memcache
session.save_path = "tcp://127.0.0.1:11211"

使用多个 memcached server 时用逗号","隔开,并且和 Memcache::addServer() 文档中说明的一样,可以带额外的参数"persistent"、"weight"、"timeout"、"retry_interval" 等等,类似这样的:"tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2" 。

 
<?php
session_start();
$_SESSION["UserID"]=123;
echo session_id();
?>

用 sessionid 去 memcached 里查询一下:

 
<?php
$memcache = memcache_connect('localhost', 11211);
var_dump($memcache->get('19216821213cxycedec65b0883238c278eeb573e077'));
?>

用 memcache 来存储 session 在读写速度上会比 files 时快很多,而且在多个服务器需要共用 session 时会比较方便,将这些服务器都配置成使用同一组 memcached 服务器就可以,减少了额外的工作量。缺点是 session 数据都保存在 memory 中,持久化方面有所欠缺,但对 session 数据来说也不是很大的问题。

激活Ubuntu的root账号,使用Winscp提高管理效率

Ubuntu是目前大家用的比较多的一种Linux发行版,其root账号的默认禁用是大大提高了系统的安全性,有效的降低了管理员误操作的概率。

 

我的Winscp情结
我原来从CentOS系统用起,已经习惯了直接用root登录,通过在Windows下的Winscp软件来管理配置系统。使用Winscp编辑Linux下的文件(尤其是配置文件),就像在资源管理器中修改本地文件一样,方便和高效。

 

但Ubuntu的root账号默认被禁用后,就有个让我这个不太习惯“sudo”命令的固执者,有些使用习惯上的别扭了,先不说很多命令总是忘记加 sudo,最重要的是我习惯了使用Winscp编辑Linux配置文件,但很多Linux下的配置文件都是root用户权限,用普通用户通过Winscp 登录后,编辑文件总是遇到权限不够的错误提示。

 

这个原因一直让我无法接受使用Ubuntu,但目前Linux市场中Ubuntu的占有率越来越高,身边的朋友也大多成为了她的Fans。时代的要求,我必须“与时俱进”啊~

 

下面通过激活/禁用Ubuntu的root账号,让我们也可以灵活的使用root账号通过Winscp来编辑管理Ubuntu。

 
 

激活/禁用Ubuntu的root账号方法:

  1. 激活root账号:
    其实就是为root账号加上密码而已:
    用安装时设置的账号登录控制台后执行:
    #sudo passwd root
    输入两边root密码即可激活root账号的登录啦!~
  2. 禁用root账号:
    #sudo passwd -l root
 

高效的Winscp
瞧~Ubuntu的root账号也是可以灵活控制使用的哦。呵呵,快快开始使用Winscp编辑配置Ubuntu吧,我相信我推荐的这个方法,你一定会爱上她的。嘻嘻
BTW:Winscp若你觉得只能在Windows下使用(这是她的不足),你也可以用Filezilla,她是在Windows和Linux都有相应版本的哦(但个人觉得没有winscp在编辑文件时好用)。个人喜好,请随意选用。

解决ubuntu下mysql不能远程连接数据库的问题

Ubuntu10.04上自带的MySQL,执行了
root@ubuntu:~#sudo apt-get install mysql
安装完mysql-server

 

启动mysql
root@ubuntu:~#/etc/init.d/mysql start

 

本地可以连接进入数据库。
root@ubuntu:~#mysql -uroot -p

 

设置了远程访问权限:
mysql> grant all PRIVILEGES on *.* to admin@’%’ identified by ‘123456′;
Query OK, 0 rows affected (0.04 sec)

 

mysql> use information_schema
mysql> select * from user_privileges;
查询到有下面的结果:'admin’@'%',说明mysql已经授权远程连接。

 

在windows下访问Ubuntu的数据库,连接不上,但是Ubuntu上安装的apache可以访问。
用iptalbes添加端口3306后也无法访问。
root@ubuntu:~# iptables -A INPUT -p tcp –dport 3306 -j ACCEPT

 

Ubuntu上查看Mysql网络连接:
root@ubuntu:~# netstat -an |grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
本地端口也在监听

 

root@ubuntu:~# ufw status
Firewall not loaded
本地防火墙未打开

 
 

后来在网上找到一个解决办法:
查看/etc/mysql/my.cnf找到bind-address才发现配置的是 127.0.0.1(bind-address=127.0.0.1),直接改为bind-address=192.168.0.xxx(本机ip),然 后再查看3306端口打开了,ok,可以正常连接了

设置ubuntu登录窗口的分辨率

sudo gedit /etc/X11/xorg.conf


Section "Screen"
 Identifier "Default Screen"
 Monitor  "Configured Monitor"
 Device  "Configured Video Device"
 Defaultdepth 24
 SubSection "Display"
  Depth 24
  Virtual 1024 768
  Modes  "1024x768@85"
 EndSubSection
EndSection

记得修改前要备份。

给Ubuntu的KDevelop安装中文包

Ubuntu 安装了KDevelop后发现是英文界面,许多专业术语,四处查找,将安装中文包的方法叙述如下。


1、下载中文包,在该网页上显示了目前的本地化进度


2. 执行:msgfmt kdevelop.po -o kdevelop.mo


3. sudo cp kdevelop.mo /usr/share/locale-langpack/zh_CN/LC_MESSAGES/


4. 启动kdevelop


注意:
msgfmt在有的Ubuntu上可能没有安装,要是搜索安装msgfmt这个软件是找不到的,其实应该安装的是下列软件


sudo aptitude install gettext


就ok了

Ubuntu和Windows屏幕偏移问题"完美"解决方案

Windows下借助软件修正屏幕位置


FX5200显卡、PHLIPS 107T显示器,装好8.04后分辨率1024×768@85很正常,但就是屏幕左移半厘米左右,装好驱动倒是可以解决屏幕偏移问题,3D效果也可以用,但无奈受限驱动在1024×768的分辨率下刷新率只有56-60,显卡是自动检测的,手动选定时候却没有PHLIP 107T的型号,可以用107S和109S的设置,但刷新率最高也只有75,实际情况却跟60的刷新率没多大差别,还不如不要驱动呢,毕竟3D效果对于大多人来说只是个花瓶而已。
如此google了不知多少次,也请教了不少人,可就是解决不了这个问题,无奈之下只有用显示器OSD来调节,这样Ubuntu虽然可以了Windows系统下当然就向右钻了进去,也许是咱的显卡和显示器太烂吧,呵呵,想必同病相怜者也不会少 ^_^


既然Ubuntu下不行,也只有退而来鼓捣Windows了,还好老天不负有心人,终于给我找到一款调节屏幕的软件→→→PowerStrip,其最新版本是PowerStrip v3.78 Build 616

软件虽小功能却很强,可以用来显卡软超频,调节屏幕偏移只是其一个附带功能而已,如此却有牛刀杀鸡之嫌,不过只要解决问题就行了,其多国语言版的装好也不过2M左右,其实此软件只需PStrip.exe和PSdesk.dll就能运行,不过最好是用安装版,毕竟要读驱动的东西,也别太追求绿色喽


安装运行后点右键→显示器设定→设定→进阶时序选项→位置和尺寸→效果看附件,哈哈,不用教了吧
按自己需求调节好以后点右键→选项→偏好设定
在选项里边把Windows启动时自动运行和启动时恢复预定值打上勾
在模块里边把出显示器控制除外的取消勾选可以稍微提高一点启动速度
如此以后只要启动Windows软件就会自动运行并恢复你设定的值,运行软件调节显示器偏移以后也可以点退出,当然设置仍然保存的,还有个小问题就是这个软件启动速度较慢,因为其功能强大要读好多东西,不过这已经很不错了。




呵呵,如此解决屏幕偏移问题虽然不算完美的方法,但最起码简便易行,为Ubuntu屏幕偏移问题花费了好多时间累的不行可还是竹篮打水一场空,还好Windows下有这好的软件,这样也不失为一个可行的方法。

Ubuntu8.04初体验

由于学习QT的需要,最近忙着装LINUX,刚开始从硬盘装了Red hat enterprise server5,恩,发觉这个系统不行,缺点是由于是服务器版本的,在硬件的需求上会比较高,所以会比其他的个人用户桌面或者工作站版本的要卡一点。最重要的是不能更新。还有上面自带的QT和KDEVELOP版本比较低,QT是3.3的,也就是说我还要去给它安装新的软件,很费力费时。并且,默认的内核不支持NTFS文件系统的访问,要访问NTFS还要麻烦一些时间,所以我最后放弃了。


然后装了Fedora9,这款今年5月出来的个人用户操作系统是比较不错的,速度很快,界面也很友好,自带的QT和KDEVELOP版本都是很新的,我不用自己去安装新的,而且官方支持软件更新,并且可以很容易地访问NTFS文件系统(已安装了NTFS-3G)。唯一的问题是:1.对中文的支持不太好,即使安装了中文的编码和输入法,在显示器上也会比较难看,哎,很麻烦,我最讨厌麻烦!2.会出现字体模糊的情况。不知道是系统的问题还是字体的问题还是系统对硬件兼容的问题,打开KDEVELOP和QT都会出现字体模糊的显示,比较严重,花了两天的时候海搜解决办法无果,只得放弃。


然后装了Ubuntu的desk-top版本,看起来真的不错,暂时没发现什么大的、严重的缺点。


恩,然后花了点时间去刻了张盘,3.7G的DVD Ubuntu8.04的。


它自持免费更新,而且很重要的电子科技大学有免费的更新远源,西华这边下载是不算校园网上网流量的


界面也比较不错,我刚安装好后就更新了一大堆软件,而且管它三七二十一把内核全部都更新了,我晕...最后只用了最新的21。


电子科大UBUNTU更新源: http://ubuntu.uestc.edu.cn/

Ubuntu 8.04 Hardy Heron

deb http://ubuntu.uestc.edu.cn/ubuntu/ hardy main restricted universe multiverse
deb http://ubuntu.uestc.edu.cn/ubuntu/ hardy-backports main restricted universe multiverse
deb http://ubuntu.uestc.edu.cn/ubuntu/ hardy-proposed main restricted universe multiverse
deb http://ubuntu.uestc.edu.cn/ubuntu/ hardy-security main restricted universe multiverse
deb http://ubuntu.uestc.edu.cn/ubuntu/ hardy-updates main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ hardy main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ hardy-backports main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ hardy-proposed main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ hardy-security main restricted universe multiverse
deb-src http://ubuntu.uestc.edu.cn/ubuntu/ hardy-updates main restricted universe multiverse


ubuntu更新源地址在系统上的存储文件位置是: /etc/apt/sources.list

可以使用以下命令来完成:


打开终端,
sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup         "备份原文件"
sudo gedit /etc/apt/sources.list
打开gedit后,将源地址粘贴过去,保存.
然后打开新立得,点更新(reload),就ok了



另外在我把KDE环境的更新内容全部更新之后(总共有700多MB,下了几分钟),进入KDE环境后再转入GNOME就会发现屏幕的分辨率变成600X420(好象是这个数字,没太注意)不能调了。我极puzzlled,在绝望准备把KDE环境软件全部删除之际,在网上找到了解决办法。或许这是ubuntu的一个小BUG。


1. /etc/usplash.conf
设置成你想要的就是了,也可以卸掉它,有时给它当住了,都不知道系统在做什么。

2. /etc/X11/xorg.conf
修改上面的配置文件里面屏幕的分辨率,我是重新启动系统之后就OK了。




另外一个重要的问题忘了说了,就是在刚开始用的时候总是出现了死机情况(屏幕定形,键盘鼠标不能用,只能直接按reset),后来升级了一下内核,问题没有再出现了,也不知道是什么原因,可能是显卡的驱动不兼容,我的是ATI X550,官方有相应的在LINUX下的驱动程序,并且在硬件驱动里面应该启用ATI图形加速选项。
驱动的安装方法是:
sudo ./ati-driver-installer-8-4-x86.x86_64.run