星期五, 9月 30, 2016

vsftpd @CentOS 7.2

Vsftpd - 一個歷久不衰的老牌FTP 軟體,原本以為可以輕輕鬆鬆地架設起來,沒想到 真沒想到限制使用者目錄那搞了許久。(苦笑)
只要我限制使用者只能在家目錄的時候,登入就會出現refusing to run with writable root inside chroot(),解除就正常,後來爬了文一下才知道。(參考下方連結網站說明)

這次沒意外的也是在CentOS7.2的平台上運作(笑)

1.安裝vsftp
yum install vsftpd
2.設定vsftp
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to  FTP service.
user_config_dir=/etc/vsftpd/userconf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
chroot_local_user=YES
allow_writeable_chroot=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=NO
tcp_wrappers=YES
 3.啟動服務
systemctl start vsftpd
systemctl enable vsftpd
4.設定防火牆
firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --permanent --add-service=ftp
firewall-cmd --reload
5.設定selinux (或是停用)
vi /etc/selinux/config
 SELINUX=disabled
或是
setsebool -P allow_ftpd_full_access 1
setsebool -P ftp_home_dir 1
6.限制速度
mkdir -p /etc/vsftpd/userconf
vi /etc/vsftpd/userconf/user
local_max_rate=100000
7.進階設置,限制N次錯誤鎖定M秒
vi /etc/pam.d/vsftpd

auth required pam_tally2.so deny=N unlock_time=M



Reference
Install vsftpd for CentOS 7
[CentOS 7] 傳輸檔案的好伙伴,老當益壯的 FTP 伺服器 - vsFTPd
vsftpd解決方案 : refusing to run with writable root inside chroot()

星期四, 9月 22, 2016

Disable Cipher Block Chaining (CBC) Mode Ciphers and Weak MAC Algorithms in SSH

話說今天使用OpenVAS做弱點掃描的時候,發現弱點
SSH Weak Encryption Algorithms Supported

Vulnerability Detection Result
The following weak client-to-server encryption algorithms are supported by the remote serv↵
ice:

aes128-cbc
arcfour256
cast128-cbc
aes192-cbc
3des-cbc
arcfour128
rijndael-cbc@lysator.liu.se
aes256-cbc
arcfour
blowfish-cbc

The following weak server-to-client encryption algorithms are supported by the remote serv↵
ice:

aes128-cbc
arcfour256
cast128-cbc
aes192-cbc
3des-cbc
arcfour128
rijndael-cbc@lysator.liu.se
aes256-cbc
arcfour
blowfish-cbc
稍微爬了一下,發現解決方法也很簡單,打開SSH加入以下內容
vi /etc/ssh/sshd_config

Ciphers aes256-ctr,aes192-ctr,aes128-ctr
MACs hmac-sha1
重新啟動服務
systemctl restart sshd
打完收工

Reference

How to harden SSH on CentOS 6.5

FAQ: How do I disable Cipher Block Chaining (CBC) Mode Ciphers and Weak MAC Algorithms in SSH in IBM PureData System for Operational Analytics

自己的Yum Server 自己架 (CentOS 7)

突然有種自己的文章一直在歪樓的感覺 XD

因為工作需要,使用的設備也一一更新到CentOS 7.2之後,發現每台機器都要連到網路上去做更新實在是非常浪費頻寬且不便於管理,於是便興起了自己架設Yum Server的念頭。
整個過程可以說是非常的簡單,沒有什麼特別複雜的部份,稍微紀錄一下這幾個簡單的步驟。

一、伺服器端
1.安裝CentOS 7
這部份選擇預設的最小安裝即可。
空間的部份,我一開始是劃分30GB,但沒想到光是CentOS 7就佔了27GB,這部份就依個人需求調整吧。
2.安裝必要的套件
yum install httpd yum-arch createrepo  -y
如果找不到yum-arch 可以透過下列連結下載
yum install wget -y
wget ftp://rpmfind.net/linux/epel/6/ppc64/yum-arch-2.2.2-9.el6.noarch.rpm
rpm -ivh yum-arch-2.2.2-9.el6.noarch.rpm
 3.準備好要存放檔案的資料夾
mkdir -p /var/www/html/yum/centos/7/os/x86_64
mkdir -p /var/www/html/yum/centos/7/updates/x86_64
mkdir -p /var/www/html/yum/centos/7/extras/x86_64
 4.同步網路上的來源 (可以選擇使用mirrordir或是rsync)
由於看到有鄉民說他使用mirrordir有同步上的問題,所以我就直接使用rysnc(沒有實際測試)
其中同步的來源請自行挑選


rsync -aqzH --delete centos.cs.nctu.edu.tw::CentOS/7.2.1511/os/x86_64 /var/www/html/yum/centos/7/os

rsync -aqzH --delete centos.cs.nctu.edu.tw::CentOS/7.2.1511/updates/x86_64 /var/www/html/yum/centos/7/updates

rsync -aqzH --delete centos.cs.nctu.edu.tw::CentOS/7.2.1511/extras/x86_64 /var/www/html/yum/centos/7/extras
5.yum arch 分析下載好的RPM套件
yum-arch /var/www/html/yum/centos/7/os/x86_64
yum-arch /var/www/html/yum/centos/7/updates/x86_64
yum-arch /var/www/html/yum/centos/7/extras/x86_64
 6.產生XML Metadata
createrepo /var/www/html/yum/centos/7/os/x86_64
createrepo /var/www/html/yum/centos/7/updates/x86_64
createrepo /var/www/html/yum/centos/7/extras/x86_64
 7.啟用網站服務,並在防火牆中允許80 PORT
chkconfig httpd on
systemctl start httpd
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --reload
8.把上述4 ~ 6的步驟寫成sh 並排程自動更新

 二、使用端
1.修改Client端的更新來源
vi /etc/yum.repo/CentOS-Base.repo
把原本的mirror list 跟baseurl 註解 加入伺服器的來源,請把ip自行替
[base]
baseurl=http://192.168.1.168/yum/centos/$releasever/os/$basearch/
gpgkey=http://192.168.1.168/yum/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-7

[updates]
baseurl=http://192.168.1.168/yum/centos/$releasever/updates/$basearch/
gpgkey=http://192.168.1.168/yum/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-7

[extras]
baseurl=http://192.168.1.168/yum/centos/$releasever/extras/$basearch/
gpgkey=http://192.168.1.168/yum/centos/$releasever/os/$basearch/RPM-GPG-KEY-CentOS-7

Reference
自建 YUM Server (CentOS 6.4)
Yum Server For Centos 7
CentOS Linux 6.8

星期三, 8月 24, 2016

ezgo 初體驗 - samba

因為朋友問我說,他的SAMBA設定好之後不能使用。
當下連線過去檢察SAMBA設定,也都沒有問題,於是我便自行依照他的環境安裝來測試一下。

朋友使用的OS是 ezgo 12 。
ezgo的安裝的過程,可以用行雲流水來形容,真的是可以說是第一次安裝就上手。

裝好系統之後,軟體中心也可以非常簡單地找到要安裝的套件來安裝。
安裝好SAMBA之後,快速的設定一下。
接著隨便找一台電腦來測試,在存取資料夾的時候卻一直出現沒有權限。
於是開始懷疑自己的設定檔是否有錯誤,但是 SAMBA 應該也是 那種 第一次用就上手XD。

接下來的日子我GOOGLE了一堆相關文件,期間也照了許多鄉民的設定 以及討論的東西來測試。
中間我也一度以為 我搞壞掉了,又把系統重新安裝一次來測試。

但最後的結果都是一樣的,就在我心灰意冷,即將放棄的時候。
突然靈光一閃,該不會是套件的問題吧
於是我把套件更新
# apt-get upgrade

捷克,真是太神奇了,一切都功能都完好如初。(灑花)

給可能會遇到類似問題的朋友。


星期一, 6月 27, 2016

Dell OpenManage (OMSA) on XenServer 7

XenServer 7 釋出的消息真的是讓人非常興奮

抱著嘗鮮的心態,立馬下載

另外值得慶賀的是,XenServer 終於從CENTOS5 升級到 CENTOS 7了 (灑花)

[安裝Dell Openmanage]
還沒來的及體驗新的功能,倒是花了不少時間把Dell Openmanage (OMSA) 安裝起來
大致上跟之前的安裝方式類似,不過有一些步驟有一些些的差異 (還好有善心的鄉民分享)

1.加入Dell OpenManage Repository安裝來源
wget -q -O - http://linux.dell.com/repo/hardware/DSU_16.06.00/bootstrap.cgi | bash

這部分我有測試使用16.06安裝,但似乎會有問題 ,還在測試中(暫時先用16.05)
實驗過後可以直接使用16.06來安裝

2.編輯 CentOS-Base.repo
vi /etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
 把[base] 部分的 mirrorlist 跟baseurl註解,手動加入來
[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
baseurl=http://mirrors.kernel.org/centos/7.2.1511/os/x86_64/
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
 3.安裝Openmanage,按下Y開始同意安裝套件
yum --enablerepo=base install srvadmin-all
 4.在防火牆中加入1311PORT
vi /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m conntrack --ctstate NEW -m tcp -p tcp --dport 1311 -j ACCEPT
 重新啟動防火牆讓設定生效
systemctl restart iptables
 5.啟動Openmanage服務
 /opt/dell/srvadmin/sbin/srvadmin-services.sh start
6.打開瀏覽器就可以開始使用了
/opt/dell/srvadmin/sbin/srvadmin-services.sh start

[設定Email Notifications]
1.安裝mailx
wget http://mirror.centos.org/centos/7.2.1511/os/x86_64/Packages/mailx-12.5-12.el7_0.x86_64.rpm
rpm -ivh mailx-12.5-12.el7_0.x86_64.rpm
2.設定 ssmtpd.conf
vi /etc/ssmtp/ssmtp.conf
mailhub=mail.yourdomain.com:25
AuthUser=username
AuthPass=password
rewriteDomain=server1.yourdomain.com

hostname=server1.yourdomain.com

3.建立 shell script 來發送MAIL通知 (from http://idolinux.blogspot.tw)
# vi /usr/local/bin/om-alert.sh

#!/bin/sh
HOST=`hostname`
EMAIL="my_admin@my_network.net"
echo "There has been an OpenManage ALERT detected on $HOST.  Please login to the web interface to see details." | mail  -s "OM ALERT $HOST  $1" $EMAIL
注意,新版本的mailx 如果-s不是立刻接在後方會造成主旨空白,不知道是否後方接MAIL的格式有錯誤造成
4. 你可以在 web介面 一筆一筆加入通知或是利用命令列加入MAIL發送通知
chmod +x /usr/local/bin/om-alert.sh
逐個項目加入

omconfig system alertaction
omconfig system alertaction -?
omconfig system alertaction event=powersupply execappath=/usr/local/bin/om-alert.sh
omconfig system alertaction event=storagesyswarn alert=true broadcast=true execappath=/usr/local/bin/om-alert.sh
omreport system alertaction

或是加入所有項目的通知
for I in `omconfig system alertaction | sed 's/ *(.*)//; s/>.*//; s/.*[:<] *// ; s/|/ /g;'`; do
echo $I;
omconfig system alertaction event=$I alert=true broadcast=true execappath="/usr/local/bin/om-alert.sh $I"
done 
Reference
Dell Openmanage in XenServer 7
Quick Dell OpenManage Email Alerts
Manual Reference Pages  - MAILX (1)

星期三, 12月 16, 2015

OpenVAS - 503 Service temporarily down

今天要把許久沒拿出來的OPENVAS 做一下系統弱點掃描。
執行掃描動作的時候,卻出現
503  Service temporarily down
試了許多方法,直到這位鄉民提出的方法,才順利解決
Solution: 
#重新製作憑證
openvas-mkcert -f
openvas-mkcert-client -i -n
#restart all daemons.
/etc/init.d/openvas-scanner restart
/etc/init.d/ gsad restart

Reference

OpenVAS 7 + Arch Linux > "Service temporarily down"

星期三, 10月 28, 2015

VM 無法光碟開機(XenServer 6.5)

有一台VM 開機的時候無法使用光碟開機,
檢查boot option 只有Hard disk。

爬文一下,發現只要這樣下就可以:
xe vm-param-set HVM-boot-policy="BIOS order" uuid=[uuid of your vm]
處理好之後再改回來
xe vm-param-set HVM-boot-policy="" uuid=[uuid of your vm]

Reference
Boot a guest VM from CD or DVD in XenServer