Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/chueating1005/sa
NYCU 112-1 Course, Computer System Administration
https://github.com/chueating1005/sa
nycu-course system-administration
Last synced: 19 days ago
JSON representation
NYCU 112-1 Course, Computer System Administration
- Host: GitHub
- URL: https://github.com/chueating1005/sa
- Owner: ChuEating1005
- Created: 2023-10-26T11:16:09.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-18T08:54:29.000Z (about 1 year ago)
- Last Synced: 2023-12-18T10:06:05.619Z (about 1 year ago)
- Topics: nycu-course, system-administration
- Language: Shell
- Homepage:
- Size: 5.3 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NYCU-SA
- **Instructor**: 蔡孟勳 Meng-Hsun Tsai
- **Semester**: NYCU-112-1
- **Pre-requisites**:
- Basic knowledge of UNIX commands
- Basic Programming skills
- Basics of TCP/IP Networking
- Your ***HARD STUDY***
- **Grading**
- Mid 15%
- Final 15%
- Homeworks 70%
- **Credit**: 3
- **Contact**:
- TR: [email protected]
- TA: [email protected]
- Reference Website:
1. NYCU-SA-2023: https://nasa.cs.nycu.edu.tw/sa/2023/
2. NASA-OJ: https://nasaoj.cs.nycu.edu.tw
3. ShellCheck: https://www.shellcheck.net
## HW1
**Install FreeBSD / Ubuntu & WireGuard**
- Basic(15%)
- Install FreeBSD 13.2-RELEASE
- Alternatively, Install Ubuntu 22.04
- Root on ZFS (15%)
- Zpool name : zroot (rpool on Ubuntu)
- Add a user and a group
- User should also be in the "wheel" group ("sudo" on Ubuntu)
- Use this user to do this homework instead of root (using sudo)
- Add a user called "judge" for Online Judge
- User should also be in the "wheel" ("sudo" on ubuntu) group
- Please use "sh" as default shell (10%)
- This user needs to run sudo without password (15%)
- Set your machine to current time zone and adjust current time (10%)
- CST
- Enable sshd (20%)
- Install this public key to your /home/judge/.ssh/ for Online Judge.
```sh
$ fetch https://nasa.cs.nctu.edu.tw/sa/2023/nasakey.pub
$ cat nasakey.pub >> /home/judge/.ssh/authorized_ke
```
- You can use Fingerprint to check "nasakey.pub"
```sh
$ ssh-keygen -l -f nasakey.pub
256 SHA256:0LO0tdbs1Q5q4J8wa4Hidej2gkq9gqtLQeJwm98VYZk sa-2023 (ED25519)
```
- Install Wireguard
- Configure the connection
- Configuration directory: /usr/local/etc/wireguard/wg0.conf
- Use `wg-quic` and `wg` to start/stop the connection
## HW2
**Shell Script**