CentOS 6 以最小安裝後記得再安裝openssh-clients

前陣子CentOS 6終於釋出了,
也馬上在虛擬機上裝來玩看看,
但發現以最小安裝完畢後進入系統卻沒SSH指令可以用?
其實是少了openssh-clients再補安裝即可。
[cc_bash theme=”blackboard”]yum install openssh-clients[/cc_bash]

和5.6相比在同樣在VirtualBox上跑開機速度快了許多,
不過用最小安裝似乎比5.6會少裝一些東西。

利用shell script遠端關閉主機

其實也只是利用ssh指令再加上關閉指令就可以了,
但是會遇到輸入密碼的問題,
目前我想到的做法是利用ssh-keygen產生金鑰達成免輸入密碼即可登入的效果,

測試環境(利用VirtualBox來建立虛擬機)
HostA: Ubuntu 11.04
HostB: CentOS 5.6
HostC: FreeBSD 8.1
要測試是否能由HostA遠端去關閉HostB、HostC這兩台機器,
以下為方便測試皆使用root身份。

1.先在HostA上以ssh-keygen產生金鑰
[ccW_bash theme=”blackboard”]ssh-keygen -t rsa[/ccW_bash]
這會產生一組公、私鑰,
將id.rsa.pub這公鑰傳到HostB、HostC這兩台機器上,
以HostB為例:
[ccW_bash theme=”blackboard”]scp /root/.ssh/id.rsa.pub root@192.168.0.109:/root/ [/ccW_bash]
再登入到HostB上將id.rsa.pub移到/root/.ssh目錄並更名為authorized_keys,
若遠端機器已存在authorized_keys這個檔案就直將把id.rsa.pub的內容加入:
[cceW_bash theme=”blackboard”]cat id.rsa.pub >> /root/.ssh/authorized_keys[/cceW_bash]
若不存在就直接更名移過去即可:
[ccW_bash theme=”blackboard”]mv id.rsa.pub /root/.ssh/authorized_keys[/ccW_bash]

HostC也是相同的做法,
最後在HostA上寫一個script,內容如下:
[ccW_bash theme=”blackboard”]#!/bin/bash

# for CentOS
ssh root@192.168.0.109 ‘shutdown -h now’
# for FreeBSD
ssh root@192.168.0.120 ‘halt -p'[/ccW_bash]
注意根據OS的不同關機指令也會有所差異。

但這會有一個問題是若該遠端主機之前沒登入過會出現要你是否接受這連線的提示,
(也就是know_hosts這檔案中沒這台機器)
所以必須每一台都要登入過一次才能正常使用,
也許用expect這套件來解決輸入密碼的問題更好,
改天再來研究看看。

Samba on Ubuntu

測試環境:Ubuntu 11.04

1. 安裝Samba
[ccW_bash theme=”blackboard”]apt-get install samba[/ccW_bash]

2. 編輯 /etc/samba/smb.conf
[ccW_bash theme=”blackboard”]vim /etc/samba/smb.conf[/ccW_bash]
在第102行:
[cc]# security = user[/cc]
拿掉註解,使用帳密方式連線,若不想設帳密可以將user改為share
[cc] security = user[/cc]
然後在檔尾加入以下敘述:
[SHARE]
path = /home/smbuser/share
browseable = yes
read only = no
create mask = 0644
directory mask = 0755

其他部份就看需求修改囉,剩下的我是都直接用預設值。

3. 建立一個使用者smbuser,若在/etc/smb.conf將security設為share可以不需要做這個步驟
[ccW_bash theme=”blackboard”]adduser smbuser[/ccW_bash]
為smbuser設定一個Samba的密碼
[ccW_bash theme=”blackboard”]smbpasswd -a smbuser[/ccW_bash]

4. 建立剛才在/etc/smb.conf所設定的分享路經
[ccW_bash theme=”blackboard”]mkdir /home/smbuser/share
chown smbuser:smbuser /home/smbuser/share[/ccW_bash]

5. 重新啟動Smaba服務
[ccW_bash theme=”blackboard”]/etc/init.d/smbd restart[/ccW_bash]

6. 而如何在Windows存取呢,只在要檔案總管或是開始→執行輸入 \\您的ip 就可以囉,
如果有設定密碼會出現請您輪入帳密的視窗
smb01