Posts Tagged ‘ linux

CentOS 5/6 快速安裝 VPN Server (PPTP)

「VPN」是一種常用於中、大型企業或團體與團體間的私人網路的通訊方法。藉由 VPN 所建立的加密通道,可以讓你從外部存取公司內部的資源,或透過連線到 VPN 的 Server 當跳板,去存取被限制的外部資源 (俗稱「翻牆」)。

在使用 VPN 之前,你得先有一台提供服務的 VPN Server,現在滿多人會去租用國外的 VPS 當 Server,要架站兼翻牆,Linode 是不錯的選擇。

以下把握幾個重點即可快速完成 Linux 的 PPTP 的 VPN Server 架設:

  • PPP - 點對點協定 (Point-to-Point Protocol)
  • PPTP - 點對點通道協定 (Point-to-Point Tunneling Protocol)
  • iptables - 設定封包轉發規則

安裝步驟

1. 判斷 ppp 是否可用:

$ cat /dev/ppp
cat: /dev/ppp: No such device or address

如果出現跟上面一樣的訊息「No such device or address」,那不用擔心,這表示 ppp 是可用的,可以正常架設 pptp。

如果出現的是「Permission denied」,表示 ppp 是關閉的,下面的步驟就可以不用再看了。
Read more

如何解決 yum 安裝 glibc-headers 失敗的問題

最近我用 yum 在安裝套件時,突然出現這些錯誤訊息:

---> Package glibc-headers.x86_64 0:2.12-1.107.el6 will be installed
--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.12-1.107.el6.x86_64
--> Processing Dependency: kernel-headers for package: glibc-headers-2.12-1.107.el6.x86_64
--> Finished Dependency Resolution
Error: Package: glibc-headers-2.12-1.107.el6.x86_64 (base)
           Requires: kernel-headers >= 2.2.1
Error: Package: glibc-headers-2.12-1.107.el6.x86_64 (base)
           Requires: kernel-headers
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

錯誤訊息有提到跟 "kernel" 有關!!

原來是我當初為了不讓 yum 自動更新 Kernel,所以我在 "/etc/yum.conf" 加了這一行:

exclude=kernel*

把這一行刪除就好了。之後如果遇到有關 Kernel 的失敗狀況,應該都是這個問題。

用 Fail2Ban 防範暴力破解 (SSH、vsftp、dovecot、sendmail)

Fail2Ban 可以用來防護 Linux Server 上的 SSH、vsftp、dovecot...等服務免於遭駭客使用暴力密碼入侵。我以前曾寫過即時封鎖想要入侵 SSH 的程式,不過 Fail2Ban 厲害多了,也完全可以取代我寫的程式。

安裝 Fail2Ban

安裝前可以先用下列指令來查看可安裝的版本:

yum info fail2ban

像我的系統 (CentOS 5.x) 查出來有兩個版本: 0.8.14 與 0.6.0,來自不同的套件庫,但預設卻安裝 0.6.0,所以我必須要指定安裝的版本為 0.8.14,以下的說明也是針對 0.8.*

安裝 Fail2Ban:

yum install fail2ban

yum install fail2ban-版本

啟動 Fail2Ban:

service fail2ban start
chkconfig fail2ban on

Read more

解決無法讀取 mcrypt 模組的問題

明明已經用 yum 安裝 php-mcrypt 了,在登入 phpMyAdmin 時,卻出現了錯誤訊息:

無法讀取 mcrypt 模組, 請檢查 PHP 設定

執行 php -v ,也出現:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/module.so' - /usr/lib64/php/modules/module.so: cannot open shared object file: No such file or directory in Unknown on line 0
; Enable mcrypt extension module

依照錯誤訊息,到 /usr/lib64/php/modules/ 查看,確實沒有「module.so」,倒是有一個 「mcrypt.so」。
Read more

CentOS 安裝 VMware Workstation / VMware Player

下載網址

下載回來的,是一個副檔名為「.bundle」的檔案。

安裝 (以 VMware Workstation 為例)

你必須先登入 GNOME 或 KDE 桌面來進行安裝。
Read more

CentOS 5/6 安裝 GNOME 與 KDE 桌面環境

最近開始接觸 LinodeDigitalOcean 這兩家的 VPS,裡面提供的 Linux 系統都是採「最小安裝」,於是我就想試試看是否能安裝 GNOME 桌面,再以 xrdp 連接遠端桌面

groupinstall

yum 本身就提供 groupinstall 的方式來安裝套件組,先以下列指令查看有哪些套件組:

yum grouplist | more

CentOS 5.x 與 6.x 套件組的名稱不太一樣,例如桌面環境套件:

CentOS 5.x:

  • GNOME: GNOME Desktop Environment
  • KDE: KDE (K Desktop Environment)

CentOS 6.x:

  • GNOME: Desktop
  • KDE: KDE Desktop

以下的步驟是以 CentOS 6.x 來做安裝,如果你是用 CentOS 5.x,請自行替換這兩個套件組的名稱。

Read more

安裝 xrdp v0.6.0 (原始檔)

之前有介紹過 "Linux 上的遠端桌面程式: xrdp" 了,2012 年底,xrdp 已經改版到了 v0.6.0。xrdp 自 v0.5.0 之後,安裝與啟動的方式也有點不一樣。

安裝步驟

1. 系統要有程式編譯器:

yum install gcc pam-devel openssl-devel autoconf automake libtool

2. 到 http://xrdp.sf.net 下載 xrdp 的原始檔並安裝:

cd /usr/local/src
wget http://downloads.sourceforge.net/project/xrdp/xrdp/0.6.0/xrdp-v0.6.0.tar.gz
tar -xzvf xrdp-v0.6.0.tar.gz
cd xrdp-v0.6.0
./bootstrap
./configure
make
make install

3. 編輯 /etc/rc.d/rc.local,加入:

/etc/xrdp/xrdp.sh start

啟動 xrdp

啟動 xrdp 指令:

/etc/xrdp/xrdp.sh start

設定與登入

設定與登入的方式與之前的教學一樣,請自行參考。

錯誤處理

如果在執行 "./configure" 時出現下列兩個錯誤訊息之一:

  • please install libx11-dev or libX11-devel
  • please install libx11-dev and libxfixes-dev or libXfixes-devel

表示系統還沒有 X11 環境,就照著指示安裝看看:

yum install libX11-devel libXfixes-devel

成功安裝 xrdp 後,你再看看需不需要安裝完整的 GNOME 或 KDE 桌面

參考網頁

  1. CentOS 6.x 安裝 xrdp (yum)
  2. Linux 上的遠端桌面程式: xrdp
  3. 在 CentOS 安裝桌面環境

CentOS 安裝 vsftpd FTP Server

為什麼這次要安裝 vsftpd,而不安裝 proftpd 呢? 其實只有一個原因,就是 vsftpd 直接支援 UTF8,並且會自動轉換為 Client 端 FTP 軟體的語系。

1. 安裝 vsftpd:

yum -y install vsftpd
touch /etc/vsftpd/chroot_list
chkconfig vsftpd on

2. 安裝完後讓防火牆可以通過 21 Port:

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
service iptables save

3. 編輯 "/etc/vsftpd/vsftpd.conf",找到:

anonymous_enable=YES

將 YES 改成 NO。
如要限制用戶只能在自己的家目錄,則在檔案加入:

# 限制用戶只能在家目錄 (/etc/vsftpd/chroot_list 的用戶可不受限制)
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

如果沒有 /etc/vsftpd/chroot_list,你仍須建立這個空白檔案,否則 ftp 會連不上。

如要 ftp 的檔案列表可以看到跟 Server 上同樣的時間,請在檔案加入:

# 使用本地時區
use_localtime=YES

4. 啟動 vsftpd:

service vsftpd start

安裝磁碟陣列卡 HighPoint RocketRaid 620 於 CentOS 5.x

主機環境

下載 Driver

下載網址: http://www.highpoint-tech.com/Taiwan/series_rr600tw.htm

PS. HighPoint 這公司不知怎麼了,現在網站上很多網址都連不到頁面!!虧我還買不少他們的 RAID 卡,真教人生氣!!
Read more

rpm 用法整理

* 安裝套件

rpm -ivh 套件名稱

* 強制安裝套件

rpm -ivh --force --nodeps 套件名稱

* 昇級套件

rpm -Uvh 套件名稱

* 列出所有已安裝的套件

rpm -qa

Read more

return top