Skip to content

Instantly share code, notes, and snippets.

View pramoth's full-sized avatar

Pramoth Suwanpech pramoth

View GitHub Profile
#include <stdio.h>
int main(int argc, char **argv) {
for (int i = 1; i < argc; i++) {
printf("%s\n", argv[i]);
}
return 0;
}

2.1 การติดตั้ง JAVA version 11 2.1.1. download จาก link นี้ https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.14.1%2B1/OpenJDK11U-jdk_x64_linux_hotspot_11.0.14.1_1.tar.gz

2.1.2. copy file JDK ไปยังเครื่อง ต่างๆ - scp OpenJDK11U-jdk_x64_linux_hotspot_11.0.14.1_1.tar.gz sunweb@10.3.x.x โดยที่ x.x คือ ip เครื่องทั้ง 4 เครื่อง

2.1.3 remote เข้าไปยังเครื่องทั้ง 4 เครื่อง แล้วรันคำสั่งสำหรับทุกเครื่อง - tar zxvf OpenJDK11U-jdk_x64_linux_hotspot_11.0.14.1_1.tar.gz -C /opt

2.1.4 ทดลองรันคำสั่ง /opt/jdk-11.0.14.1+1/bin/java -version เพื่อเช็คเวอร์ชั่น จะแสดงผลลัพธ์ดังนี้

Install PC/SC

ขั้นตอนนี้คือการติดตั้งไลบรารีเพื่อให้ Linux สามารถเชื่อมต่อกับเครื่องอ่านได้ (ลีนุกซ์บางรุ่นอาจจะติดตั้งไว้แล้ว ก็สามารถข้ามได้)

  1. กรณี Ubuntu,Debian

    1. ติดตั้ง lib/tools ที่จำเป็น ด้วย sudo apt-get install --reinstall pcscd pcsc-tools libpcsclite1 libpcsclite-dev libpcsclite1 libccid
    2. เมื่อติดตั้งเสร็จ ให้ทดสอบว่า smartcard ทำงวานหรือไม่ ด้วยคำสั่ง systemctl status pcscd จะต้อง Active หากต้องการเช็คว่าเชื่อมต่อเครื่องอ่านได้หรือไม่ ให้เสียบเครื่องอ่านและใช้คำสั่ง pcsc_scan จะแสดงรายการเครื่องอ่านที่เสียบอยู่
  2. กรณี Fedora,CentOS,RedHat

    1. ติดตั้ง lib/tools ที่จำเป็น ด้วย sudo yum -y install pcsc-tools
    2. เมื่อติดตั้งเสร็จ ให้ทดสอบว่า smartcard ทำงวานหรือไม่ ด้วยคำสั่ง systemctl status pcscd จะต้อง Active หากต้องการเช็คว่าเชื่อมต่อเครื่องอ่านได้หรือไม่ ให้เสียบเครื่องอ่านและใช้คำสั่ง pcsc_scan จะแสดงรายการเครื่องอ่านที่เสียบอยู่

IP Server

  • app (OPS1) 172.24.1.26
  • app (OPS2) 172.24.1.27
  • DB 172.24.4.22

SSL Installation

  1. copy file โดย scp key_store_file ops@172.24.1.26:~ โดยที่ key_store_file คือไฟล์ keystore .p12 , .jks ,.pfx
    • ตัวอย่างของในกรณีปี 2565 นี้คือ ไฟล์ SSL/pfx_for_iis_or_hardware/PFXCertificate.pfx ดังนั้น จึงใช้คำสั่ง scp SSL/pfx_for_iis_or_hardware/PFXCertificate.pfx ops@172.24.1.26:~ ซึ่งคือการ copy file PFXCertificate.pfx ที่เครื่อง local ไปยังเครื่องปลายทาง ที่ path /home/ops/
  2. remote เข้าไปที่เครื่อง 172.24.1.26 ด้วยคำสั่ง ssh ops@172.24.1.26 (ด้วย user ops)
  3. เปลี่ยนชื่อไฟล์จาก PFXCertificate.pfx เป็น ssl_keystore.pfx ด้วยคำสั่ง mv PFXCertificate.pfx ssl_keystore.pfx

install PC/SC for linux(Ubuntu)

  1. ติดตั้ง lib/tools ที่จำเป็น ด้วย sudo apt-get install --reinstall pcscd pcsc-tools libpcsclite1 libpcsclite-dev libpcsclite1 libccid
  2. เมื่อติดตั้งเสร็จ ให้ทดสอบว่า smartcard ทำงวานหรือไม่ ด้วยคำสั่ง systemctl status pcscd จะต้อง Active หากต้องการเช็คว่าเชื่อมต่อเครื่องอ่านได้หรือไม่ ให้เสียบเครื่องอ่านและใช้คำสั่ง pcsc_scan จะแสดงรายการเครื่องอ่านที่เสียบอยู่

install application สำหรับ Rasbery PI 64 bit (Aarch64)

  1. แตก tar ไฟล์ติดตั้ง และ cd เข้าไปใน linux-installer tar zxvf ชื่อไฟล์.tar.gz && cd linux-installer
  2. รันคำสั่ง ./install-aarch64.sh secureagent-xxx.jar ระบบจะทำการ ติดตั้งด้วยการสร้าง linux user secureagent จากนั้น download JDK และ ติดตั้ง systemd service และ ติดตั้งโปรแกรมที่ระบุ (ไฟล์ .jar) โดยให้แทนที่ secureagent-xxx.jar ด้วย jar เวอร์ชั่นที่ต้องการติดตั้ง
  3. เมื่อติดตั้งเสร็จ ให้แก้ไขไฟล์ /home/secureagent/application-test.properties โดยใส่ค่า TOKEN ในไฟล์นี้สำหรับเครื่องเทสท์
  4. หากต้องการเปลี่ยนจาก test zone เป็น production zone ให้ใส
@pramoth
pramoth / ffa.java
Last active September 16, 2021 20:39
package ffa.demo;
import jdk.incubator.foreign.CLinker;
import jdk.incubator.foreign.FunctionDescriptor;
import jdk.incubator.foreign.MemoryAddress;
import jdk.incubator.foreign.ResourceScope;
import java.lang.invoke.MethodHandle;
import java.lang.invoke.MethodType;
@pramoth
pramoth / index.html
Created June 16, 2021 18:36 — forked from kristw/index.html
Thailand map
<!DOCTYPE html>
<meta charset="utf-8">
<style>
@import url(http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300|Josefin+Slab|Arvo|Lato|Vollkorn|Abril+Fatface|Old+Standard+TT|Droid+Sans|Lobster|Inconsolata|Montserrat|Playfair+Display|Karla|Alegreya|Libre+Baskerville|Merriweather|Lora|Archivo+Narrow|Neuton|Signika|Questrial|Fjalla+One|Bitter|Varela+Round);
.background {
fill: #eee;
pointer-events: all;
}
@pramoth
pramoth / main.go
Created November 7, 2019 15:18 — forked from julz/main.go
containersched minicontainer
package main
import (
"fmt"
"os"
"os/exec"
"syscall"
)
func main() {
@pramoth
pramoth / setupdb.md
Created June 17, 2019 06:10 — forked from danisfermi/setupdb.md
Setup gdb on Mac OS Sierra/High Sierra

Here are the steps to installing and setting up GDB on Mac OS Sierra/High Sierra. Run brew install gdb. On starting gdb, you will get the following error:

Unable to find Mach task port for process-id 2133: (os/kern) failure (0x5).
 (please check gdb is codesigned - see taskgated(8))

To fix this error, follow the following steps:

import java.util.NavigableMap;
import java.util.TreeMap;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.Stream;
public class Fibonacci {
public static final Fibonacci BASE = new Fibonacci(0, 1);