Linux系统下DDNS的配置问题


DDNS的设置问题

序言

为了使手上所有硬盘物尽其用,故重启了AX9000的docket使用计划,预期通过DDNS建立外网对内的访问实现内网服务器数据库的野望

涉及知识点

  1. protainer使用
  2. DDNS
  3. ubuntu基础
  4. shell命令
  5. mysql
  6. ufw

protainer使用

protainer简介

protainer是docket的可视化操作平台

protainer主要操作

  1. local/Host/registries是设置储存库账号的地方,设置储存库后可以远程拉取已有的程序模板直接安装使用
  2. local/Containers中的portainer是本页面使用的docket不能随便修改,不然可能存在页面无法访问的情况
  3. local/NetWorks中的三种网络模式已经够用了,虽然安装mysql时端口映射一直失败未找到原因,但是安装ubuntu时,主动分配了端口
  4. Container details页面中”Duplicate\Edit”可以修改应用的高级设置,但是每一次设置都是删除现有Container重新新建,也就时现有数据会丢失
  5. 目前尚未发现路由器重启对docket的影响

DDNS

基于namesilo的DNSAPI测试

  1. 通过官方给定的查询API可以查询到DNS数据然而修改API则无法进行修改,原因未知
  2. 可以直接使用CURL进行操作操作简洁

基于腾讯的DNSAPI测试

  1. 需要构建DNS服务器,所幸API Explorer可以生产测试代码,难受的时需要下他那贼大贼大的SDK库
  2. vs的跨平台就是个笑话,所有ubuntu的编译环境都需要重新搭建,并未感觉到便利之处
# 安装流程
git clone https://github.com/TencentCloud/tencentcloud-sdk-cpp

apt-get install gcc
apt-get install g++
apt-get install cmake
apt-get install libcurl4-openssl-dev
apt-get install libssl-dev
apt-get install uuid-dev
cd tencentcloud-sdk-cpp
vim build.sh
## 在cmake .. 中间添加-DBUILD-MODULES="dnspod"
chmod -755 build.sh
./build.sh

git clone git@github.com:3319952332/DDNSCode.git

ubuntu基础

开启ssh服务

apt-get update
apt-get install vim ca-certificates openssh-server mysql-server net-tools git -y
vim /etc/apt/sources.list
unminimize
apt-get update
apt-get upgrade
vim /etc/ssh/sshd_config
# 注释掉PermitRootLogin prohibit-password选项
# 添加PermitRootLogin yes
/etc/init.d/ssh restart
passwd

# 安装sql
apt-get install mysql-server
# 安装网络工具箱
apt-get install net-tools 
# 卸载
apt-get purge 包名

REMOTE HOST IDENTIFICATION HAS CHANGED问题解决

第一次使用SSH连接时,会生成一个认证,储存在客户端的known_hosts中,需要清理掉.ssh中的该文件

切换下载镜像

修改/etc/apt/sources.list文件,使用gg,dG可以清空文件

deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse

shell命令

-p 端口号设置
-l 登录用户名
Ctrl+D 断开连接
上传或下载文件 
cd .ssh
ssh-keygen
cat id_rsa.pub >> authorized_keys
vim /etc/ssh/sshd_config

RSAAuthentication yes
PubkeyAuthentication yes
PasswordAuthentication no 
权限修改
注:id_rsa文件权限应为700,否则会失效
#!/bin/bash
echo "Start Log Begin CurTime $(TZ=UTC-8 date "+%Y-%m-%d %H:%M:%S")" >> ~/start.log
SSHCNT=$(ps -ef | grep ssh | grep -v "grep" | wc -l)
MYSQLCNT=$(ps -ef | grep mysql | grep -v "grep" | wc -l)
if [ $SSHCNT -eq 0 ]; then
        echo "SSH not running try start " >> ~/start.log
        /etc/init.d/ssh restart &
else
        echo "SSH running" >> ~/start.log
fi
if [ $MYSQLCNT -eq 0 ]; then
        echo "MYSQL not running try start " >> ~/start.log
        service mysql restart &
else
        echo "MYSQL running" >> ~/start.log
fi

echo "Start Log End" >> ~/start.log
exit 0
                   

mysql

安装

使用apt-get install mysql-server安装

配置

#启动mysql服务
service mysql start
# 打开mysql
mysql -uroot -proot 
# 使用mysqldatabase
use mysql 
# 查询用户
select host, user, authentication_string, plugin from user;
# CREATE USER '用户名'@'host' IDENTIFIED BY '密码'
CREATE USER 'wang'@'192.168.1.3' IDENTIFIED BY 'D{F15[]Egse>.FD][]#$}';
# 修改密码验证方式
ALTER USER 'wang'@'192.168.1.3' IDENTIFIED WITH mysql_native_password BY 'D{F15[]Egse>.FD][]#$}';
# 设置账号可以远程登录
GRANT ALL PRIVILEGES ON *.* TO 'wang'@'192.168.1.3';
# 刷新权限
flush privileges;

对于远程连接无响应的问题的解决方案

通过netstat -aptn查询mysql的监听地址为127.0.0.1:3306,而ssh的监听地址为0.0.0.0:22,因此需要将mysql的监听地址改为0.0.0.0:22,通过修改/etc/mysql/my.cnf,在任意位置添加如下文本重启服务即可

# 修改mysql监听地址

[mysqld]

bind-address=0.0.0.0 # 重启服务 service mysql restart

0.0.0.0,localhost和127.0.0.1的区别

在服务器中,0.0.0.0指的是本机上的所有IPV4地址,是真正表示“本网络中的本机”。 一般我们在服务端绑定端口的时候可以选择绑定到0.0.0.0,这样我的服务访问方就可以通过我的多个ip地址访问我的服务。
在路由中,0.0.0.0表示的是默认路由,即当路由表中没有找到完全匹配的路由的时候所对应的路由。
而127.0.0.1是本地回环地址中的一个,大多数windows和Linux电脑上都将localhost指向了127.0.0.1这个地址,相当于是本机地址。
localhost是一个域名,可以用它来获取运行在本机上的网络服务。
在大多数系统中,localhost被指向了IPV4的127.0.0.1和IPV6的::1。
————————————————
版权声明:本文为CSDN博主「金箍一梦何来愁」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yz18931904/article/details/106440444

ufw

描述

  • ubuntu防火墙,底层还有一个iptables,ufw 似乎只适用于 iptables-legacy所以需要先安装iptables再改为iptables-legacy

操作

# 重新配置ufw
apt-get purge ufw iptables
apt-get install iptables
update-alternatives --set iptables /usr/sbin/iptables-legacy
update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy
apt-get install ufw
# 为ufw设置默认值
ufw default allow|deny

nmap

描述

  • 端口扫描工具

后续需要完成的

  1. ubuntu上搭设代理保证git可以正常下载
  2. ubuntu下载mysql并开放3306端口
  3. 继续测试等下API


已发布

分类

来自

标签:

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注