2017年7月22日星期六

apache errors

在安裝Ubuntu 16.04後,當要使用https,在設置好conf檔後,在瀏灠器出現以下錯誤
ERR_CONNECTION_REFUSED

很有可能是未enable SSL。執行以下
a2enMOD SSL

重啟apache。

2017年7月2日星期日

加強ssh保安

為加強ssh的保安,我們可做以下工作:
A.不許root從ssh登入,改為增加用戶為sudoer。
B.禁止用戶用密碼遙距(ssh)登入,只可用key登入。
ssh server 限制用key登入ssh的好處就是入侵者基本上不可能暴力爆SSH server,撞中密碼。當然,也要保存好登入用的key。

以Ubuntu 16.04為例,我們可以按序做以下工作:

1. 增加一個用戶為sudoer

創建一個用戶sudoer_userabc
useradd -m sudoer_userabc

使用usermod去加用戶入"sudo"群組中
Ubuntu中,預設群組"sudo"中的用戶便可sudo (tested on Ubuntu 16.04)
usermod -aG sudo sudoer_userabc

測試
su sudoer_userabc
sudo apt-get update
如可正常update,則sudoer_userabc已是sudoer的一員了。

2. 生成一對密鑰

登入server, 執行
ssh-keygen

在過程中,會要求輸入密碼保護金鑰,作用是在每之使用金鑰時,要輸入密碼才可。注意,此密碼跟原本登入ssh server的密碼無關。建議可用一個簡單密碼來保護金鑰。有密碼保護的話,假設金鑰被人複制了一份,他也用不了。

之後會生成
目錄 ".ssh" (請確定".ssh"的權限是"700")
另外目錄下是一對金鑰,分別是
id_rsa (權限應為"600",這是key)
id_rsa.pub (權限應為"644",這是"鎖")


3.把"鎖"裝上

在目錄".ssh"中執行以下:

cat id_rsa.pub >> authorized_keys

mv id_rsa.pub authorized_keys

將key下載回來。
如是Linux或MacOS,直接用sftp登入下載便可。
如用Windows,可用以下工具

WinSCP (一個sftp工具)

http://winscp.net/

在Windows下,仍需下載puttygen及putty。


http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
用puttygen把id_rsa轉為putty格式,再用putty登入。

4. 修改sshd_config,改為只可用key登入

修改以下

============================================================
#修改port為XXXX
Port XXXX


#禁止root登入
PermitRootLogin no 

#允許用key登入,設定key的路徑 
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys
============================================================

保存修改,重啟sshd,如可正常用key登入,再修改以下

============================================================
#禁止用密碼登入
PasswordAuthentication no 
============================================================

保存修改,重啟sshd。

5. 登入ssh

在Linux及macOS中,可用以下指令登入ssh
ssh -p port_of_sshd -i name_of_key user@sshd_server_ip

Windows中可用 putty.


完成!

ref:
https://blog.gtwang.org/linux/linux-ssh-public-key-authentication/
https://www.digitalocean.com/community/tutorials/how-to-create-a-sudo-user-on-ubuntu-quickstart

2017年5月12日星期五

Raspberry Pi 更改timezone

在Raspbian中更改time zone

root的身份鍵入以下command

sudo dpkg-reconfigure tzdata

接著便進入互動介面,選擇合適的地區。
保存後,重啟。

完成!

更新:
在Ubuntu 16.04上測試,也是一樣可用。
應該在Ubuntu系列的各版本都適用。
2017/7/2

ref http://aryo.lecture.ub.ac.id/configure-timezone-settings-on-raspberry-pi-raspbian-wheezy/comment-page-1/