Home Data Center Operation and Maintenance Tools Series
This article was last updated 269 days ago. The information in this article may have developed or changed. If it is invalid, please leave a message in the comment section.

Preface

After the home data center is built, how to manage and operate numerous devices and applications becomes a challenge. Generally speaking, in terms of specific management methods, it can be divided into CLI (such as SSH, because SSH is the mainstream CLI management method, so SSH will be used instead of CLI later) and WEB. In terms of management methods, it can be divided into centralized and decentralized.

The representative of the centralized solution is the bastion host solution (such as next-terminal). Add all the devices and applications (SSH and WEB) that need to be managed to the asset list of the bastion host, and then log in to the bastion host with a valid username and password to manage all devices through the WEB (if you are not used to SSH in the WEB mode, you can also use SSH tools to connect to the device through the bastion host), and all access operations can be traced back in the log.

Decentralized means managing all devices directly from different terminals. Why do I want to bring up the concept of decentralization? First, centralized is too formal after all. I can’t use many functions (such as auditing functions), and adding assets and setting permissions are also troublesome. . Secondly, although I use macbook as the main terminal, I also have macmini and a desktop win11. The effect I want to achieve is: no matter which terminal I sit in front of, I can directly manage all devices and services; if I am not at home, I can also use ipad or iphone to deal with emergencies. There are three problems to be solved here: 1. SSH device data synchronization. 2. WEB management device data synchronization. 3. Virtual networking

SSH device data synchronization

As more and more devices need to be managed by SSH (NAS, LXC, Linux virtual machines, cloud hosts, etc.), it is impossible to add a new device every time on all terminals, wouldn't it be exhausting? Therefore, when choosing an SSH client, the client needs to support the data synchronization function. Here we mainly introduce two types of SSH clients that support data synchronization.
1. electterm
This is an open source and free client. Its advantages are that it supports Linux, MAC, and Windows operating systems, supports SFTP, and most importantly, it can synchronize bookmarks (device connection information) to Github or Gitee (some simple configuration is required), which meets the requirements of decentralization. But there are also disadvantages: first, the interface always looks ugly; second, there is no client on iOS and iPad, which cannot meet my requirements for out-of-town operation and maintenance. Of course, if you don't have this requirement, then electerm is the best choice.
2. Termius
I call it the strongest SSH client, which meets all my requirements, with only one drawback: it is super expensive and I can't afford it at all. But you can take a roundabout route: educational version, student package, etc. If you want these, you can use your brain.

WEB management device data synchronization

This is very simple, the synchronization function of Chrome browser (requires science) or Edge can meet this requirement.

Virtual Networking

Virtual networking, ideally, assigns a special IP address to each device that needs to be managed. All devices with special IPs (NAS, Linux virtual machines, cloud hosts, Windows, Macs, mobile phones, and pads) can directly access each other when connected to the Internet (there is no need for a public IP at the home broadband outlet, and there is no need for port mapping if there is a public IP. However, the rate and latency of mutual access depend on the network operator. Of course, you can also build a relay server yourself, which requires a public IP. You can either use a home broadband with a public IP or buy a cheap cloud host). The advantages of this are that access such as remote desktop does not require transit, and can be directly accessed using the system's own tools (such as the remote desktop client for Windows systems, and Microfoft Remote Desktop on Macs) or a good remote desktop access tool (such as Jump Desktop). The experience is significantly better than that of a type that requires transit. Secondly, it can meet the purpose of directly accessing all devices and applications with a mobile phone or pad when I am not at home (it is impossible to use the public IP mapping method, because not everyone has a public IP, and even if there is a public IP mapping, it is too dangerous). There are many such solutions, but it is recommended to choose one based on the wireguard protocol (such as tailscale), which has more flexible connectivity. You can search for it yourself, I won’t say more, it’s a bit sensitive.

For more virtual networking applications, see:Application of virtual networking technology in home data center series.

other

Of course, in addition to SSH and WEB, there are other types of clients. For example, database operation and maintenance requires a special client: phpadmin (usable, but the experience is not good) or DBeaver (free and easy to use). In addition, it is also recommended to build a win virtual machine as a dedicated remote desktop operation and maintenance machine, and friends with a public IP can do a public port mapping, mainly to solve the need to deal with complex problems when not at home (after all, the screens of iPhones and iPads are small, emergency processing is OK, but more complex, such as writing blogs, is still best handled on the computer. At this time, just find an Internet cafe, and then remote desktop to the win system operation and maintenance machine).

The content of the blog is original. Please indicate the source when reprinting! For more blog articles, you can go toSitemapUnderstand. The RSS address of the blog is:https://blog.tangwudi.com/feed, welcome to subscribe; if necessary, you can joinTelegram GroupDiscuss the problem together.
No Comments

Send Comment Edit Comment


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠(ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ°Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
Emoticons
Emoji
Little Dinosaur
flower!
Previous
Next
       

This site has disabled the right mouse button and various shortcut keys. The code block content can be copied directly by clicking the copy button in the upper right corner

en_US