-
树莓派服务器-源码
2021-02-21 08:21:27树莓派服务器 -
树莓派服务器搭建过程
2016-12-22 11:49:21树莓派服务器搭建过程 -
Ubuntu20的tzselect设置时间失效的问题,树莓派服务器(推荐)
2020-09-14 19:52:25主要介绍了Ubuntu20的tzselect设置时间失效的问题,树莓派服务器,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 -
搭建树莓派服务器
2021-02-06 17:08:19树莓派——搬砖狗的第一台服务器 文章目录树莓派——搬砖狗的第一台服务器需求声明硬件需求软件需求无痛开机大功告成 需求声明 可以运行服务器系统 可以在线访问服务器文件 硬件需求 材料 价格 树莓派Zero...树莓派——搬砖狗的第一台服务器
需求声明
- 可以运行服务器系统
- 可以在线访问服务器文件
硬件需求
材料 价格 树莓派Zero WH ¥108~140 电池板 ¥0~108 TF卡 ¥16~24 TF读卡器 ¥0 总计 ¥124~272 平均 ¥198 注:本链接不包含推广,以此为参考即可。价格也可能大幅变化。
软件需求
- XFtp或者其他可以使用ftp的软件
- XShell或者其他可以使用ssh的软件
- Raspberry Pi Imager或者其他镜像烧录软件
无痛开机
-
使用镜像烧录软件
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hF5VQiZp-1612602485884)(C:\Users\18945\AppData\Roaming\Typora\typora-user-images\image-20210206160657709.png)]
- 在
CHOOSE OS
处选择Raspberry Pi OS
中的Raspberry Pi OS Lite (32bit)
- 在
CHOOSE SD CARD
处选择你的TF卡 - 点击
WRITE
烧录
- 在
-
插卡到树莓派上并插电池板或接电源
此处如果ACT灯不亮很有可能你的
系统
或TF卡
是有问题的 -
插卡到电脑读卡
打开
boot
盘,添加ssh
文件,添加wpa_supplicant.conf
,ssh
文件不需要修改,wpa_supplicant.conf
需要用记事本或其他文本编辑软件做如下修改country=CN ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="你的wifi名字,不要有下划线" psk="你的wifi密码" }
-
确认树莓派IP
树莓派接入网络后(这里选择让它接入我的手机热点),可以在路由器后台查找IP
-
ssh连接
这里使用
powershell
,在powershell
下输入ssh pi@192.168.43.181
第一次接入电脑会有提示输入
yes
即可,输入密码时看不见字符很正常,删除键也是好用的,密码是raspberry
登陆过后可以使用
passwd
更改密码 -
配置ftp
-
安装
vsftpd
sudo apt-get install vsftpd
-
修改配置
sudo vim /etc/vsftpd.conf
关注以下内容,被注释的话请修改
anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022
-
重启ftp
sudo service vsftpd restart
-
-
使用ftp软件连接
如上图所示修改
大功告成
只要没有物理攻击,可以随意折腾你的服务器了🤪
可以借此机会学一下Linux的知识,还有其他可玩的以后更新。
-
树莓派服务器搭建
2017-02-01 20:38:31阿里云服务器又涨价了,感觉已经负担不起了,但是又想拥有一台自己的私人服务器。某天,突然发现了树莓派,价格便宜、高可用。心血来潮!!说搞就搞!! 原文地址:...阿里云服务器又涨价了,感觉已经负担不起了,但是又想拥有一台自己的私人服务器。某天,突然发现了树莓派,价格便宜、高可用。心血来潮!!说搞就搞!!
原文地址:http://www.uthinks.com:8081/2017/01/23/RaspberryPi-init/
相关文章:
1.《基于Hexo + Git + Nginx的博客发布》http://www.uthinks.com:8081/2017/01/23/myBlog-deploy/准备工作
- 首先当然是有一台树莓派3代B型,淘宝价格¥190 + 周边 = ¥216 可以搞定(两个半月的阿里云ECS,还是蛮实惠的)
- 支持端口映射的路由器(基本现在市面上的路由器都支持端口映射),我用的是小米路由器
- 买一个属于自己的域名,如:www.uthinks.com
- 具有公网ip的宽带,我家使用的联通20M宽带,很幸运有一个公网的IP。如果没有公网IP,需要借助花生壳来做内网穿透,不仅麻烦还有流量限制。
树莓派装机
系统安装
-
下载树莓派系统镜像(https://www.raspberrypi.org/downloads/)
-
接着就是把镜像烧入SD卡,windows下需要下载win32diskimager
(http://download.csdn.net/detail/longerzone/7574047)。 -
解压镜像和win32diskimager(绿色版打开即可使用),插入SD卡 --> 打开win32diskimager --> 添加镜像 --> 确认SD卡后点击烧写即可
-
烧写结束后,在windows下SD卡会显示只有不到100M,不用担心,因为这个分区只是Linux 的boot分区,而其他内容作为Linux 的文件系统被挂载为ext4 文件系统,Windows 下识别不了而已
-
把烧好的SD卡直接插入树莓派SD卡槽中,接上电源等待系统安装完成
系统配置
系统配置过程还是碰到很多坑,大家有什么问题可以直接联系我,我会补充出来
- ssh无法登陆的问题
由于树莓派默认没有打开sshd,所以我用HDMI连接上显示器,执行命令sudo raspi-config
找到ssh然后enable后重启就ok了
动态域名解析(DDNS)
家里办理的联通宽带有公网IP,决定好好利用,但是公网IP不固定,需要动态修改域名解析。
注册域名
-
在阿里云上购买自己喜欢的域名(抓紧时间备案,不然网站会被封)
(https://wanwang.aliyun.com/domain/com?spm=5176.8142029.388261.128.anTrkC) -
如果有公网IP配置一条A记录,如果你使用的是花生壳配置一条CNAME记录
如何实现动态域名解析
下面给出的是python主要的核心代码,如果需要完整的环境代码请留言联系我。树莓派系统镜像中自带Python,还是很方便的
-
获取自己的公网出口IP
import urllib2 def getIp(): try: ip = visit("http://www.ip138.com/ip2city.asp") except: ip = "failed to get internet ip" return ip def visit(url): req = urllib2.Request(url) opener = urllib2.urlopen(req) result = opener.read() return result[result.find('[') + 1: result.find(']')]
-
下载alidns python SDK
(https://develop.aliyun.com/sdk/java?spm=5176.doc29772.416540.246.rjauTQ) -
解压安装
sudo python setup.py install -
安装alidns python SDK
pip install aliyun-python-sdk-alidns -
第1步获取到自己的公网IP后,调用API设置DNS解析
import json from aliyunsdkalidns.request.v20150109 import UpdateDomainRecordRequest,DescribeDomainRecordsRequest, \ DescribeDomainRecordInfoRequest, AddDomainRecordRequest from aliyunsdkcore import client # 更新域名解析 def updateDns(accessKey, accessKeySecret, hostRecord, dnsType, dnsValue, dnsRecordid, dnsTtl, returnFormat): print hostRecord, dnsType, dnsValue, dnsRecordid, dnsTtl, returnFormat clt = client.AcsClient(accessKey, accessKeySecret, 'cn-hangzhou') request = UpdateDomainRecordRequest.UpdateDomainRecordRequest() request.set_RR(hostRecord) request.set_Type(dnsType) request.set_Value(dnsValue) request.set_RecordId(dnsRecordid) request.set_TTL(dnsTtl) request.set_accept_format(returnFormat) result = clt.do_action(request) return result # 获取当前的解析IP def getDnsIp(accessKey, accessKeySecret, dnsRecordid, returnFormat): clt = client.AcsClient(accessKey, accessKeySecret, 'cn-hangzhou') request = DescribeDomainRecordInfoRequest.DescribeDomainRecordInfoRequest() request.set_accept_format(returnFormat) request.set_RecordId(dnsRecordid) result = clt.do_action(request) result = json.JSONDecoder().decode(result) result = result['Value'] return result
-
路由器端口映射,配置完成记得点击保存并且生效
-
最后一步把动态解析脚本配置到crontab中定时执行
/1 * * * /usr/bin/python /home/bill/basic/BasicTask.py
附:
-
accessKey、accessKeySecret如何获取
登录阿里云控制台(https://ak-console.aliyun.com/#/accesskey) -
域名解析RecoreId如何获取
# dns_domain 域名 如uthinks.com def check_records(dnsDomain): clt = client.AcsClient(accessKeyId, accessKeySecret, 'cn-hangzhou') request = DescribeDomainRecordsRequest.DescribeDomainRecordsRequest() request.set_DomainName(dnsDomain) request.set_accept_format('json') result = clt.do_action(request) print result return result 返回值: { "PageNumber": 1, "TotalCount": 2, "PageSize": 20, "RequestId": "***", "DomainRecords": { "Record": [ { "RR": "*", "Status": "ENABLE", "Value": "****", "RecordId": "****", "Type": "A", "DomainName": "uthinks.com", "Locked": false, "Line": "default", "TTL": "600" }, ] } }
如果我的文章对你有帮助,或者有什么疑问。欢迎在下方留言,一起交流讨论
-
外网访问树莓派服务器(内网穿透)
2021-01-12 12:39:57本教程使用花生壳,十分方便、对树莓派有官方支持,也可折腾其他内网穿透工具。 官方文档:http://service.oray.com/question/2680.html 下载地址 https://hsk.oray.com/download/ 下载安装包后,传到树莓派,通过...本教程使用花生壳,十分方便、对树莓派有官方支持,也可折腾其他内网穿透工具。
官方文档:http://service.oray.com/question/2680.html
下载地址 https://hsk.oray.com/download/下载安装包后,传到树莓派,通过cd命令进入对应下载目录,输入下面的命令进行安装:
dpkg -i phddns_3.0.4_systemd.deb
(phddns_rapi_3.0.3.armhf.deb为安装包名称)
安装成功后,将显示此树莓派的SN码、默认密码以及远程管理地址。
通过该SN码和密码登录花生壳控制台,可绑定个人账号。接下来添加映射
外网域名可以选择花生壳赠送的免费域名,也可填写自己注册的域名。
内网主机填写树莓派在内网的IP地址,端口号80
即可从外网访问树莓派服务器! -
[我的树莓派服务器]树莓派自动通过东南大学Web认证并报告IP地址!
2018-11-29 02:45:38一开始只有在树莓派上装MySQL的想法,在经历了数日的YY,最终决定顶着数门考试的压力重新把树莓派挂到外网上作服务器。 其实之前也有过成功的尝试,但上次是经过宽带路由器挂上的,只需要简单进行端口转发即可。...1背景
这学期从开学开始就在忙托福,考完了之后仍旧每日碌碌而不知所为,跋山涉水带回来的树莓派也吃灰了好久。
前段时间做项目突然要用到SQL,听说在Win下的卸载非常麻烦,于是脑洞大开。一开始只有在树莓派上装MySQL的想法,在经历了数日的YY,最终决定顶着数门考试的压力重新把树莓派挂到外网上作服务器。
其实之前也有过成功的尝试,但上次是经过宽带路由器挂上的,只需要简单进行端口转发即可。这次由于没有续订宽带,所以只能用校园网。一个很大的问题——
要让没有常规I/O设备的树莓派(就是这么穷酸)自动通过校园网Web认证,并报告IP地址进行远端访问。
很明显,本次作业的问题可以一分为二:自动Web认证和IP地址报告。
下面将尽可能详细地介绍作业过程,但是由于内容的特殊性,可能帮不到读者了。
2设备
树莓派3B+
SenseHat上的摇杆和LED点阵
一台Win10电脑
东南大学无线校园网
3自动通过校园网Web认证
3.1安装火狐浏览器
3.1.1为什么不用Chromium?
在Raspbian系统下用Selenium调起原生的Chromium浏览器异常困难。
首先是Root权限下必须以
chromium-browser --no-sandbox
禁用沙盒模式的参数运行
其次是调用时无限报错
selenium.common.exceptions.WebDriverException: Message: Service /usr/lib/chromium-browser/chromedriver unexpectedly exited. Status code was: 127
可能是chrome和chromium之间微妙的区别导致的错误吧……最后也没找到适合树莓派的Chrome,死忠粉只好转投火狐了……
3.1.2火狐安装过程
感谢丹侠啊GODOG的这篇文章
【Selenium】Raspbian+Selenium+Firefox
它囊括了从浏览器安装方式到driver的下载链接、版本挑选的所有内容,可谓详尽。诸位尽可参考。
3.2自动通过Web认证的Python实现
这一步重新利用了我这篇文章中介绍的代码
再次感谢zcy0xy学长的原教程
精简化的代码如下:
def login(): browser = webdriver.Firefox() browser.get('http://w.seu.edu.cn/') username_input = browser.find_element_by_id("username") password_input = browser.find_element_by_id("password") login_button = browser.find_element_by_id("login") username_input.send_keys('一卡通号') password_input.send_keys('统一认证密码') login_button.click() browser.close()
到这一步,树莓派就能成功通过校园网认证了。那么如何在互联网的茫茫人海里找到它呢?
4SenseHat简易I/O实现IP地址报告
SenseHat是个好东西。不仅输入、输出、传感器一应俱全,而且插在树莓派上非常美观。美中不足就是占用了所有的GPIO口……导致挂载墨水屏的时候必须把它拆下来。另外Raspbian系统自带茫茫多的示例代码,可以发现sense_hat这个模块已经写好了摇杆响应和LED点阵输出字符串的函数,不可谓不良心。
通过操作SenseHat上的摇杆,可以令树莓派执行想要的功能:比如用Hat上的LED点阵输出IP地址,或者是执行一次自动登录函数。这就是整个简易I/O的逻辑。
4.1获取本机字符串形式的IP地址
Linux下可以简单地通过在Terminal中输入命令
iwconfig
来查看IP地址,而这样得到的并非我们想要的简练的IP地址。怎么办呢?借助这篇文章中提供的Shell命令就可以了
需要注意的是,在Python中需要转义字符来正确输入引号。
4.2简易I/O控制的Python实现
直接上代码!
from sense_hat import * import os from selenium import webdriver hat=SenseHat() def login(): browser = webdriver.Firefox() browser.get('http://w.seu.edu.cn/') username_input = browser.find_element_by_id("username") password_input = browser.find_element_by_id("password") login_button = browser.find_element_by_id("login") username_input.send_keys('一卡通号') password_input.send_keys('统一认证密码') login_button.click() browser.close() def show_ip(): ip=os.popen('/sbin/ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk \'{print $2}\'|tr -d \"addr:\"').read() hat.show_message(ip, 0.05, (100,100,100)) while True: event = hat.stick.wait_for_event() if event.action == ACTION_PRESSED: if event.direction == DIRECTION_MIDDLE: show_ip() if event.direction == DIRECTION_UP: login() if event.direction == DIRECTION_DOWN: login() if event.direction == DIRECTION_LEFT: login() if event.direction == DIRECTION_RIGHT: login()
摇杆部分很大程度时抄例程的……
这样,树莓派终于不用在无线热点里蜗居,而可以直接拥抱互联网的大海了!
感谢阅读!
181129于江宁
-
STM32 GPS悬停飞控 (三十八)树莓派 服务器中转
2019-09-29 06:44:43由于要用树莓派和lte,所有的数据都要经过公网,但是无论是树莓派还是用户终端都没公网ip,所以要用一个服务器中转一下。 socket_transfer.py就是中转服务器。serial_socket_connect.py运行在树莓派上,是socket... -
外网访问树莓派服务器(自购域名+Sakura Frp内网穿透)
2020-07-18 19:44:54注册Sakura Frp账号,进入管理面板后,创建隧道,服务器选择可建站类型的,隧道类型为HTTP,本地地址为树莓派IP地址,本地端口和远程端口均为80,绑定域名输入自己购买的域名。 若选择国内的服务器,需要网站备案... -
STM32 GPS悬停飞控 (四十)树莓派 服务器 自动启动
2019-10-02 09:52:43树莓派不能先建立wifi再拨号,否则拨不上去,一定要先拨号再启动wifi,另外route不要在rc.local里做,否则wifi信号就没了。但是我发现运行python代码的时候会自动配置上路由表,效果跟route一样。 服务器首先要在... -
-
用树莓派打造服务器
2017-01-23 21:08:41用树莓派打造服务器 -
树莓派造服务器(三):内网穿透方案
2020-08-21 22:49:21树莓派有了LAMP,已经可以承担起服务器的工作,如果你只打算做家庭服务器的话,本篇文章完全没有必要,但如果想要在外面也能了连到家里内网中的树莓派服务器,就需要完成这样一个工作:内网穿透。 内网穿透有很多种... -
树莓派ftp服务器
2017-04-09 18:04:05参考链接:... 树莓派通过FTP传输数据 1.树莓派中安装FTP sudo apt-get install vsftpd 2.文件配置 sudo vim /etc/vsftpd.conf 3.修改以下选项:前面带# -
树莓派+ftp服务器
2018-02-18 18:01:39树莓派+ftp服务器 树莓派实现作为ftp服务器,电脑可以通过ftp与树莓派之间进行文件的传输 -
树莓派 mysql集群_多树莓派集群服务器
2021-01-26 03:20:37树莓派使用实例之:2 Pi R 第二篇:Web服务器在我的上一篇文章中讲过如何做一个高可用系统:两个树莓派布署上 GlusterFS 集群文件系统,就变成一个容错文件服务器了。在这篇文章中我们会基于这个高可用系统构建另一... -
树莓派mqtt服务器的搭建
2019-06-03 17:15:05树莓派mqtt服务器的搭建 进入树莓派官网下载树莓派系统,选择raspbian系统 选择带图形界面的系统并下载。 选择带图形界面的系统并下载。 下载etcher,将下载好的镜像文件将系统安装到内存卡中。 将树莓派接入网络... -
树莓派LNMP服务器配置
2020-01-20 15:03:58转载: https://web-security.cn/rapberry_pi_4b_install_php7.3_nginx_mysql/ 在树莓派4B上搭建Web服务器环境:PHP7.3 + Nginx + Mariadb。数据库Mariadb是MySQL的一个分支,API和命令行兼容MySQL。 ... -
树莓派WEB服务器
2017-12-03 16:35:01由于好多版本的更新,参考很多大神的配置后,发现有的版本更换后,一些文件修改的地方和位置,都不一样了。 配置步骤请参考下面俩个网站:http://blog.csdn.net/xdw1985829/article/details/38919495 ...