[測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程 [論壇 - Ubuntu 與工具程式及軟體推薦]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊



[測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員三級
註冊日期:
2009/8/27 21:33
所屬群組:
已註冊使用者
等級: 12
HP : 0 / 291
MP : 61 / 6873
EXP: 65
離線
小弟這一陣子在嘗試在自由軟體平台上,以自然人憑證經由網路報稅。整個過程障礙很多,寫在這邊供大家參考。現在還有幾天的時間,想玩玩看的朋友請把握時間。

小弟試用了三個不同的讀卡機,只有當年臺銀送的 EZ100PU 有可以用的 Linux 驅動程式,另外兩款是上航科技 SUZCR920 和中華郵政的 EasyATM COMBO 讀卡機,在 Ubuntu 上目前都還沒有辦法驅動,以下內容都是以 EZ100PU 進行。另外,虹堡提供的驅動程式雖然有 32 位元版的,但是小弟暫時沒有機器測試了,只試驗了 64 位元版的部份。

在開始以前,建議先執行軟體更新,將電腦裡的套件列表更新到最新狀態,讓等一下的下載可以獲得最新版。

驅動程式的部份小弟擅自包成套件包,因為這樣才能讓程式進入套件系統管理範圍,方便事後刪除。

沒有憑證,想要用身份證字號登入的朋友,也以參考本篇,只要跳過第一章就可以了。

[補述]公共政策網路參與平台的一位網友 Daneel 8tw 提供了不須另外安裝 Firefox ESR 版本的方法,小弟試驗有效,現在更新報告內容。

5/25 18:17:30
  Q__
 f"_<
○ ▽○.............    自由車上自由人
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員三級
註冊日期:
2009/8/27 21:33
所屬群組:
已註冊使用者
等級: 12
HP : 0 / 291
MP : 61 / 6873
EXP: 65
離線
第一章 驅動程式

要使用 EZ100PU 讀卡機讀取自然人憑證,在 Ubuntu 16.04 上需要另外加裝一個叫做 pcscd 的套件,以及讀卡機驅動程式。另外,報稅網站為了銜接這兩個程式,還會要求安裝一個中華電信的 plug-in。

先來安裝驅動程式:
請在自己的家目錄裡新增一個資料夾,名稱可以自己選

在新的資料夾圖示上用滑鼠右鍵點一下,選擇「以終端機開啟」

這時候就會出現一個命令列視窗(終端機)

將底下這一段程式用滑鼠圈選反白,複製到剪貼簿:
#!/bin/bash

 function packing() {
  local Date='2017-05-22 UTC'

  local PCSClib=/usr/lib/pcsc
  local ezUSBcontent=$PCSClib/drivers/ezusb.bundle/Contents
  local ezUSBdriver=$ezUSBcontent/Linux
  local Server=www.castlestech.com
  local Path=wp-content/uploads/2016/08
  local ZIPfile=201511920271676073.zip
  local ZIPchecksum=ced9161eab8a03ebebd356569f7cb3f8
        ZIPchecksum+=f5ecdca497101520f7160fc863d043cf

  if [ $( uname -m ) = x86_64 ] ; then
    local dirverZIPpack=EZUSB_Linux_x86_64_v1.5.3.zip
    local driverStoreDir=EZUSB_Linux_x86_64_v1.5.3/
          driverStoreDir+=driver_ezusb_v1.5.3_for_64_bit/
          driverStoreDir+=drivers
    local DEBpack=ez100pu-driver_1.5.3-1ubuntu1.16.04_amd64.deb
    local arch=amd64
    local size=96
  else
    local dirverZIPpack=EZUSB_Linux_x86_v1.5.3.zip
    local driverStoreDir=EZUSB_Linux_x86_v1.5.3/
          driverStoreDir+=driver_ezusb_v1.5.3/
          driverStoreDir+=drivers
    local DEBpack=ez100pu-driver_1.5.3-1ubuntu1.16.04_i386.deb
    local arch=i386
    local size=60
  fi

  local TempDir BeginDir Sum

  if ! which ar > /dev/null ; then
    echo "Can not find 'ar', please install 'binutils' package." >&2
    return 1
  fi

  TempDir="$( mktemp -d )"
  BeginDir="$PWD"

  if [ -f $ZIPfile ] ; then
    Sum="$( sha256sum $ZIPfile )"
  fi

  if [ "${Sum%% *}" != "$ZIPchecksum" ] ; then
    rm -f $ZIPfile
    wget http://$Server/$Path/$ZIPfile
    Sum="$( sha256sum $ZIPfile )"
  fi

  if [ "${Sum%% *}" != "$ZIPchecksum" ] ; then
     echo "Error when downloading driver!" >&2
     return 1
  fi

  cd "$TempDir"

  unzip $BeginDir/$ZIPfile EZUSB_Linux/$dirverZIPpack
  unzip EZUSB_Linux/$dirverZIPpack $driverStoreDir/*

  mkdir -p control data/$ezUSBdriver

  cp -a $driverStoreDir/Info.plist data/$ezUSBcontent
  cp -a $driverStoreDir/ezusb.so data/$ezUSBdriver

  touch -d "$Date" $( find data -type d )

  cat > control/control << EOF
Package: ez100pu-driver
Version: 1.5.3-1ubuntu1.16.04
Architecture: $arch
Maintainer: Freedman
Installed-Size: $size
Depends: pcscd
Suggests: pcsc-tools
Section: misc
Priority: optional
Homepage: http://www.castlestech.com/
Description: EZUSB(EZ100PU/EZMINI) Driver v1.5.3
 This driver is sliced out for Ubuntu form official driver pack and then
 packed into .deb file manually.
 Notice: 1. The recommaned version of kernel is 2.4 or higher.
         2. The driver requires PCSCLITE with being building with libusb.
            If PCSCLITE built with libhal, the driver will not work.
EOF

  cd data
  md5sum $( find -type f ) > ../control/md5sums
  cd - > /dev/null

  cat > control/postinst << EOF
#!/bin/sh

ldconfig

if systemctl status pcscd > /dev/null ; then
  if systemctl restart pcscd ; then
    echo "Restart PCS/SC Daemon Successfully."
  else
    echo "Warning:  Can not restart PC/SC daemon!" >&2
  fi
fi
EOF
  chmod +x control/postinst

  cp -a control/postinst control/postrm

  touch -d "$Date" control/*

  cd control
  tar cvf ../control.tar *
  cd - > /dev/null

  cd data
  tar cvf ../data.tar *
  cd - > /dev/null

  touch -d "$Date" control.tar data.tar
  gzip -c control.tar > control.tar.gz
  xz -c data.tar > data.tar.xz
  rm control.tar data.tar

  echo 2.0 > debian-binary

  ar cr $BeginDir/$DEBpack \
         debian-binary control.tar.gz data.tar.xz

  cd $BeginDir

  rm -r $TempDir

  sha256sum *

 }

 packing && unset packing || ( unset packing ; false)



接下來這個動作會去網路上抓驅動程式,請先確認你已經連上網際網路。
確認好之後,直接在剛剛開啟的命令列視窗裡面用滑鼠右鍵點一下,選擇「貼上」


如果一切順利,剛剛貼上的命令稿會下載驅動程式的壓縮檔,以此製作出你需要的 .deb 套件檔,並且顯示和底下相同的雜湊值:

ced9161eab8a03ebebd356569f7cb3f8f5ecdca497101520f7160fc863d043cf 201511920271676073.zip
a39c239a8259a3f593c85fc1c9412d52555d7bbf294547d0726ba84e9114ac22 ez100pu-driver_1.5.3-1ubuntu1.16.04_amd64.deb

32 bit 的環境應該是這樣:

ced9161eab8a03ebebd356569f7cb3f8f5ecdca497101520f7160fc863d043cf 201511920271676073.zip
069b91156d43b73c64df721d369629f7d889a31d858d2a70594330acd52a7404 ez100pu-driver_1.5.3-1ubuntu1.16.04_i386.deb

如果你看到的回應不是這樣,那可能程式就出錯了。

接著請打開那個資料夾,在 .deb 套件包上點兩下

就會出現套件管理程式,選擇安裝

輸入密碼

由於驅動程式套件裡設定了相依性,所以這時管理程式會自動悄悄的下載 pcscd 套件來安裝。如果你喜歡在命令列視窗自己用 apt-get 安裝,這部份的下載就會顯示出來。

這樣就完成了驅動程式的安裝。如果你想測試,可以加裝 pcsc-tools 套件,只要在命令列視窗輸入這行命令:
(可以直接複製貼上)

sudo apt-get install pcsc-tools

(請記得按下 [Enter])
輸入密碼後就會安裝了。然後請插上 EZ100PU 讀卡機,並且輸入命令 'pcsc_scan',如果回應類似這樣的字樣:

Reader 0: CASTLES EZ100PU 00 00
Card state: Card removed,

表示驅動程式已經偵測到讀卡機了。

中華電信的 plug-in 在這個階段還不方便裝,等下一個階段小弟再做說明。

5/25 18:39:06
  Q__
 f"_<
○ ▽○.............    自由車上自由人
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員三級
註冊日期:
2009/8/27 21:33
所屬群組:
已註冊使用者
等級: 12
HP : 0 / 291
MP : 61 / 6873
EXP: 65
離線
第二章 Firefox 瀏覽器

由於電腦界面的雜亂,國稅局網站的線上申報機制對 Ubuntu 而言可說是困難重重,我們必須要安裝網頁用的 Java 虛擬機器 plug-in、安裝支援舊 API 的瀏覽器讓瀏覽器接受 NPAPI Plugin、要求瀏覽器忽略中華電信 plug-in 沒有經過認證檢查的事實,最後裝好 plug-in,然後我們才能線上報稅。

先安裝 Java plug-in,請連上網路開啟一個終端機(命令列視窗),在裡面輸入底下的命令後按下 [Enter]:
(可以直接複製貼上)
sudo apt-get install default-java-plugin

(請記得按下 [Enter])
輸入密碼後會請你再次確認,建議您將新安裝的套件名稱用滑鼠圈選反白,然後用右鍵功能複製起來,另外開一個文字編輯器貼上去存檔,方便以後刪除套件。


由於目前 Ubuntu 的 Java plugin 使用的是 NPAPI,這個界面以現代眼光而言設計不佳,已經開始被停用,最新的 Firefox 瀏覽器不再支援,我們需要安裝官方特別製作的 ESR 版本(詳情請見 為什麽 Java...)。請到「下載您的語言的 Firefox Extended Support Release」網頁,下載您需要的 Linux 版本。
http://imageshack.com/a/img924/2171/UM7LXw.png
接著將下載來的檔案移到你喜歡的資料夾裡,並且點兩下,選擇「解開」
http://imageshack.com/a/img923/6249/2gEwrM.png

就會得到一個含有 firefox esr 瀏覽器的資料夾

接下來要讓 Firefox 忽略 plug-in 的認證,請在剛剛出現的 firefox 資料夾上用滑鼠右鍵點一下,選「以終端機開啟」
http://imageshack.com/a/img923/192/zoyzs6.png

然後在終端機裡輸入這行命令:
./firefox -P

接下來要讓 Firefox 忽略 plug-in 的認證

然而 Firefox 仍然隱藏有支援 NPAPI 的程式碼,只是被關閉了,我們可以更改設定啟動他。

啟用 NPAPI 和忽略簽章檢查的設定動作不少,請在終端機裡輸入這行命令:
firefox -P

(請記得按下 [Enter])
由於要更動安全性設定,所以小弟建議您在 Firefox 裡開一個新的帳號(是的, Firefox 有自己的帳號系統),因此小弟加了參數 -P,接下來就會看到帳號選擇畫面。
請選擇「建立設定檔」。


依照指示設定帳號名稱之後,請選擇新的帳號,再將「啟動時直接選擇新的設定檔……」的勾勾取消,最後按下「啟動 Firefox」。


預設瀏覽器的部份請取消「每次啟動 Firefox 都重新檢查」,並選擇「現在不要」。這樣才能讓原來的版本保持預設瀏覽器。
http://imageshack.com/a/img923/6100/9WDQeX.png


在網址列裡輸入 about :config,按下 [Enter],在出現的頁面中點一下「我發誓,我一定會小心的!」


在網頁裡任一個地方用滑鼠右鍵點一下,選「新增」、「布林 (Boolean) 值」

名稱請輸入 plugin.load_flash_only

值選擇 false

這樣就能讓 Forefox 啟動 NPAPI Plugin

接著要讓 Firefox 不檢查 plugin 的簽章。在網址列下方的「搜尋」裡輸入 xpinstall,然後再選底下的 xpinstall.signatures.required。


它的值是 Ture,請用滑鼠將它點兩下,讓值變成 False。


現在開始安裝中華電信的 plugin,下載網址是:
https://rtn.tax.nat.gov.tw/ircweb/include/npHiPKIClient-linux-etax64.xpi
如果你是用 32 位元版本,請下載:
https://rtn.tax.nat.gov.tw/ircweb/include/npHiPKIClient-linux-etax.xpi


下載完成後,用滑鼠將檔案拖到 Firefox 的分頁標籤上放開。


選擇「安裝」


重新啟動瀏覽器之後就安裝好了。

5/25 19:07:38
  Q__
 f"_<
○ ▽○.............    自由車上自由人
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員三級
註冊日期:
2009/8/27 21:33
所屬群組:
已註冊使用者
等級: 12
HP : 0 / 291
MP : 61 / 6873
EXP: 65
離線
第三章 進入報稅網站

先用上一章的方法,以新的 Firefox 帳號啟動 ESR 版的 Firefox。

進入報稅網站 http://tax.nat.gov.tw/


選擇左邊的「綜所稅結算申報」


右邊出現的「電子申報」中有一行「電子申報程式」,請點進去。


畫面往下拉,找到「線上申報」,點進去。


點選右邊「使用自然人憑證 IC 卡登入」。


回答完三個確定按鈕後,網址列下方會出現一行詢問,問你要不要執行「IcedTea-Web」,請選右邊的「允許」。


再來回答「永遠允許」。


是否要執行網站的 Java 程式?回答 "Run"。


元件下載成功,按「下一步」。



Java 程式來源沒有見過,要執行嗎?請回答 "Yes"。
(這個畫面可能會出現不只一次)



接下來請接上讀卡機,並插上自然人憑證卡。
輸入身份證字號和憑證的 PIN 碼之後,按「下一步」。


卡機閃爍很長一段時間之後就會停下來,這樣就登入報稅網頁了。

5/25 19:19:16
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員三級
註冊日期:
2009/8/27 21:33
所屬群組:
已註冊使用者
等級: 12
HP : 0 / 291
MP : 61 / 6873
EXP: 65
離線
第四章 開始報稅

在登入後的頁面裡,最方便的是「下載當年度所得、扣除額、稅籍資料或本年次上簇上傳申報資料」這個選項,請點選他。


接下來如果你今年還沒報過稅,就會出現從雲端下載當年度所得資料的畫面。這個畫面在報稅後就不會有了,小弟因此沒抓到,真的很抱歉。
網路上有「香腸炒魷魚」寫的教學:[Mac報稅教學]Mac 搭配自然人憑證也能輕鬆網路報稅,其中第 21 步的這張圖片就是這個畫面:

在這個畫面中請點「全部選取」,再點「選取送出」,確認之後就會將雲端所有所得資料下載下來。

接這右上方的下拉欄裡有各個步驟的頁面,請依序一個一個檢查、修正。如果是單純的受薪階級,正常情況是幾乎不用更改,報稅網站都已經依照你的所得資料幫你選好選項。如果你因為資料有一些沒有出現在雲端資料庫,或是要增減扶養親屬,就要手工修改。扶養親屬增加後,還要用親屬的憑證去下載他的所得資料。


最後請到「計算及上傳」的頁面,填好繳稅或退稅用得銀行帳戶資料,再選擇「申報資料上傳」



確認無誤後就完成了。

5/25 19:27:35
  Q__
 f"_<
○ ▽○.............    自由車上自由人
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員三級
註冊日期:
2009/8/27 21:33
所屬群組:
已註冊使用者
等級: 12
HP : 0 / 291
MP : 61 / 6873
EXP: 65
離線
第五章 刪除相關程式

使用 firefox -P 進入帳號管理畫面,刪除報稅用的帳號,之後就正常使用 Firefox 瀏覽器就好。

Firefox ESR 版本的刪除只需要將整個資料夾刪掉。

如果想清除讀卡機驅動程式,請用:

sudo apt-get remove pcscd pcsc-tools ez100pu-driver

刪除 Java Plugin 可以用:

sudo apt-get remove --auto-remove default-java-plugin

5/25 19:32:46
  Q__
 f"_<
○ ▽○.............    自由車上自由人
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員二級
註冊日期:
2011/10/7 0:22
所屬群組:
已註冊使用者
等級: 6
HP : 0 / 137
MP : 19 / 2388
EXP: 48
離線
感謝。
依您提供的資訊,下載Firefox ESR 52.1.2 (64位元)的版本在Ubuntu 14.04上,以「身分證統一編號 + 戶口名簿的戶號 」登入方式成功完成申報。

(因為手邊沒有讀卡機,明天到公司會嘗試看看自然人憑證的登入方式看看)

5/26 1:55:31
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員三級
註冊日期:
2009/8/27 21:33
所屬群組:
已註冊使用者
等級: 12
HP : 0 / 291
MP : 61 / 6873
EXP: 65
離線
小弟前幾天去商場看了一下,發現市面上 ATM 讀卡機不少,絕大部分都沒有支援 Linux 系統。小弟用的 EZ100PU 也有賣,但神奇的是他的包裝上標示的型號除了 EZ100PU 之外,還標示「NK0119」「力祥公司」等字樣。印象中小弟在稅務機關看到他們用的也像是這一款,感覺上這個型號的 OEM 商生意接得很多,全部用同一模組貼不同標籤。

有看到幾個型號有標示支援 Linux 的,分別是伽利略的 RU044, RU054 和 EasyATM K50,然而這幾款在網路上都查不到相關的 Linux 驅動程式,小弟只好放棄研究他們啦。

5/31 10:21:20
  Q__
 f"_<
○ ▽○.............    自由車上自由人
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員二級
註冊日期:
2011/10/5 8:09
所屬群組:
已註冊使用者
等級: 5
HP : 0 / 114
MP : 15 / 2004
EXP: 59
離線
目前市面上使用最廣,Linux支援度最好,就是「虹堡科技股份有限公司」生產的讀卡機,很多金融業、證券業、保險業,送給客戶的讀卡機大多是這家公司生產的,而且在讀卡機上會幫這些業者印上他們的Logo,流通最廣的無按鍵式讀卡機型號可能就是EZ100PU,流通最廣的有按鍵式讀卡機型號可能就是EZPAD.

該公司讀卡機驅動程式下載網址:
http://www.castlestech.com/zh-hant/%E6%AA%94%E6%A1%88%E4%B8%8B%E8%BC%89/

6/5 13:04:20
應用擴展 工具箱
回覆: [測試報告] 2017 年以自然人憑證在 Ubuntu 16.04 64bit 上報稅的過程
會員四級
註冊日期:
2010/10/28 17:23
來自 台灣-台南市
所屬群組:
已註冊使用者
等級: 19
HP : 0 / 462
MP : 147 / 9338
EXP: 51
離線
自由車自由人 寫到:
小弟前幾天去商場看了一下,發現市面上 ATM 讀卡機不少,絕大部分都沒有支援 Linux 系統。小弟用的 EZ100PU 也有賣,但神奇的是他的包裝上標示的型號除了 EZ100PU 之外,還標示「NK0119」「力祥公司」等字樣。印象中小弟在稅務機關看到他們用的也像是這一款,感覺上這個型號的 OEM 商生意接得很多,全部用同一模組貼不同標籤。

有看到幾個型號有標示支援 Linux 的,分別是伽利略的 RU044, RU054 和 EasyATM K50,然而這幾款在網路上都查不到相關的 Linux 驅動程式,小弟只好放棄研究他們啦。


最近也想買讀卡機,但EZ100PU只能讀晶片卡,不能讀感應式的卡(如iCash 2.0),所以還在繼續物色中。

在網路上看到一種說法:「支援CCID的就支援Linux」,不知是真是假?

PS:生產EZ100PU的廠商似乎還不少? 網路上看到很多同型號,但生產商卻同的產品。

8/14 11:29:03
lubuntu 16.04.2 (AMD64)
ASUS K53BR筆電
RAM: 1.5GB
應用擴展 工具箱


 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.