Tumgik
#gt 100 prompts list
navar44 · 2 years
Text
Hunted
A bit of writing based on @aaytaro-gt ‘s Inktober prompt list.
Day 11 - Monster
==
Dear journal, 
I ruined my last sock today. The hole in the sole did not hold up well after the rain yesterday, and my foot tore through it this morning. That leaves me 100% sockless now.
I still have my boots, as worn down as they are, but the chafing is already annoying since I’d been swapping which foot my sock was on last week. I might need to use those dinky sandals now, but they’re not really made for rugged terrain.
I miss when I first got here and my pack was full of the gear I’d packed for camping in the Catskills. When I’d wandered amongst the trees that were as tall as I was, watching tiny deer and little bears scatter at my feet.
It was weird, but I had what I needed. Now that it's been nearly two years, I just miss things my size. I miss bathing in warm water. I miss eating normal food, I miss latrines. I miss my friends, my parents.
The writing smudges out
Sorry journal, They found me again. Not that it's hard for them to find me, I leave giant trails, but they caught up all the same.
I miss not being treated like a monster.
When I first came across the village in the mountains, I hadn’t known what to do, but the villagers wasted no time riddling my clothes and arms with arrows. They stung, so I ran.
They must have told someone about me, because these hunters, for lack of a better term, started popping up all over the valley. I’d leave if I could, but the mountains are very cold and tall and the only pass between them is through the village.
I’ve tried talking and reasoning with them, but they speak a language I don’t know; it sounds like nothing I've ever heard before. I wonder if they’d even listen anyway.
The only saving grace is that I think they think I'm harmless. They’re not trying incredibly hard to kill me, which I’m sure they could, given time, and I have made sure not to harm a soul. 
Hell, I even saved one of the hunter’s lives when a boulder nearly crushed him! I don’t think he’s come back at least, but the others always do.
One is a barrel chested man with a crossbow and two dogs. The bolts stick in my skin like large splinters, and it's hard to not hurt the dogs as they run between my feet. I usually just run as fast as possible until I reach the highlands past the river, then I just try to hide in the mountains until the barking fades away.
Another is a trio, wielding bows and arrows lit with pitch or tar. Those three have ruined most of my clothes, destroyed my sleeping bag, and they even stole my matches! They don’t pop up as much, but they’re always shouting what I can only imagine are insults.
There's a pair, who I think are married, that hunt me on horseback, another group that seem more like mercenaries than hunters, some kid who probably just wants a name for himself, and many more that come and go as the seasons change.
After two years you’d think they’d stop, you’d think they’d realize I didn’t want to hurt them, I didn’t want to scare them: I just want to go home. 
14 notes · View notes
regard-luxury · 2 years
Text
2023 Nissan Z First Drive Evaluate: Zippy, Zesty Zporty
The 2023 Z is a bit longer than the 370Z, but width and top are unchanged, together with the one hundred.4-inch wheelbase. Both automobiles also have identical headroom and legroom, in accordance with Nissan. First launched in Japan in 2016 within the Nissan Note to rave reviews, e-Power delivers the same 100% electrical motor-driven expertise found in the LEAF to generate prompt torque. Unlike typical hybrid methods, however, an onboard gasoline engine purely acts as a generator to charge the batteries and doesn't drive the wheels. The sporty coupe helped put the corporate on the map when the car launched over 50 years ago.
Pedals are set up nicely for heel-and-toe downshifts, and it's made even higher due to the 3.0-liter's rapid throttle response. When I do not want to dance on the pedals throughout downshifts, the manual's rev-match system works brilliantly. Entering brake zones, the Performance trim's four-piston entrance and two-piston rear brake calipers with elective Nismo brake pads will sluggish things down with confidence, and the suspension handles the front weight transfer nicely.
While the new Z retains a lot of its joints and bones from the previous-generation 370Z, its inside is a richer expertise with better seats, a wider infotainment screen, and a telescoping steering wheel. It will not be as thrilling to hammer as the Toyota Supra, however the Z nonetheless offers driving thrills, and we’re grateful to have it back within the sports-car phase. Like its beastly brother, the Nissan GT-R, the Z is powered by a twin-turbocharged V-6. While all-wheel drive is on the market within the Infiniti, Nissan is sticking with rear-wheel drive completely for the Z. The turbo six provides the Z lots of zip, however our manual-transmission test car hit 60 mph in four.5 seconds, nicely behind the Supra.
Good luck locating the only individual on the planet who can declare to personal the world's quickest car on the time. Nissan decided to make the R34 GTR shorter "from entrance to rear", plus make the entrance wheels closer to the entrance. In 1967 Nissan introduced its new highly advanced four cylinder overhead cam Nissan L engine, which whereas just like Mercedes-Benz OHC designs was a very new engine designed by Nissan. This engine powered the model new Datsun 510, which gained Nissan respect in the worldwide sedan market. The automatic Zs get two drive modes, Standard and Sport, with the former best for commuting and grand touring.
It was a success with sports car buyers however its low starting value additionally meant it turned popular with the drift neighborhood, as its balanced chassis and straightforward building made it a super candidate for modification. Car and Driver list the 240SX's authentic starting price at $12,999, but at present consumers will have to pay even more than that for a pristine example nissan sports car models. Yes, Nissan has nice options of sports cars to choose from. Its Datsun sports cars, Z sequence sports automobiles, and GT-R are at the high. However, the latest Juke-R can additionally be some of the demanded cars at McAllen Car dealerships. Nissan Juke is probably certainly one of the greatest TX sports automobiles ever made by Nissan.
Over the years, it has had Japanese graphics, a roof, no roof, a slim and pointy development, a la the Back to the Future car and heaps of different interesting stylistic choices. The Car Guide is the benchmark of excellence for the Canadian automotive panorama. It presents information, evaluations, and exclusive videos, in addition to the entire important particulars concerning new and used automobiles. "I'm very proud that Nissan continues within the sports car recreation nissan sports car models," Cates said, with nice enthusiasm. "And I assume it is an actual credit to our prospects, and the culture behind 'Z' that retains the spirit alive, and provides us a purpose to deliver the brand new one to the market." Great looks combined with fine efficiency in high four-wheel drive types, particularly 3.2 V6, made the TT an instant hit in both 2+2 Coupé and two-seat Roadster varieties.
The new Z is scheduled to hit supplier tons subsequent spring as a 2023 model. And better of all, at a beginning worth of around $40,000, the sports coupe is shaping as much as look like simply as a lot of a performance cut price as its first ancestor. Mods and upgrades are widespread nissan sports car models, either official Nismo or aftermarket; avoid cars which have been thrashed on tracks. A ticking sound from the engine, growing when revved, denotes a worn gas dampener . Irritating quite than disabling, each costs about £200 new or £30 used.
0 notes
lasclhs · 2 years
Text
Voicemod lifetime license discount
Tumblr media
VOICEMOD LIFETIME LICENSE DISCOUNT FOR FREE
VOICEMOD LIFETIME LICENSE DISCOUNT HOW TO
VOICEMOD LIFETIME LICENSE DISCOUNT SERIAL KEY
VOICEMOD LIFETIME LICENSE DISCOUNT LICENSE KEY
VOICEMOD LIFETIME LICENSE DISCOUNT ACTIVATION KEY
License key voicemod pro crack removal quickly fixed my problem.
VOICEMOD LIFETIME LICENSE DISCOUNT LICENSE KEY
Voicemod pro license key list who contribute from Sweden, Italy, Finland, USA, Colombia, Philippines, France and all over the u. Then validate it using the blue button that says quot Activatequot If your key is a valid one, you will be prompted with a pop-up confirmation and you will become quot Proquot and get access to all the content and features. You will see there the input space that says quot Enter your Voicemod license keyquot to type or copy paste the license you received by email. There#39 s a tutorial for new users to make the most of this software. The free version is a demo and comes with 7 voice presets. The cost of the lifetime license is 20, and there#39 s also a one-time-only option for 10 or 4. The Pro version of Voicemod is available for download. Voicemod Pro 2.6.0.7 Crack With License Key 2021 Free Skip to main content Due to a planned power outage on Friday, 1/14, between 8am-1pm PST, some services may be impacted. Free Real Time Voice Changer amp Modulator - Voicemod. The best approach to utilize Voicemod Key is simple: move without charge, install and use the voice modulator/modifier with free effects. Voicemod Pro Full Crack Key Features and Ekiga, download the software and. Voicemod Pro Crack License Key freeload Full is compatible with online games such as PUBG PlayersUnknown Battleground hack. search it on youtube its old version but it still does the job LOL. Licenses and subscriptions - Voicemod.ĭownload crack gt Get virus gt PC gone. You can filter by in your email: and click on quot Click here to transfer the licensequot. Go to your inbox email associated with your purchase remember that it may not match the email with which you have logged in, search on your email for your request to link your Voicemod PRO license.
VOICEMOD LIFETIME LICENSE DISCOUNT FOR FREE
Hello guys,To download voicemod pro application for free follow the given steps-download the file. Voicemod Pro 2.31.0.3 Crack With License key Full Version.
VOICEMOD LIFETIME LICENSE DISCOUNT SERIAL KEY
Top Offers From Voicemod Pro Crack With Serial Key Key 2021 freeload: Voicemod Pro Crack is a fun sound and audio card changer app for Windows, macOS, and Linux. Voicemod Pro Key also protects your personal information and private talks. This application is a real voice changer. you can change your voice like human beings or robots. you can change your voice in any form of voice.
VOICEMOD LIFETIME LICENSE DISCOUNT ACTIVATION KEY
Voicemod Crack Activation Key 2021 freeload It can mix more than 42 voice parameters. Voicemod pro free license keyquot Keyword Found Websites Listing. Can I use my license in a different computer? I would like to change my license to a different email.
VOICEMOD LIFETIME LICENSE DISCOUNT HOW TO
Will your Voicemod v1 license work for V2? How to buy a second license or make a gift. The first time you purchase a license for VOICEMOD, you will be asked to confirm your email address and a message will be sent to you with the license key code with which you can activate VOICEMOD and use all its features or alternatively the license will be directly associated with your user account. Further, there are two versions you get a three. Voicemod Crack can entertain others in such a way by using Voicemod Pro License Key voice changing application this will make your market high then. Voicemod - The #1 voice changer for gamers and streamers Voicemod is a versatile real-time voice changer and soundboard designed to integrate directly into any video game, communication application, or streaming tool. You are purchasing a 100 discount code for a Voicemod PRO lifetime license. Description System requirements Key activation. The Voicemod pro key can take 20 minutes SKD implementation and always fun to users. It super and easy to use and have unique funny features. The Voicemod voice changer can change your voice live. Voicemod Pro License Key gives you pro features that are enabled to use all 42 different voice effect. VOICEMOD PRO CRACK 2022 | DOWNLOAD VOICEMOD PRO - YouTube.
How to purchase a Voicemod license Voicemod.
Voicemod License Key - ourfasr - Weebly.
Voicemod PRO License - #1 real-time voice changer DE - G2PLAY.NET.
Voicemod free license - reterunlimited.
Free Real Time Voice Changer amp Modulator - Voicemod.
Voicemod Pro 2.31.0.3 Crack With License key Full Version.
Voicemod pro free license keyquot Keyword Found Websites Listing.
VOICEMOD PRO CRACK 2022 | DOWNLOAD VOICEMOD PRO - YouTube.
Tumblr media
0 notes
icerats · 4 years
Text
Warnings: Fear of death
Part One
100 G/T Prompts masterlist
Borrowers, Trauma, & Pasta: Chapter 2
(16. Trust)
Will watched as the two siblings stared at him with a mixture of fear in confusion. They didn't say anything, just eyed him warily. That was okay, it wasn't like he wasn't used to having one sided conversations. Being a social reject came in handy sometimes. 
"I thought you guys might be hungry." Will said, pointing at the noodle on the 'plate'. "Though I didn't know I had another guest here. I'll get a plate for you too. What was your name? El was it?"
"Don't call her that." The male one said, his eyes glaring through his black matted hair. 
"Ian! Do you want to piss him off?!" she hissed back at him.
The girl looked up at Will in fear, as if she was expecting some sort of negative reaction. Guilt tore at him for being her source of it.  
Will gave him a reassuring smile. "It's alright. What should I call you then?"
"None of your business!" The one called 'Ian' said before the girl could say a word. 
"Okay, fine mr. 'none of your business', do you guys want some pasta?"
Ian narrowed his eyes at him. "What game are you playing at?"
"Excuse me?" Will asked in confusion. 
"I know you giants aren't kind. Why are you giving us food? Did you poison it!?"
"God no!" Will snapped. Both borrowers flinched at his loud tone. "Sorry," he muttered, quieter now, "Listen, is it really that hard to believe that I don't want to harm you? I'm not a psychopath, okay? I'm not just going to harm some people for being smaller than me."
That didn't seem to convince Ian, but the blonde one seemed to be considering his. words.
"R-Really?" she asked in disbelief. "You a-aren't go-going to har-harm us?"
Her brother shot a glare in her direction. "Really El? Don't be naive. I know you are sick and haven't eaten in days so you must not be thinking clearly, but you can't trust him. Don't make the same mistake our parents did."
"Wait.. you haven't eaten in days!?" Will looked at the small girl with concern. She didn't look well at all. She was as scrawny as her brother and looked just as underweight and malnourished. Her unkept stringy hair clung to her forehead, which was slick with sweat. The young girl was unnaturally pale, except for her red nose and bloodshot eyes. Was she sick?
The young girl sneezed and looked up at him warily. "Y-Yeah."
Will pushed the 'plate' closer to the girl. "Please eat."
She looked at the noodle hungrily. 
"El," her brother warned. "Don't eat that."
She glanced back and forth between Ian and the noodle, seemingly unable to decide. 
"It's alright," Will tried to reassure her. "You can eat it."
"El, no! Don't even consider it!"
Will sighed in frustration. This wasn't going anywhere.
Both of the borrowers flinched. 
"Sorry." Will muttered, he had the feeling he would be saying that word a lot. "Is there any way I can prove it's not poisoned?"
Ian looked up at him, eyes filled with a mixture of fear and distrust. "No."
Will wanted to slam his head into the counter. This was getting nowhere. "What if I eat it? Then will you believe it's not poisoned?"
Ian scoffed. "Of course not! It's obvious that you put just enough poison in the food to hurt us but not you. It would take a lot more to harm you, wouldn't it!?"
This was it. The paranoia wafting from this dude had already taken too much of Will's sanity. "Okay fine. I give up. You don't have to eat it if you don't want too. Clearly I'm just scaring you. I'll leave. You guys can go, just please don't hurt yourself."
And with that Will left the room, calling Olivia on his way out.
~
Ian was dumbfounded. Never in his life did he expect a giant to just give up. When he flat out refused to eat that poisoned food, he expected the giant to yell and scream, maybe turn Ian into a red stain on the countertop. The last thing he was expecting was this.
No way did that giant just give up. He HAD to be planning something. Had to have some sort of ulterior motive. But what could it be? Wait.. didn't the giant call someone on the way out? Shit! He called someone on the way out! Pest control! The fucker called pest control to kill him!
"Ian, are you alright?" his sister started rambling to him, "Why aren't you saying anything? Are you mad at me? I'm sorry I talked to the giant, okay? I-I just didn't want you to get hu-"
"Elissa! We have to get out of here now!"
"Why? Because we were seen? He honestly didn't seem that bad-"
"El! Don't be stupid, that giant was trying to trick us and you fell for it! He just called pest control! We need to leave, NOW!"
Elisa's face turned white as a sheet. "P-Pest control?"
Ian grabbed her arm, "Come on, let's go!"
Elissa didn't. Instead she started violently coughing. "I-I ca-can't. It already took too much e-energy walk over here. J-Just go without m-me."
"No! I won't leave you! I'll carry you if I have too!"
Elissa frowned softly, looking seconds away from passing out. "We both know you are too weak to carry me. Just go, mom wouldn't want us both dead."
"No!" Ian summoned all the strength he had, and carried her. Even in his weakened state, she felt surprisingly light. Too light. They had to get food the second they got out of here. Ian glanced back at the door one more time, and then ran.
~
Olivia tapped her fingers on the table impatiently. Ian was supposed to be here fifteen minutes ago.
"Is there anything I can get you?" The barista asked for the third time.
"No. Just waiting for a friend."
"Well if you're going to sit at a table, you'll need to order something." Olivia swore her tone just got colder. Impatient bitch, wasn't it a barista's job to be nice?
"Ugh fine, gimme a venti vanilla bean créme frappe."
"And what would you like to get for your friend?"
"I'm not paying for him."
Olivia swore she saw judgement flicker on her face. "And what is your name miss?" Nosy bitch, the hell is her problem? I'm not paying for a jackass who is late.
"Olivia. With an 'O'. "
"Thanks, it will be out in a few minutes. I hope your friend comes." Conceded bitch.
A few minutes later the barista came back, drink in hand and a smug smile on her face. "Where's your friend?"
"Not here." she grumbled, glancing down at the name written on her cup. "Alivea".
"Would you like your drink to go then?"
Olivia sighed, about to finally leave this stupid Starbucks, but then her phone rang.
About time Ian decided to actually give her a heads up on no-showing. "You better have a good fucking reason for ditching me ya know. You better not have ditched me for that guy you just met right? Please tell me you just gave him pasta and left."
"Livvvv, I couldn't just do that! I had to apologize! I think he was still pretty pissed I scared the shit out of him."
"What the fuck did you do to even scare him Ian!"
"Please stop sweari-" the barista said before Olivia flipped her the bird and walked to her car.
"Livv I didn't even do anything!" Ian insisted, "I just existed!"
"... Ian. How the hell did you even find this dude? You barely ever go outside."
"Ummmm promise not to freak out?"
Uh oh, there went all the alarm bells ringing in Olivia's head. "Sure.... now TELL ME."
"Well I uh kinda found him in my um-"
"Spit it out. I don't have all day."
"I uh found him like in my house."
"Some dude broke into your house!?!? Why the hell didn't you call the cops, and why the hell did you APOLOGIZE to the dude who fucking BROKE INTO YOUR HOUSE!!"
"Well technically I don't think he actually broke anything..."
"Ian, call the fucking cops. That lunatic could have murdered you in your sleep."
"If he wanted to do that, he would have done it by now. It's fine, he won't hurt me."
"... Wait... what the hell do you mean BY NOW? Has this dude been LIVING in your house?"
Ian paused, "I mean I think so? I mean it's not as bad as you think though, I don't think he had a choice!"
"If you're homeless you go to a homeless shelter, not break into people's houses and live in their closet!"
"I actually think they're living in the floorboards.... "
"THEY'RE!! What do you mean they're!! There is another psycho living in your house!?!
"Wait Liv, give me a chance to explain! It's not as bad as you think! They're harmless, and I think they just need help!"
"Give me one reason not to call the cops right fucking now!!"
"Promise to not call me crazy?"
"You're already crazy for letting two psychos live in your house."
Ian went radio silent for a couple seconds, then his voice returned in a whisper. "Well uh they're like uh kinda four inches tall?"
Olivia almost dropped her phone. No, it couldn't possibly be them, could it!?
The grip on her phone tightened. "What did they look like?"
"Um tiny siblings? Both really pale. The guy has black eyes and hair, and his sister has blue eyes and is blonde? Why? Do you actually belie-"
No, it was THEM.
Her phone smashed into a thousand tiny pieces on the concrete.
Part 3
32 notes · View notes
kieraelieson · 4 years
Text
100 G/t OC Prompts!
All of them submitted by you lovely people!
Feel free to use this yourself or to just watch as I write my way through it!
Ancient
Sticky notes
“It’s a welcoming gift.”
Flower inspired clothing
Under the stars
"I'm hearing music in my walls."
Tones
Unconventional bed
Traditions
Broken feathers
Pebbles
Life is a dream (as long as you count nightmares)
Warm, cold and everything in-between
Collection
What is love but an unfortunate coincidence?
Crumb
Jar
Leaf
Deal
Treasures are there to be found
The end of the world is the beginning of all
Good luck
Wherever we are, home's just a second away
Death is inevitable, but that doesn't mean he can't wait
Sticks and stones may break my bones but you will heal all my wounds
Empty rooms
Between tablespoons and ballgowns
Trapped
When all hope is lost turn to the moon
Paper clip
The darkest places may be the most beautiful
Scars might fade but stay forever
Tiny with a sword, very fiesty
"Don't break anything"
"I am very small and have no money, so you can imagine the kind of stress I am under"
*gently holds*
"I didn't know I was good at this until I met you."
Green thumb
Weeping Willow Tree
Mushroom Circle
"Please, I need your help."
Coffee Cup
Leaf Umbrella
"That's a pet?"
“It’s so quiet”
Hats
Mirrors
"What makes us human?"
Just don't look down
"Can you hear me?"
Key
Dollhouse: free real estate or cunning trap?
Blue Moon
Claws
"Don't be afraid of hope."
Recycling
Teapot
Heirloom
Falling forks and worse mishaps
Paper Plane
False Limb
Demons and angels are all the same
Haunted House
Mistaken Identity
Pollen grain
Paint me a sky and fill it with stars
Expect me to break
Eggs Benedict
See through my lies
Aged wood
Mechanical ingenuity
Hair spray and glitter
"Talk to me, I'm nervous"
Twirl me through the fields and dip me in the snow
Help me off the pedestal you've built for me
"I think you're almost as tall as me now"
Pixie Dust
Broken Wings
Knives and diamonds
Souls don't exist and the heart is just a muscle
Under over and through
A tight cinch and a clean break
Whenever you are, with you I will be
Sample size
My bones are stained dark with ink
Suffocate
Hate comes in all shapes and sizes
No thoughts, only chaos
Deep, dark forests and open, wide oceans
I'll climb for as long as you need me to
"I am not a jungle gym"
"don't eat that"
"A second, smaller dad in the walls"
"okay but what if we didn't"
Spider / spiderweb
"If you stand really really still, maybe they'll think you're a statue"
"A direct violation of the Borrower Code"
"I am not going to kidnap you, so stop asking"
Stay silent and safe
"How did you even manage to get stuck in that?"
17 notes · View notes
Animals
24. Animals
Humans - they were animals.
Markus paced back and forth in his cage as he watched the bean - James. Wrappers littered the table and clothes mimicked them on the floor. How did the human live? 
James lived a life of luxury, Markus decided. No stockpiles of food, no worries of capture or starvation. He had never noticed it when he borrowed, but since James had captured him Markus was forced to see it all up close. It disgusted him, how lazy this human was. 
Markus used to envy them and their access to everything. 
But now, now he wasn’t so sure. 
------
Words: 100
An interesting take. I was reading through a friend’s gt piece the other day and they mentioned stockpiles for when humans weren’t in the house. It made me think - and at the end of it, I realized that some borrowers would despise the humans for the apparent luxuries that are sometimes squandered. 
Thanks for reading!
Talya
27 notes · View notes
taiyos · 3 years
Text
PukiWiki構築(Mac mini[M1])
作業内容
作業メモを記録するため、ローカルでPukiWikiを準備する
前回作業の続き
手順1:事前確認
OS確認
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % sw_vers ProductName: macOS ProductVersion: 11.5.1 BuildVersion: 20G80 taiyo@Mac-mini ~ % uname -v Darwin Kernel Version 20.6.0: Wed Jun 23 00:26:27 PDT 2021; root:xnu-7195.141.2~5/RELEASE_ARM64_T8101
Apache確認
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % apachectl -v Server version: Apache/2.4.46 (Unix) Server built: Jun 17 2021 15:56:05 taiyo@Mac-mini ~ % sudo apachectl restart Password: taiyo@Mac-mini ~ % sudo launchctl list | grep http 1783 0 org.apache.httpd taiyo@Mac-mini ~ % sudo apachectl stop
PHP確認
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % php -v WARNING: PHP is not recommended PHP is included in macOS for compatibility with legacy software. Future versions of macOS will not include PHP. PHP 7.3.24-(to be removed in future macOS) (cli) (built: Jun 17 2021 21:41:13) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.24, Copyright (c) 1998-2018 Zend Technologies
SSH確認
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % ssh -V OpenSSH_8.1p1, LibreSSL 2.7.3
ホスト名確認
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % hostname Mac-mini.local taiyo@Mac-mini ~ % ping -c 3 Mac-mini.local PING mac-mini.local (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.061 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.159 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.154 ms --- mac-mini.local ping statistics --- 3 packets transmitted, 3 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 0.061/0.125/0.159/0.045 ms
手順2:Apache、PHP初期設定
/etc/php.ini作成
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % ls -l /etc/php.ini.default -r--r--r-- 1 root wheel 71554 1 1 2020 /etc/php.ini.default taiyo@Mac-mini ~ % sudo cp /etc/php.ini.default /etc/php.ini Password: taiyo@Mac-mini ~ % sudo chmod 644 /etc/php.ini
httpd.conf変更
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % sudo cp -a /etc/apache2/httpd.conf /etc/apache2/httpd.conf.`date +%Y%m%d%H%M%S` taiyo@Mac-mini ~ % sudo vim /etc/apache2/httpd.conf taiyo@Mac-mini ~ % diff /etc/apache2/httpd.conf.20210728024851 /etc/apache2/httpd.conf
113c113 < #LoadModule include_module libexec/apache2/mod_include.so --- > LoadModule include_module libexec/apache2/mod_include.so 184c184 < #LoadModule userdir_module libexec/apache2/mod_userdir.so --- > LoadModule userdir_module libexec/apache2/mod_userdir.so 186,188c186,188 < #LoadModule rewrite_module libexec/apache2/mod_rewrite.so < #LoadModule php7_module libexec/apache2/libphp7.so < #LoadModule perl_module libexec/apache2/mod_perl.so --- > LoadModule rewrite_module libexec/apache2/mod_rewrite.so > LoadModule php7_module libexec/apache2/libphp7.so > LoadModule perl_module libexec/apache2/mod_perl.so 200,201c200,201 < User _www < Group _www --- > User taiyo > Group staff 231c231 < #ServerName www.example.com:80 --- > ServerName Mac-mini.local:80 521c521 < #Include /private/etc/apache2/extra/httpd-userdir.conf --- > Include /private/etc/apache2/extra/httpd-userdir.conf
ユーザーホームのディレクトリ設定
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % mkdir ~/Sites taiyo@Mac-mini ~ % cp /Library/WebServer/Documents/index.html.en ~/Sites/index.html taiyo@Mac-mini ~ % sudo cp -a /etc/apache2/extra/httpd-userdir.conf /etc/apache2/extra/httpd-userdir.conf.`date +%Y%m%d%H%M%S` taiyo@Mac-mini ~ % sudo vim /etc/apache2/extra/httpd-userdir.conf taiyo@Mac-mini ~ % diff /etc/apache2/extra/httpd-userdir.conf.20210728103732 /etc/apache2/extra/httpd-userdir.conf
19a20,25 > > <Directory "/Users/*/Sites"> > Options All > AllowOverride All > Require all granted > </Directory>
Apache再起動
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % sudo apachectl restart taiyo@Mac-mini ~ % sudo launchctl list | grep http 2436 0 org.apache.httpd taiyo@Mac-mini ~ % sudo apachectl configtest Syntax OK
Webアクセス確認
Webブラウザから"http://localhost/~taiyo"にアクセスして、~/Sites/index.htmlの内容が表示されることを確認する
手順3:SSH接続準備
/.ssh/config作成
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % vim ~/.ssh/config taiyo@Mac-mini ~ % cat ~/.ssh/config Host saksv01 HostName xxxx.sakura.ne.jp User sakura_user
公開鍵作成
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini ~ % cd ~/.ssh taiyo@Mac-mini .ssh % ssh-keygen -t rsa -b 4096 Generating public/private rsa key pair. Enter file in which to save the key (/Users/taiyo/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /Users/taiyo/.ssh/id_rsa. Your public key has been saved in /Users/taiyo/.ssh/id_rsa.pub. The key fingerprint is: [以下略]
公開鍵配置
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini .ssh % ssh-copy-id -i ~/.ssh/id_rsa.pub saksv01 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/Users/taiyo/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys [email protected]'s password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'saksv01'" and check to make sure that only the key(s) you wanted were added.
手順4:PukiWikiファイル配置
GitリポジトリからPukiWikiファイルを取得
ターミナルから下記のコマンド操作を行う
taiyo@Mac-mini .ssh % cd ~/Sites taiyo@Mac-mini Sites % rm index.html taiyo@Mac-mini Sites % git clone saksv01:repos/Sites.git ~/Sites Cloning into '/Users/taiyo/Sites'... remote: Enumerating objects: 512, done. remote: Counting objects: 100% (512/512), done. remote: Compressing objects: 100% (451/451), done. remote: Total 512 (delta 158), reused 267 (delta 20), pack-reused 0 Receiving objects: 100% (512/512), 717.51 KiB | 234.00 KiB/s, done. Resolving deltas: 100% (158/158), done.
PukiWikiアクセス確認
Webブラウザから"http://localhost/~taiyo/WkWiki/"にアクセスして、PukiWikiの内容が表示されることを確認する
0 notes
icerats · 3 years
Text
Warnings: Just Ian's paranoia lol
Part 1, Part 2, Part 3, Part 4
100 G/T Prompts Master List
Borrowers, Trauma, & Pasta: Chapter 5
(20. Open)
Ian was out in the open. Blaze was hidden in a cupboard, and he was stranded on the countertop. Biting his lip, his eyes quickly scanned for potential places to hide. Blaze may have said they were sure the human wasn't coming back for a while, but he wasn't sure he trusted a word that came out of their mouth. It also didn't help that when he was last.. seen.. the human came home early. He didn't think his heart could handle another experience like that.However, Ian's present company wasn't helping his nerves. That disgusting termite was still staring at him.
Repressing a shutter, he averted his gaze. Instead he turned it to the nearby microwave, and moved closer, preparing to duck behind it if the human came back. Much to Ian's relief, 'Bestie' didn't seem particularly motivated to follow him, instead choosing to crawl closer to the cupboard Blaze resided in. Watching 'Bestie' crawling up the wall and in to the entrance of the cupboard, Ian noticed that the termite did seem to have a preference to follow Blaze around. Not that Ian was bothered by that, far from it. But he did find it strange.
Ian didn't know anything about termites, besides that they ate wood, were disgusting, and the fact that they were down right creepy. But based on his knowledge of other insects, they didn't act anything like that termite did. Ian didn't know what would be freaking him out more, a termite acting normally, aggressive and territorial, or a termite who wasn't that. A termite who acted the way 'Bestie' did, calm but entirely unpredictable. 
Suddenly Blaze appeared, foot still hanging down from the string, their face only centimeters away from his.
"Jesus, fuck!" Ian cursed, his voice audibly higher than normal. 
"Hiya! I got the food you requested!" They cried out cheerfully, holding an entire granola bar. "Sorry Bestie left by the way, I guess she is just attached."
"That's perfectly alright," Ian assured, finally managing to keep his voice steady, "Where is umm, Bestie now? Is it still in the cupboard?"
"Of course not silly!" They said cheerfully, that far too wide smile never leaving their face. "I've told you, she's attached. Literally and figuratively! She's chilling on my back right now!"
Ian took several steps back… coincidently of course. "Oh I see."
Blaze continued to lightly sway from the string, upside-down. "Oh! Are you sad? I can see if you can give her a back ride too if you want!"
Ian shook his head rapidly. "No! No! That's fine! You can keep it on you!" Desperately wanting to change the subject, he glanced at the granola bar Blaze was holding in their arms. "Hey, uh Blaze? Are you sure the human here won't notice you taking that much food?"
"Huh? Oh! The granola bar! Nah trust me! This human won't be suspicious of anything! She's so forgetfull that anything she notices missing, she just assumes she ate herself."
That sounded a little too easy. No way could a human actually be that stupid. Humans are dangerous, not just because of their size but also their intelligence. Something like that, simply isn't likely.
"Are you sure she isn't pretending?" Ian asked, "Secretly taking notes of what times you borrow and then planning to catch you when you're out in the open?"
Blaze bursted out into hysterical laughter. Dropping the granola bar, they used their now free hands to wipe away the tears of laughter that continued to fall from their face.
Ian glared. He didn't see what was so funny. They could be in serious danger here!
"HAHAHAHAHAHA!" They paused, "Oh wait, you're serious."
"Of course I'm serious!" Ian snapped. "Humans are nothing to joke about! They're dangerous! I don't know how you've survived this long acting like they aren't!"
Blaze's eyes widened, before they broke into another fit of hysterical laughter. "I'm sorry! I'm sorry!" They cried, gasping for air. "It's just that your like so serious! All the time! About everything! And you're so paranoid too! I'm sorry to burst your bubble, but this human really is just a sleep deprived idiot addicted to energy drinks. Nothing more. I've been living here for 2 years and she has yet to unveil her master plan of catching me."
Ian's face flushed. "Stop laughing at me! As a borrower, you're supposed to rather be safe than sorry! There is no guarantee that the human won't come back early so we should go back to the walls, NOW!"
Blaze snorted. "I've told you, she isn't coming back early. If she hasn't in the past 2 years I've lived here, I doubt she will today!"
As if on cue, the doorknob rattled, and the faint jingling of keys could be heard behind the door. On instinct, Ian rushed forward. Pulling Blaze towards him, cringing as he felt the termite attached to their back. The hook unlodged itself from the cupboard, missing Ian's face by a centimeter when it fell. Ian cursed, but continued to drag Blaze to the small space behind the microwave, ignoring them when they almost tripped over the string still tied around their ankle. 
Ian gasped for breath as they both finally reached the microwave, ducking behind it just as he heard the door unlock. Ian shot a venomous glare at Blaze, who's signature smile was now no longer present on their face. 
"So.." Ian hissed, "Am I too paranoid for you now, Blaze?"
10 notes · View notes
kieraelieson · 4 years
Text
A thing I’m considering lightly...
Early last year I started that 100 gt prompts.
What if I were to do it again? But this time with OCs?
I have a small smattering of them already, some of which I’d love to have encouragement in developing. And prompts might be very good encouragement.
I really enjoyed the 100 gt anyway.
Or perhaps is there another long list of gt prompts so I don’t do the same one twice?
23 notes · View notes
Beach
30. Beach
A small gurgle made Gillian open her closed hand. On her palm rested the pretty seashell she had picked up, just a few hundred feet behind her, on her slow amble along the private beach. 
It was white with peach splotches dotting its surface. Gillian brought her hand closer to her face, peering closer. The shell rocked in her hand. Gillian froze, breath caught in her chest. 
The shell moved again. 
It wasn’t her doing, there was something inside the shell. 
Was it a water snail? She prodded the shell. 
A tiny, slimy creature slid out from within.
A mermaid?
-----
Words: 100
That mermaid would by tiny. And probably really close to death. I hope Gillian had the heart to put her back in the ocean…
Thanks for reading!
Talya
22 notes · View notes
bittykimmy13 · 7 years
Text
A Familiar Face (GT)
Tumblr media
A million years late, but! Finals are over and I can write agaaain! :D
This is prompt from the 100 (GT) Themes Challenge. Feel free to send a number/word from the list for me to write about, and a specific character to go along with it, if you like!
This is the 9th installment of An Extra Roommate! 
Here are the other prompts that I’ve filled for the challenge!
"You can trust Nat and Amelie, you know," Zoe said, pausing in her search for the TV remote between the couch cushions to glance over her shoulder. "It's not like they would do anything to you. Sure, Amelie looks strong enough to rip the bumper off a car and use it like a baseball bat, but that's nothing. I'd be more worried about Nat squealing nonstop over you." Cassandra shuffled her feet on the coffee table. She reached for her bag strap, but it wasn't there, and she felt naked without it. Lily assured her she wouldn't need it for movie night, but Zoe's suggestion that they should reveal Cassandra's presence to the other two humans who lived in the dorm apartment left her wishing she had her climbing rope. But Natasha and Amelie were away for the weekend, at least. "I just… I don't want too many humans knowing about me," Cassandra answered.
Zoe straightened up with a triumphant aha, remote in hand. She looked over at Cassandra on the low table and shrugged. "It's up to you, I guess." Lily's footsteps retreated from the kitchen and trailed onto the carpet, accompanied by the tantalizing aroma of freshly-popped popcorn. "Are you bothering Cass about that again? Give it a rest, Zo. The less people know about her, the safer she is. Cassandra pursed her lips as Lily set the overflowing popcorn bowl on the other side of the table. "Not that I think they would hurt me. I'm sure they're very nice, but you know… you never know," she said in a small voice. "Whatever you say," Zoe answered distractedly, tossing the remote aside once she set up the movie. "Well, I call the couch. All of it." Lily chuckled and rolled her eyes. "Shocker. Better help me move this, then." Cassandra's heart gave a little lurch as Lily and Zoe got moved into position on either side of the table, gripping both ends to lift it. Before Cassandra could offer any protest, the human girls shared a brief smirk and picked up the table--the borrower along with it. With a squeal of surprise, Cassandra fell back onto her rear and hands. It was unnerving, feeling the massive piece of furniture sway beneath her. Carrying the table was an easy feat for a pair of humans, but to her, the thing was unmovable as the dorm building itself. The table gave one final rattle as it was set back down, leaving enough room on the carpet in front of the ouch for Lily to lay down comfortably amongst the blankets and pillows she and Zoe had brought from their rooms. "Sorry about that." Lily peered apologetically down at Cassandra, who was straightening up to stand. "Are you okay?" "I've had worse falls," Cassandra said, offering a little smile. Lily laughed weakly. "Don't remind me. Minutes later, they were situated for the night. Zoe was sprawled out on her claimed couch, while Lily was curled up on the floor in a nest of blankets. In front of her, she created a cozy nook in a pillowcase for Cassandra to settle in. However, seeing as Zoe had selected a horror film, Cassandra soon found herself scooting back into Lily's shadow. They both gave a small start when her back bumped into Lily's wrist, but rather than pull away, Lily adjusted to rest her hand at Cassandra's side, thumb brushing against her arm comfortingly. "We can switch it to something else, if you want," Lily murmured, low enough that Zoe couldn't hear. Heat rushed to Cassandra's face. She had barely known Zoe for a couple of weeks since panicking about ruining her art project. Already Cassandra had proved herself to be a scaredy-cat time and time again. Zoe wasn't cruel or taunting by any means, but Cassandra could imagine her rolling her eyes at the request to change the movie. "I'm fine," Cassandra dismissed, patting the side of Lily's finger. She peered behind her to see a little smile curve at Lily's lips. "If you say so." An hour and a half later, Cassandra regretted saying so. Both humans had fallen asleep some time before the climax, leaving Cassandra alone to watch the screen, wide-eyed. Even after the credits finished rolling, she stayed where she was, huddled under Lily's relaxed hand and glancing at the human's face to check for any sign that she was waking up. "Lily?" Cassandra murmured, getting no response. With a steeling sigh, she pulled away from the safety of Lily's hand, missing the cozy warmth the moment she stood up. She waded carefully through the blankets to reach the controller; Lily had snatched it away from Zoe halfway through the movie to turn down the volume of the shrieks in the movie--"If an RA comes with a noise complaint, you're dealing it!" Perhaps it would be easy enough to search for another movie for Cassandra to lull off to. Before she could even begin heaving the remote into position to point at the TV, something moved out of the corner of her eye. Cassandra whipped around, heart in her throat. She reached for her bag strap, only to remember she did not have it. Images of monsters and murderers flooded her imagination as peered at the space beneath the couch. A figure was approaching, and it was her size. Her heart felt like it was disintegrating all together at the sight of the familiar silhouette. "Vince?" she croaked. He paused briefly in the shadow of the couch, glancing cautiously at Lily's vast sleeping form. Somewhere deep down, Cassandra's heart ached at his familiarity. His blond hair was tousled as if he'd just gotten out of bed--like it always was. His lean form seemed stronger than before, but his face as he came out of the shadows hadn't changed a bit. "Cassie," he said, relief flooding his features. He beckoned urgently, and without her permission, Cassandra's legs obeyed. He pulled her into a tight hug. She didn't return the embrace, staying stock still in his arms. "Should've known you'd be captured eventually," he chuckled ruefully. "Huh?" she whispered. "C-captured?" Vince pulled away to smile down at her, hands gripping her shoulders tightly, like he'd missed her. "Yeah, dummy. I knew you were doing well with borrowing and taking care of yourself. Then I saw all your stuff was gone. You haven't been home in weeks, have you?" He threw a harsh glance at Lily, seemingly clueless as to why Cassandra had abandoned her home--to stay as far away from him. To live in the safety of Lily's bookshelf instead. She couldn't bring herself to correct him. Not when he was so close, standing with her arms in his grip. All those weeks she had come to trust Lily, even Zoe. Free of Vince. Now there he was, like a ghost come to haunt her. "Leave me alone," she breathed, and she didn't truly realize she'd said it out loud until Vince's face pulled into a frown. "What did you say?" She reared back. "I said go away!" Her voice was barely a hiss, shaking with tears. "You abandoned me! You left me to die! Lily… Lily helped me! She's my friend. Zoe, too. They would never, ever do what you did to me!" For a second, Vince stared at her in shock. This his expression darkened, and his blue eyes--murderous and cold-- slid back to where Lily slept peacefully. "Friends?" he spat. "All this time I thought… I thought you had grown up and started looking out for yourself instead of leeching off me. You're out of your mind. You've let them trick you!" He faltered, a million thoughts seeming to cross his face at once. In the end, he fixed a glare on Cassandra and snarled, "You're a danger to our kind, you idiot." That was all the warning Cassandra received before he yanked her fully into him, locking an arm around both her arms and her torso. A scream built in her lungs, but he clapped his free hand over her mouth. She writhed and kicked, but he had no trouble dragging her further under the shadows of the couch. Cassandra bucked wildly, eyes filling with tears as she desperately willed Lily to wake up. She was right there, right within earshot. But she was fast asleep, utterly unaware of Cassandra's panic. Wake up, she wanted to scream. Lily, please! He'll never let me go! As Vince dragged her across the room, Cassandra put up even more of a fight, wrenching her head free long enough to bite down on his hand. He hissed in pain and flinched his arm away. "Lily--!" Before she could loose a scream, Vince slammed her head into the coffee table leg. Stars popped behind her eyes, darkness blurring the edges of her vision and spreading like a stain. She stayed conscious long enough to feel Vince scoop her into his arms to carry her like a child. She managed to breathe Lily's name before she blacked out completely.
29 notes · View notes
sumikaooba · 4 years
Text
Hundreds of crores of corruption, approval of Fareast CEO before the investigation
Tumblr media
Listed of the headquarters demand Fareast Islamic Life Insurance Chief Executive Officer (CEO) said. A club about inquiry used to be formed towards Hemayet Ullah about allegations over corruption or irregularities amounting in imitation of hundreds regarding crores over rupees. But earlier than the stop regarding the investigation, the regulatory physique - the Insurance Development and Regulatory Authority (IDRA) - elected his appointment. Sources said so of July last year, Nazrul Islam, president regarding Fareast Life, applied in accordance with the IDRA for vindication in accordance with renewing the appointment about Hemayet Ullah, CEO regarding the company. Hemet Ullah has once accused over a number of irregularities then corruption. The Finance Ministry directed the IDRA in imitation of inspecting the allegations into August's ultimate year. Following the course of the Finance Ministry, the IDRA timbered a club in imitation of investigating Hemayet Ullah's putrefaction then irregularities. However, the IDRA elected the enrollment on Hemayet Ullah earlier than the taking care of was mysteriously completed. Subsequently, the regulatory physique prepared a superintendence report primarily based concerning the statements over Hemayet Ullah yet Nazrul Islam, forecaster regarding Fareast Life. In up to expectation taking care of the report, Hemayet Ullah was once acquitted on whole allegations over irregularities and corruption. On the other hand, MA Khaleq, the ancient director regarding Fareast Life, is totally responsible because of these irregularities then corruption. Insurance officer's speech IDRA's role among investigating Fareast Life's rot yet irregularities is mysterious. It is mystical according to okay the accused namely CEO before the give up concerning the management yet according to perform a record based totally of the one-sided announcement regarding the accused later. It stays standardized whether the persons involved in the superintendence hold fond such reports within return because of considerable sums concerning money. According to in accordance with the investigation, IDRA organized a precis on August 19 afterward reviewing Hemayet Ullah's application for an appointment. It is referred to as Hemayet Ullah, the adviser government officer over Farisht Islami Life Insurance, was once no longer re-appointed afterward investigating putrefaction into the public interest. Abu Hena has committed a complaint named Mostafa Kamal. The IDRA documents also highlighted allegations about putrefaction then irregularities towards Hemayet Ullah yet said the company's plank over directors may want to remain prompt according to reply between writing inside seven working days through sending a copy on the virtue sheet. Besides, an inquiry committee ought to be wrought in imitation of probing the allegations towards Hemayet Ullah. The IDRA since made a union in accordance with a look at the allegations towards Hemayet Ullah. A two-member research union headed through IDRA Executive Director Sheikh Mohammad Rezaul Islam was once formed. Another feature on the board is the director concerning IDRA. Shah Alam. As dense allegations against Hemayet Ullah >> Banking department chump Abdur Razzak to misappropriate the company's cash between one-of-a-kind names. >> Taking the company's cash via showing the virtue concerning the law bought between the odor over the company at Mirpur Chatbari among Dhaka is certain then an incompletely instances more. >> Showing development charge besides any development labor on the faith purchased in Chatbari. >> Personal debit on a man or woman retention an excessive role among the organization according to stay repaid from the company. >> Embezzling greater than 100 extremity rupees regarding the enterprise for quantity trading. >> Embezzling so cash into a range of names along with a mortgage to an assistant company. >> Deposit the company's cash so thy personal. >> Taking a great total regarding commission with the aid of commencement a faux tale of the contractor. >> MTDR in imitation of the business enterprise at an income regarding lots on crores about rupees through commissions within more than a few banks. >> To deliver hobby by withdrawing cash beyond the agency by using acceptance personal loans in opposition to the company's cash out of the bank. The IDRA last issued taking care of file over the allegations formerly that year. However, before that, the appointment about Hemayet Ullah was mysteriously elected by way of the IDRA of August 23 ultimate year. Meanwhile, afterward reviewing the superintendence report, such was once seen that no data was once presented between the superintendence file involving the archives related in conformity with the allegations. The file is based totally of the statements concerning Hemayet Ullah and Nazrul Islam, the president concerning the organization. MA Khaleq, an ancient governor regarding Fareast Life, has been solely blamed because of economic sepsis then irregularities of the company. Talking according to top officers of quite a few insurance plan companies, they stated so much when there is an irregularity in a company, the CEO cannot avoid his duty at all. So the CEO need to be responsible for the irregularities of the wooded area life. However, the IDRA's looking after the record has admitted digestion yet irregularities on the one hand, and over the lousy hand, the adviser government has been acquitted on these corruptions or irregularities. Such is the function over the IDRA in investigating allegations on irregularities amounting according to heaps on crores over rupees. They additionally suggested to that amount a CEO was once accused of irregularities. Asked in imitation of look at besides the Ministry of Finance. That is by what means IDRA shaped a board on inquiry. But whether the CEO's aegis used to be devoted before the investigation was once atop is questionable. Such activities honor suspicions concerning money laundering. The Ministry over Finance yet the Anti-Corruption Commission (ACC) should seem to be among the matter. When contacted, the IDRA existence insurance feature said. M. Musharraf Hossain informed Jago News to that amount if even is anybody irregularity between Fareast Islamic Life, the CEO can't avoid his accountability at all. The management is nevertheless ongoing. The CEO's approval has to no longer bear been partial earlier than the looking after used to be completed. It used to be convenient to perform a decision since a quick investigation. However, there is nonetheless a danger up to expectation assignment wish lie committed if discovered defective within the investigation. Jago News has repeatedly tried after contact Hemayet Ullah, CEO of Farisht Islami Life, however, no assertion has been received.
via Blogger https://ift.tt/30v9toh
0 notes
ssnlinux · 7 years
Text
Things I’ve Learned: FreeIPA
I've been a user of FreeIPA for quite a long time, mostly in home and lab environments that didn't really have any bearing on enterprise environments. I always saw it as a sort of Active Directory (it's not) for Linux and UNIX systems and used it to test various things. One example of using it to test "things" was practicing for my RHCE in 2016 and also studying my Red Hat Security Hardening. Now I've used it since version 3.0, and it definitely has come a long way since then. I never really took a lot of the time I thought was necessary to learn specific things about it, in terms of having it work with an Active Directory and even 2FA/OTP among other things. Many years ago, there were functions such as winsync (which is now deprecated) that helped with this, while even the sssd components began to slowly integrate Active Directory support directly.
To give some backstory to the title of this post: In my current job, we are a mixed environment shop. We have a handful of Windows, Linux, and UNIX systems. Because of this, we have two separate directory servers. We have an LDAP and an Active Directory. A few years back, I respawned conversations that were shut down by previous management: We need to consolidate directory servers into at least Active Directory. Practically all of our workstations run Windows or Mac. Our usernames between both directories are different (LDAP uses underscores between first and last names, AD had first initial, last name up to 7 characters and now it's first.last). You can imagine how confusing this is and how annoying this actually is.
You can imagine the challenges this brings. In fact, here's a list of challenges this poses for the organization.
New users get confused and think they login with user.name@domain, domain\user.name, user.name on Linux/UNIX systems
Users at times do not know what username is used for what application or system (is it user_name or user.name for $x?)
Introduction of OIM (oracle identity manager) and OAM (oracle access manager), which was setup incorrectly and managed poorly by incompetent team called "information security"
Now you might wonder why does this matter to my FreeIPA topic. Simple, it causes issues for the UNIX engineering team (which I now co-lead).
Managers and above as well as new users expect all their access to be already there for all Linux/UNIX systems they need to work on
Again, new users get confused and use AD usernames to login to Linux/UNIX systems
Access is defined on their LDAP objects as "host: hostname"
SUDO is hybrid: LDAP and /etc/sudoers.d files
Identity management tools, which have been in the environment for almost 4 years, were never designed to handle the above
Management is reluctant to go to "member" groups to define access to systems (to emulate "role based" access)
This is where I stepped in and suggested that we need to use a different product, even though I initially suggested we go to AD entirely. The problem with going to AD entirely is that it takes away the UNIX team's management, and plus we would probably need to buy other products or software just to get group policies to work. This did not sit well with majority of my team and I didn't like the idea either, especially because we then begin to lose a sense of control on our own systems. This is when I suggested FreeIPA, as FreeIPA at the time (version 4.4) supported IPA-AD trusts. This meant that it gave control back to the UNIX team to our own infrastructure. Logins would be from our AD, we wouldn't need to create accounts in FreeIPA. This reduces a lot of overhead on us, leaving LDAP to start to (hopefully) die off. My team as a whole agreed to the idea so I took the project and started it up.
This is what I've learned and achieved.
The Setup
The setup was easy for me. The network team delegated me a subdomain of one of our internal domains to make my life easier. The Windows team was also extremely helpful and helped me get the AD trust up. I didn't expect it to be a pain, as my tests at home succeeded. The trust was setup, enabling compat and posix attributes (uidNumber, gidNumber, unixHomedirectory, loginShell) to try and make the migration from LDAP to IPA easier. The Windows engineer also setup my team as well as two other teams with the attributes so I had a biggger test bed.
After doing this, I also set the domain resolution order (FreeIPA 4.5) to be the AD domain first. That way, logging in with just user.name without the @domain works without much an issue. And then, clients using sssd had full_name_format set to %1$s to make it less confusing for users on their prompts. I didn't like the idea of having a prompt like [email protected]@servername - that's extremely annoying to look at. When this is set, you are able to do id for users in both AD or IPA without the domain on the name and it succeeds on RHEL 7 and higher. Setting domain resolution order back to blank or not setting it at all will require the @domain to be used for logins, including in the compat tree. There's really no other clear way around this as far as I know.
SID Numbers
The issue with trying to do a cleanish migration is that you can't change gid numbers out from under people. FreeIPA creates a range for your domain and also creates a range for AD, even if you don't use it/you're using posix attributes. When you create groups outside of IPA's defaulted range, they will not receive SID numbers. In this case, I had to create another range and then rerun the proper SID generating scripts.
I created a range with this data:
Base ID: 10
Range size: 50000
Primary RID base: 200000000
Secondary RID base: 200050000
I then did an update across the board. This took a little bit.
# cat > /root/task/80-sidgen-task-conf.uipdate <<EOF dn: cn=$TIME-$FQDN,cn=ipa-sidgen-task,cn=tasks,cn=config add:objectClass: top add:objectClass: extensibleObject add:cn:$TIME-$FQDN add:nsslapd-basedn: $SUFFIX add:delay: 0 EOF # ipa-ldap-updater /root/task/80-sidgen-task-conf.update
SUDO
SUDO for clients older than RHEL 7 was very interesting when in a IPA-AD trust.
Legacy Clients
Our environment is ridiculously mixed. We have Solaris 8, 10, 11, RHEL 5, 6, and 7. We also have Fedora workstations that my team uses because we dislike Windows, but that's a different story. We have still been trying to get rid of Solaris 8 forever now, but without any movement. We decided to not attach Solaris 8 to FreeIPA to hopefully let the systems rot.
RHEL 5
"RHEL 5???" you might be thinking. Yes. It's been out of support since March 31, 2017. This company has no concept of anything "new" or wanting to get rid of technology debt. So since we were probably going to be stuck with RHEL 5 for another year or so, I had to figure out how to get it to connect to FreeIPA - not only as a client but also be able to see Active Directory users. The first thing I learned here: Always use the ipa-advise command - Seriously. This will help you out so much.
In my case, I used nss pam ldap to help here. What this provided at the very least is the ability to get sudo to actually work 100% of the time - sudo didn't work all the time when sssd was the id provider. Here's the issue:
The domain resolution order configuration causes multiple uid attributes to appear on objects in the compat tree - this is normal.
Group membership, even in the compat tree, is defined by [email protected], rather than just user. As far as I know, there's no clear way around this. Running groups or id will not show proper membership.
sudo probably only worked here because of the id output, even though I was logging in with first.last, my id shows up as [email protected] and associated that properly with my group membership
When using sssd, while the user would appear as first.last, group membership would never be applied. Here's what I mean.
dn: uid=first.last,cn=users,cn=compat,dc=ipa,dc=example,dc=com cn: First Last objectClass: posixAccount objectClass: top gidNumber: 1006800013 gecos: First Last uidNumber: 10000 loginShell: /bin/bash homeDirectory: /home/first.last uid: [email protected] uid: first.last dn: cn=unixadm,cn=groups,cn=compat,dc=ipa,dc=example,dc=com gidNumber: 5900 objectClass: posixGroup objectClass: ipaOverrideTarget objectClass: ipaexternalgroup objectClass: top ipaAnchorUUID:: removed cn: unixadm memberUid: [email protected]
I'm sure you see the problem. This causes other issues: If you're trying to use pam_hbac, it seems to want to work using pam_sss in the stack, not pam_ldap. With pam_ldap, it doesn't even try. With pam_sss, it tries, but it ultimately fails because it doesn't seem to be properly evaluating the rules and groups - again, this goes back to what I said: group membership is not seen with sssd fully while nss pam ldap can associate it to an extent.
As of this writing, I was never able to properly figure this out. What I noticed is in sssd, the group memberships were always intermittent. In fact, it always acted weird - if I did getent group unixadm, it'd show me. As soon as I ran id against my user, I'd disappear from the group. And I found this to be very troublesome. Sometimes it worked, other times it didn't. I could never really figure out why this was happening. One thing I did try was updating SSSD to 1.9.6 from a COPR repo. That didn't help.
Long story short: get rid of your RHEL 5 systems. At least RHEL 6 worked. Sort of.
Solaris 10
Alright, so this is where it gets interesting. Getting it to work with FreeIPA was a chore, a serious chore. The worst part about all of this is the communication from the system to FreeIPA is unencrypted. Yes, you heard this right. Unencrypted. I couldn't even get it to be OK with Kerberos login to at least have a secure channel. The saving grace here is that if you have a keytab on your system and login, it should just work. The other problem I had is I needed to use pam_ldap in my pam configuration.
First thing I needed is a profile that the ldapclient could use. I also created a solaris system account. Here's an example ldif below you can add into IPA.
dn: cn=solaris_authpam,ou=profile,dc=ipa,dc=example,dc=com serviceAuthenticationMethod: pam_ldap:simple authenticationMethod: simple objectClass: top objectClass: DUAConfigProfile bindTimeLimit: 5 cn: default cn: solaris_authpam defaultSearchBase: dc=ipa,dc=example,dc=com defaultServerList: pentl01.ipa.example.com pentl02.ipa.example.com followReferrals: TRUE objectclassMap: shadow:shadowAccount=posixAccount objectclassMap: passwd:posixAccount=posixaccount objectclassMap: group:posixGroup=posixgroup profileTTL: 6000 searchTimeLimit: 15 serviceSearchDescriptor: group:cn=groups,cn=compat,dc=ipa,dc=example,dc=com serviceSearchDescriptor: passwd:cn=users,cn=compat,dc=ipa,dc=example,dc=com serviceSearchDescriptor: netgroup:cn=ng,cn=compat,dc=ipa,dc=example,dc=com serviceSearchDescriptor: ethers:cn=computers,cn=accounts,dc=ipa,dc=example,dc=com serviceSearchDescriptor: sudoers:ou=sudoers,dc=ipa,dc=example,dc=com dn: uid=solaris,cn=sysaccounts,cn=etc,dc=ipa,dc=example,dc=com objectClass: account objectClass: simpleSecurityObject objectClass: top uid: solaris userPassword: secret123
I needed to create a keytab for the host.
# ipa host-add hostname.example.com # ipa-getkeytab -s pentl01.ipa.example.com -p host/[email protected] -k /tmp/hostname.keytab
I then transferred the keytab to the system and put it at /etc/krb5/krb5.keytab. I configured /etc/krb5/krb5.conf.
[libdefaults] default_realm = IPA.EXAMPLE.COM dns_lookup_kdc = true verify_ap_req_nofail = false [realms] IPA.EXAMPLE.COM = { } DOMAIN.TLD = { } [domain_realm] ipa.example.com = IPA.EXAMPLE.COM .ipa.example.com = IPA.EXAMPLE.COM domain.tld = DOMAIN.TLD .domain.tld = DOMAIN.TLD [logging] default = FILE:/var/krb5/kdc.log kdc = FILE:/var/krb5/kdc.log kdc_rotate = { period = 1d version = 10 } [appdefaults] kinit = { renewable = true forwardable= true }
Set the permissions of the keytab to 600, owned by root:sys. Once it was configured, I tested kinit [email protected]. If you get a message about "kt warn", it can be ignored. After this, set /etc/defaultdomain to your ipa domain (ipa.example.com). Configure /etc/ldap.conf.
base dc=ipa,dc=example,dc=com scope sub TLS_CACERTDIR /var/ldap TLS_CERT /var/ldap/cert8.db TLS_CACERT /var/ldap/ipa.pem tls_checkpeer no ssl off bind_timelimit 120 timelimit 120 uri ldap://pentl01.ipa.example.com sudoers_base ou=sudoers,dc=ipa,dc=example,dc=com pam_lookup_policy yes
Create /var/ldap if needed and create an NSS certificate database. You should also have your CA certificate as /var/ldap/ipa.pem.
# cd /var/ldap # /usr/sfw/bin/certutil -A -n "ca-cert" -i /var/ldap/ipa.pem -a -t CT -d .
At this point, I do the ldapclient init.
# ldapclient init -a profileName=solaris_authpam \ -a domainName=ipa.example.com \ -a proxyDN="uid=solaris,cn=sysaccounts,cn=etc,dc=ipa,dc=example,dc=com" \ -a proxyPassword="secret123" \ -D uid=solaris,cn=sysaccounts,cn=etc,dc=ipa,dc=example,dc=com \ -w qdbKnW1et pentl01.ipa.example.com
Now configure /etc/nsswitch.conf.
passwd: files ldap [NOTFOUND=return] group: files ldap [NOTFOUND=return] sudoers: files ldap netgroup: ldap
Now configure /etc/pam.conf
# Console login auth requisite pam_authtok_get.so.1 login auth sufficient pam_krb5.so.1 login auth required pam_dhkeys.so.1 login auth required pam_unix_cred.so.1 login auth required pam_dial_auth.so.1 login auth required pam_unix_auth.so.1 use_first_pass login auth required pam_ldap.so.1 rlogin auth sufficient pam_rhosts_auth.so.1 rlogin auth requisite pam_authtok_get.so.1 rlogin auth sufficient pam_krb5.so.1 rlogin auth required pam_dhkeys.so.1 rlogin auth required pam_unix_cred.so.1 rlogin auth required pam_unix_auth.so.1 rlogin auth required pam_ldap.so.1 # Needed for krb krlogin auth required pam_unix_cred.so.1 krlogin auth sufficient pam_krb5.so.1 # Remote Shell rsh auth sufficient pam_rhosts_auth.so.1 rsh auth required pam_unix_cred.so.1 rsh auth binding pam_unix_auth.so.1 server_policy rsh auth required pam_ldap.so.1 # Needed for krb krsh auth required pam_unix_cred.so.1 krsh auth required pam_krb5.so.1 # ? ppp auth requisite pam_authtok_get.so.1 ppp auth required pam_dhkeys.so.1 ppp auth required pam_dial_auth.so.1 ppp auth binding pam_unix_auth.so.1 server_policy ppp auth required pam_ldap.so.1 # Other, used by sshd and "others" as a fallback other auth requisite pam_authtok_get.so.1 other auth sufficient pam_krb5.so.1 other auth required pam_dhkeys.so.1 other auth required pam_unix_cred.so.1 other auth binding pam_unix_auth.so.1 server_policy other auth required pam_ldap.so.1 other account requisite pam_roles.so.1 other account required pam_projects.so.1 other account binding pam_unix_account.so.1 server_policy other account required pam_ldap.so.1 other session required pam_unix_session.so.1 other password required pam_dhkeys.so.1 other password requisite pam_authtok_get.so.1 other password requisite pam_authtok_check.so.1 other password required pam_authtok_store.so.1 server_policy # passwd and cron passwd auth binding pam_passwd_auth.so.1 server_policy passwd auth required pam_ldap.so.1 cron account required pam_unix_account.so.1 # SSH Pubkey - Needed for openldap and still probably needed for ipa # without this, ssh keys stopped working. sshd-pubkey account required pam_unix_account.so.1
I installed pkgutil from OpenCSW. Seriously, this will help you out tremendously.
# /opt/csw/bin/pkgutil -y -i sudo sudo_ldap # vi /etc/opt/csw/sudo.conf Plugin sudoers_policy sudoers-ldap.so Plugin sudoers_io sudoers-ldap.so # ln -s /etc/ldap.conf /etc/opt/csw/ldap.conf
After that, I went ahead and tested id, logins, etc.
bash-3.2# id louis.abel uid=25439([email protected]) gid=1006800013(aocusers)
The current problem is that id won't show group membership, yet if you run the groups command, it will. Just because it shows the groups, doesn't mean you can really work with the files that are group owned as such. This only changes if you login via [email protected].
Solaris 11
Solaris 11 was a lot more forgiving. I was able to get SSL to work and the sudo that they provide to work also. Most of the things above can be used. I'll point out which ones you can pull from above.
Create another profile on the IPA server.
dn: cn=solaris_authssl,ou=profile,dc=ipa,dc=example,dc=com authenticationMethod: tls:simple objectClass: top objectClass: DUAConfigProfile bindTimeLimit: 5 cn: default cn: solaris_authssl defaultSearchBase: dc=ipa,dc=example,dc=com defaultServerList: pentl01.ipa.example.com pentl02.ipa.example.com followReferrals: TRUE objectclassMap: shadow:shadowAccount=posixAccount objectclassMap: passwd:posixAccount=posixaccount objectclassMap: group:posixGroup=posixgroup searchTimeLimit: 15 serviceSearchDescriptor: group:cn=groups,cn=compat,dc=ipa,dc=example,dc=com serviceSearchDescriptor: passwd:cn=users,cn=compat,dc=ipa,dc=example,dc=com serviceSearchDescriptor: netgroup:cn=ng,cn=compat,dc=ipa,dc=example,dc=com serviceSearchDescriptor: ethers:cn=computers,cn=accounts,dc=ipa,dc=example,dc=com serviceSearchDescriptor: sudoers:ou=sudoers,dc=ipa,dc=example,dc=com profileTTL: 6000
Generate your keytabs and move them to the server.
Configure the krb5.conf file as necessary.
Set /etc/defaultdomain to your IPA domain.
Place IPA cacert into /var/ldap/ipa.pem
Your /etc/ldap.conf will need to be a tad different on Solaris 11. You will need to remove the TLS_CERT line. Solaris 11 no longer uses NSS.
base dc=ipa,dc=example,dc=com scope sub TLS_CACERTDIR /var/ldap TLS_CACERT /var/ldap/ipa.pem tls_checkpeer no ssl off bind_timelimit 120 timelimit 120 uri ldap://pentl01.ipa.example.com sudoers_base ou=sudoers,dc=ipa,dc=example,dc=com pam_lookup_policy yes
To configure nsswitch, you have to run commands (thanks oracle).
/usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/default = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/sudoer = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/password = astring: "files ldap [NOTFOUND=return]"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/group = astring: "files ldap [NOTFOUND=return]"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/host = astring: "files dns"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/network = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/protocol = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/rpc = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/ether = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/netmask = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/bootparam = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/publickey = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/netgroup = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/automount = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/alias = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/printer = astring: "user files"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/service = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/project = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/auth_attr = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/prof_attr = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/tnrhtp = astring: "files ldap"' /usr/sbin/svccfg -s svc:/system/name-service/switch 'setprop config/tnrhdb = astring: "files ldap"' /usr/sbin/svcadm refresh svc:/system/name-service/switch ; /usr/sbin/svcadm restart svc:/system/name-service/switch ; /usr/sbin/svcadm restart ldap/client
Now you need to setup all of your pam files. Here are the ones I configured and it worked.
# /etc/pam.d/krlogin auth required pam_unix_cred.so.1 auth required pam_krb5.so.1 # /etc/pam.d/krsh auth required pam_unix_cred.so.1 auth required pam_krb5.so.1 # /etc/pam.d/login auth requisite pam_authtok_get.so.1 auth sufficient pam_krb5.so.1 auth required pam_dhkeys.so.1 auth required pam_unix_cred.so.1 auth required pam_dial_auth.so.1 auth required pam_unix_auth.so.1 server_policy auth required pam_ldap.so.1 # /etc/pam.d/other auth definitive pam_user_policy.so.1 auth requisite pam_authtok_get.so.1 auth sufficient pam_krb5.so.1 auth required pam_dhkeys.so.1 auth required pam_unix_cred.so.1 auth required pam_unix_auth.so.1 server_policy auth required pam_ldap.so.1 account requisite pam_roles.so.1 account definitive pam_user_policy.so.1 account required pam_unix_account.so.1 server_policy account required pam_krb5.so.1 account required pam_tsol_account.so.1 account required pam_ldap.so.1 session definitive pam_user_policy.so.1 session required pam_unix_session.so.1 password definitive pam_user_policy.so.1 password include pam_authtok_common password sufficient pam_krb5.so.1 password required pam_authtok_store.so.1 server_policy # /etc/pam.d/passwd auth binding pam_passwd_auth.so.1 server_policy auth required pam_ldap.so.1 account requisite pam_roles.so.1 account definitive pam_user_policy.so.1 account required pam_unix_account.so.1 # /etc/pam.d/ppp auth requisite pam_authtok_get.so.1 auth required pam_dhkeys.so.1 auth required pam_unix_cred.so.1 auth required pam_dial_auth.so.1 auth required pam_unix_auth.so.1 server_policy auth required pam_ldap.so.1 # /etc/pam.d/rlogin auth definitive pam_user_policy.so.1 auth sufficient pam_rhosts_auth.so.1 auth requisite pam_authtok_get.so.1 auth sufficient pam_krb5.so.1 auth required pam_dhkeys.so.1 auth required pam_unix_cred.so.1 auth required pam_unix_auth.so.1 auth required pam_ldap.so.1 # /etc/pam.d/rsh auth definitive pam_user_policy.so.1 auth sufficient pam_rhosts_auth.so.1 auth required pam_unix_cred.so.1 auth required pam_ldap.so.1 # /etc/pam.d/sshd-pubkey account required pam_unix_account.so.1
The only issue is if you are using domain resolution order, trying to login without the realm name for AD users will cause an assertion error. I asked Oracle to fix this because Solaris 10 was fine. I don't know when they'll fix it. As of this writing, they claim October 20, 2017.
The actual current problem is that id won't show group membership, yet if you run the groups command, it will. Just because it shows the groups, doesn't mean you can really work with the files that are group owned as such. This only changes if you login via [email protected] or remove the domain resolution order entirely - this would cause you to have to login with username@domain.
HBAC
For legacy clients to authenticate AD users properly, you need an HBAC rule against the IPA servers that perform the task of talking to AD. I'd recommend creating an ipaservers group (if one doesn't exist already) of all of your IPA servers, and then creating the hbac rules.
# ipa hbacsvc-add system-auth # ipa hbacrule-add system-auth-legacy # ipa hbacrule-add-host --hostgroup=ipaservers # ipa hbacrule-mod --usercat=all system-auth-legacy
For legacy clients, you need the pam_hbac module. For RHEL 5, there is a copr repo that you can pull the RPM's for. For Solaris, you are required to compile them, which isn't fun, I understand. Below I'll show you how to compile the modules and how to utilize the module.
Solaris 10 ++++++++++
You need to install OpenCSW's pkgutil. I also brought the sources of pam_hbac from github over as a git clone in a tar file.
root# pkgutil -y -i libglib2_dev gmake openssl binutils gcc4g++ glib2 ar libnet root# cd /tmp root# tar xf pam_hbac.tar root# cd /tmp/pam_hbac root# PATH=$PATH:/opt/csw/bin root# autoconf -o configure ; autoreconf -i root# ./configure AR=/opt/csw/bin/gar --with-pammoddir=/usr/lib/security --sysconfdir=/etc/ --disable-ssl root# vi Makefile.am ## Comment out the man pages #if HAVE_MANPAGES #SUBDIRS += doc #endif root# make root# make install root# /etc/pam_hbac.conf URI = ldap://pentl01.ipa.example.com BASE = dc=ipa,dc=example,dc=com BIND_DN = uid=hbac,cn=sysaccounts,cn=etc,dc=ipa,dc=example,dc=com BIND_PW = secret123 SSL_PATH = /var/ldap HOST_NAME = hostname.example.com
After this, you can place the hbac lines in your pam file. I usually put it under 'other' and 'login' as "account".
login auth requisite pam_authtok_get.so.1 login auth sufficient pam_krb5.so.1 login auth required pam_dhkeys.so.1 login auth required pam_unix_cred.so.1 login auth required pam_dial_auth.so.1 login auth required pam_unix_auth.so.1 use_first_pass login auth required pam_ldap.so.1 login account required pam_hbac.so ignore_unknown_user ignore_authinfo_unavail debug # other account requisite pam_roles.so.1 other account required pam_projects.so.1 other account binding pam_unix_account.so.1 server_policy other account required pam_ldap.so.1 other account required pam_hbac.so ignore_unknown_user ignore_authinfo_unavail debug
To answer your question, yes. I had to disable SSL. This is because IPA has a lot of ciphers turned off. Solaris 10 doesn't support much higher, and because these are dynamically compiled (not static), they pick up both SSL libraries from OpenCSW and the system. But the system is picked up first and used.
Solaris 11 ++++++++++
Compiling on Solaris 11 is easier (thankfully).
root# pkg install autoconf libtool pkg-config automake gcc asciidoc docbook (some of these won't install, that's fine) root# cd /tmp root# tar xf pam_hbac.tar root# cd /tmp/pam_hbac root# autoreconf -if root# ./configure --with-pammoddir=/usr/lib/security --mandir=/usr/share/man --sysconfdir=/etc/ root# make root# make install root# /etc/pam_hbac.conf URI = ldap://pentl01.ipa.example.com BASE = dc=ipa,dc=example,dc=com BIND_DN = uid=hbac,cn=sysaccounts,cn=etc,dc=ipa,dc=example,dc=com BIND_PW = secret123 SSL_PATH = /var/ldap HOST_NAME = hostname.example.com
Pam is a little different here. I configured login and other just like on Solaris 10.
# goes at the VERY end of the account block in /etc/pam.d/other and /etc/pam.d/login account required pam_hbac.so ignore_unknown_user ignore_authinfo_unavail debug
General +++++++
You also need to create an hbac service in IPA.
# ipa hbacsvc-add sshd-gssapi # ipa hbacsvc-add sshd-kbdint
You would need to associate those in particular to your HBAC rule sets as needed for your legacy hosts.
Summary
What I've learned overall is that trying to get legacy clients to work with FreeIPA is actually simple if you were only using IPA. It begins to get tricky when you add in AD. The other thing I've learned is that there are companies that will not let go of their dying systems and we just have to live with it. Because this is the case and I know it will not change any time soon, I had to really put a lot of (unnecessary) effort into making this all work. RHEL 6 and RHEL 7? Easy. RHEL 5, Solaris 10/11? Not so easy.
This also gave me a more of a sour taste in my mouth about the political landscape of an enterprise. It's just flat out unfortunate. But, I am glad I got this experience so I can show others what I had to deal with and hopefully others can conquer it in the same way or even better than I have.
1 note · View note
yachtingboat · 5 years
Text
Top 100 Lurssen Yacht Topaz Renamed A+
Top 100 Lurssen Yacht Topaz Renamed A+
Currently the world’s seventh largest superyacht at a staggering 147.25m, and the 4th largest at her time of building, 2012 Lurssen launch Topaz has changed its name to A+, prompting speculation that she has a new owner.
The German-built colossus ranks highly in the Top 100 listings, and boasts a star-studded team behind her build befitting of a yacht her size. She features a magnificent exterior from Terence Disdale and interiors crafted by the celebrated Tim Heywood Design. Perhaps unsurprisingly, the formidable yacht spent four years in construction at the Lurssen shipyard.
Like most Top 100 vessels owned by royalty, not much is known about the newly christened A+ other than her basic specifications. We know that she accommodates an incredible 62 guests and up to 79 crew members, and that she cruises at 19.5 with a maximum speed of 22 knots - an impressive rate for a boat of her size.
We also know that this eight-deck megayacht leads the world records in terms of volume, with a monumental gross tonnage of 12,532 GT. She was most recently spotted in Abu Dhabi, after a stay in the Lurssen  shipyard at the end of last year for a refit or maintenance work.
Despite speculation that this name change hints that the 147.25m has changed hands from Emirati royalty, deputy prime minister of the UAE and Manchester City Football Club owner Sheikh Mansour bin Zayed al Nahnan, there is no other indication of this. Topaz/A+ has never been listed for sale, and may have only been renamed at this moment in time.
A+ is in good company within the Lurssen ranks. The shipyard have made a name for themself in the construction of gigayachts, with 136m Flying Fox having recently entered the charter market, and 142m Redwood having been spotted at the yard prior to her delivery date. Watch this space for updates!
Top 100 Lurssen Yacht Topaz Renamed A+
A+
Flying Fox
Project Redwood
0 notes
maritzaerwin · 4 years
Text
15 Best Websites to Search For Freelance Translator Jobs and Gigs
While the pandemic seems to wear off only mildly and the European Commission only starts cautiously lifting borders and travel limitations, the need for multilingual translators (translation services) is still expected to grow rapidly within this decade.
Despite the global social distancing and the dramatic decline it brought to interpersonal communication, the communication in digital space seems to thrive as more and more businesses widely switch to virtual conferencing. This particularly and primarily concerns international B2B communication, which inevitably involves documentation and in turn stimulates a considerable demand for the interpreters in the nearest future.
Perhaps, the first ones in line appear to be the medical translators. During the harsh times of the coronavirus pandemic, freelance language specialists particularly focused on healthcare became a popular profession.
While this plainly demonstrates the rise of translation jobs, the freelancers will probably be exposed to a problem of the great choice, as a number of companies will certainly hire hundreds and thousands of new talents. So, if you feel like being a great interpreter searching for additional cash or planning to become one, go ahead and apply to the world’s best translation companies.
15 Best Picks for Professional Freelance Translators in 2020
To help professional freelance translators with finding the job that would suit them the best, there is a multitude of translation companies presenting their services for a number of purposes. Those vary from plain translations into complex languages or specific technical translations to legally certified translations for big and small business affairs.
Based on five major criteria, the required accuracy of the translation, how fast the translation has to be made, compensation, customer satisfaction, and returning rate, and the need for certified professionals, the following list will help you find the best translation website offering a job for a freelance language specialist.
TheWordPoint
Gengo
DayTranslations
One-Planet
InWhatLanguage
Stepes
GTSTranslation Services
Tomedes
TransPerfect
JR Language
OneHourTranslation
Translated
DynamicLanguage
StrakerTranslations
Ulatus
1. TheWordPoint
Offering only top translation services for their customers, TheWordPoint can definitely provide a job for nearly any freelance interpreter. With the prices corresponding with the quality, the company will fairly pay for the job done in any language, from Spanish to Afrikaans, and in any area of expertise, from business and finance to healthcare and medicine or even any other professional sphere the customers can choose.
The company will definitely suit the freelancers who are ready for challenges, take their time management seriously, and possess a multitude of skills. If you do value your work highly indeed, you will be expected to demonstrate all those skills and perform at the top of your abilities. 
2. Gengo
Being somewhat smaller than TheWordPoint, Gengo can be a potential employer for those interpreters specializing in French, Japanese, Arabic, and Chinese. Offering a quality-over-all strategy, Gengo would regularly offer the freelancers the work that isn’t necessarily urgent.
Yet, you will still have to demonstrate your top skills and considerable time management as all work has to be done extremely well, with no traces of machine translation, all-natural phrasing, and, of course, error-free. In return, Gengo will offer its interpreters a rather fair compensation, considering their relatively «exotic» language focus.
3. DayTranslations
Perhaps, one of the largest in the industry, DayTranslations will certainly provide any kind of job to any kind of interpreter. The company offers a vast variety of languages and professional areas for translation, boasting a corresponding number of specialists. You will be able to work with nearly any translation job, from websites localization to legal, technical, and medical documents.
Those who admire unconventional and creative jobs can choose from audio transcripts, video interviews, and phone calls interpretation jobs. While the prices offered are somewhat lower than with the previous two companies, the company offers work in larger volumes, hence, still offering a decent compensation in the end. 
4. One-Planet
The company appears to be rather straightforward regarding its service to the customers, in a good sense, hence, the freelance translators can expect perhaps similar treatment. One-Planet will be interesting to those interpreters who like diverse work and are tech-savvy as the company specializes in such areas as translation and interpretation, as well as localization or websites and apps.
In addition, the company could be great for beginners or if you study the second or third language and would like to try some practice. Offering services and, accordingly, jobs at lower compensation, the company will provide editing work, with the freelancer tasked to make sure that the machine-translated text sounds and flows naturally.
5. InWhatLanguage
Similarly to some of the previous potential employers, InWhatLanguage will have a vast variety of jobs for you to offer. The company literally covers everything, from the written translations of business or legal documents, to interpretations of phone or video interviews and voice-overs.
Like with One-Planet, the beginners will also find themselves a suitable job as iWL offers editing machine-translated works as well. Finally, despite some relatively lower prices, the company works with larger volumes, with the customers being able to order only a particular minimum amount, which in turn ensures fair compensation.
6. Stepes
Being one of those companies covering as much as possible, Stepes can offer a fairly paid job to nearly any language specialist. Covering over 100 languages, the company focuses, mostly on written translations, covering such tasks as website and video games localization.
Yet, being loyal to their customers and highly devoted to the quality of their work, Stepes works with professionals only, hence, the job might still be challenging and interesting. As a bonus feature, the interpreters working with the company can contribute to it on a bigger scale, with Stepes offering its own peer-to-peer translation apps that can be updated by the freelance translators.
7. GTS Translation Services
Being one of the older companies in the industry, with its history spanning for about 20 years, GTSTranslations can definitely be trusted not only by the customers but also by the freelance interpreters working with the company.
The company would offer rather conventional jobs to their translators, covering mostly document translation on a vast array of areas, from business to healthcare and computer science. Despite being rather demanding deadline-wise, the company also allows and even offers machine-translated editing tasks. All of this means that a freelance interpreter of basically any level can find some fairly rewarded and relatively interesting work.
8. Tomedes
Not being the biggest or the oldest company in the industry, Tomedes is known for its fantastic support and diversity of the tasks that can be performed. Apparently, the company manages to cover a wide range of services, which means that you will certainly find a job with them even if you don’t really want to!
In addition to covering nearly every possible format of work, from documents to voice-overs and subtitles, the company already covers about 100 languages. Another big plus of this company is that whenever you have any questions, be sure that they will be addressed instantly, thanks to the company’s prompt and efficient support team. So, whatever language you are feeling well with or still study, Tomedes would be a great employer for you.
9. TransPerfect
Like many of the previous employers, TransPerfect covers a huge multitude of services, some of which the enthusiastic freelancers will find most suitable for themselves. If you feel like working with website and video games localization, tests, dubbed scripts or resumes, you will be most welcome in TransPerfect’s team of over 5,000 freelancers, most of which are native speakers.
Moreover, just as some companies overviewed above, TransPerfect offers its customers a minimum order amount, hence, most jobs will certainly be well-paid. Hence, even if you only start your interpreter career, or learn the second language from which you feel like you can translate, TransPerfect would be a great start for you!
10. JR Language
Although the company attempts to cover as many languages as possible and can boast at least 100 languages, the main focus of JR Language is placed on Spanish to English translations (and vice versa, of course). One of the company’s pleasant peculiarities is its generous reward practice. You will likely earn a lot per page of translation, however, you will have to mind the deadline. Only those who manage their time and cannot stand lateness in any form will be rewarded greatly!
11. OneHourTranslation
Being one of the most reputable translation companies on the market, OHT will likely offer its freelancers fairly high compensation and will not require you to be a highly certified professional.
However, you will have to put some serious effort into your work as the company values the quality of translation and timely delivery over everything. The company works mostly with big world businesses, many of which are legal, financial, and technology firms, so if you feel confident in those areas, you will certainly enjoy working for OneHourTranslation.
12. Translated
Being one of the companies providing certified services, Translated will gladly offer the work for licensed professionals. While the company offers mostly average market prices, they will likely provide you with the work on a constant basis, as visa and other document translations are required regardless of the time of the year, the overall financial situation around the world, or global shifts in technology or business practice. If you have proper training, ready for a steadily high workload, Translated will be a great choice for you.
13. DynamicLanguage
Being one of the oldest companies in the industry with its history spanning for about 30 years, DynamicLanguage managed to create and maintain a very big database of freelance interpreters. Aside from the traditional written translation, the company works with voice-overs, localization, transcription, cultural consulting, e-learning, and more.
What is more is that DynamicLanguage has perhaps one of the widest arrays of language variety, covering over 150 languages and dialects. So, if you specialize, for instance, in Pinghua Chinese or are a native speaker, you will be most welcomed and fairly rewarded in DynamicLanguage.
14. StrakerTranslations
This company perhaps is one of those few that manages to hold the market’s average position throughout many years (in a good sense, of course) and preserve its reputation as an optimal choice when thinking about price and quality of service and translation. While offering their customers prices somewhat higher than the market average, freelance translators can expect similar compensation for their work.
Moreover, the company appears to apply a «better safe than sorry» approach and focuses mostly on hiring business translators in a wide variety of languages. So, if you feel like you need some spare cash done over a weekend, you can certainly rely on such an employer as StrakerTranslations.
15. Ulatus
Last, but not the least, Ulatus is a truly professional translation company constantly searching for licensed interpreters. In return, the company will offer you highly demanded jobs, such as CV and resume translations, official technical and medical documents interpretation, and many more. Being a licensed specialist with the company employing over 3,000 similar professionals, you will certainly be fairly rewarded.
This list is, of course, not limited to those companies and there are many more to consider. Yet, the idea is that working as a freelance translator certainly cannot be bad, considering that such a profession is one of potentially the best choices in 2020. There is enough work online for language specialists at any level.
If you possess enough skill to read a book in another language, you will certainly be able to translate a paper or a document into that language. Yet, in case if you feel like you’re not that strong in translating into another language, you can always try to translate from another language.
Localization services become more and more demanded on the market nowadays and are extremely flexible regarding the potential market. Many translation companies search for local language specialists to adjust all kinds of content, from resume to software code, to the language of your country. So, take a look around, the opportunities are limitless!
Good Times and a Perfect Opportunity for Interpreters
It is very clear that despite the pandemic, the workforce is still needed, in rather a great volume, with a similarly large number of companies to choose from. The list provided above is only a tip of the iceberg and you can search for more companies if you would like, but those presented here are some of the best and are constantly in search of talents.
Whether you are a beginning interpreter, a serious certified professional with a number of languages behind your back, or just thinking about starting an interpreter career, be sure, you will be needed. So, if you feel like working with language and translation from home until the end of pandemic and further, go ahead and apply! The companies are many and the opportunities are limitless.
The post 15 Best Websites to Search For Freelance Translator Jobs and Gigs appeared first on CareerMetis.com.
15 Best Websites to Search For Freelance Translator Jobs and Gigs published first on https://skillsireweb.tumblr.com/
0 notes
icerats · 4 years
Text
Warnings: Anxiety Attacks, Fear of death, accidental fearplay, Mention of torture (no torture actually takes place)
100 G/T Prompts Master List
Borrowers, Trauma, & Pasta: Chapter 1
(6.Borrow)
Ian's eyes glanced up at the counter looming over him. Borrowing was always intimidating for someone so small. Especially alone. His younger sister, Elissa, normally went with him, but she had gotten more and more sick as the days progressed. It was too dangerous for her to borrow in her feverish state. 
As his fishing hook lodged into the counter, he hoped he could get enough food for her. The stupid human living here was  always so unpredictable, making borrowing more difficult. Ian's muscles screamed in anguish as he forced himself to climb the rope. He already felt weak and exhausted before he even started to climb. When he finally reached the countertop, he collapsed in exhaustion. As thick beads of sweat dripped from his forehead, he allowed himself a few minutes of rest. 
Once he got his bearings he forced himself to get up, his knees shaking at the pure notion of it.
'I have to do this!' he told himself. 'Elissa is counting on me!'
Ian's eyes skimmed the countertop, looking for food that he could easily grab without it being noticed. Just as his eyes landed on an open box of cereal, Ian felt his heart drop.
Fear filled him as he heard the door open. Why did the stupid human have to be home now, he was supposed to be at the beach with his friends longer! It hadn't even been 20 minutes since the bean left the house!
Ian quickly tried to find a place to hide. But it was too late. The bean's eyes had already landed on him. As the giant stared at him in shock, Ian's hand quickly shot into his bag. 
Pulling out a thumbtack, he pointed it at the general direction of the human. If he was going to die, it wasn't going to be without a fight. 
"I-I'm warning you," Ian's voice trembled, "I'm armed!"
~
Will was having a shitty day. He had been excited to go to the beach. His best friend had given him a surfboard for his birthday awhile ago and he had been dying to try it out. The second he had gotten to the beach, it started raining. Then his parents had the audacity to call him as he was driving home and start harassing him about 'betraying god' and 'worshipping the devil'. He rolled his eyes, he thought the whole point of disowning your child was so you didn't have to talk to them anymore. 
And now, after all this shit, he had to deal with a 4 inch person on his countertop. Great. 
"I-I'm warning you," the tiny man said, obviously attempting to seem threatening,"I'm armed."
Will snorted when he saw that what he was 'armed' with was a thumbtack.
"Alright little dude," He said in amusement, "and what exactly are you planning on doing with your dangerous weapon?"
When the tiny being spoke again, his voice trembled worse than before. "D-Don't c-come an-any c-closer."
Will took a step forward and the tiny person visibly flinched. "Uhuh, and what are you going to do if I do go closer? This is my house, you know."
The thumb tack he was holding was trembling in his hands. "I-I'll stab you!" he yelled, surprising Will how loud that tiny being could be. "I'm not going to let you kill me without a fight!"
Will's brows furrowed in confusion as he processed what the guy just said. Did this dude really think he was going to kill him like some sort of monster? Then Will realized. His shaky voice, his trembling hands, the little dude was terrified of him. Will realized how scary this must be for him to have some stranger so giant so close to you, without knowing their intentions. 
Will took a step back, and the guy trembling on the counter stared at him with bewilderment. "Listen," he said in a tone that he hoped was comforting, "I'm not going to kill you dude. Relax."
Instead of calming the little dude down, the opposite effect happened. Instead, the dude seemed pissed off. 
"So what are you going to do then!?" he screamed at him, anger replacing the fear in his eyes. "Imprison me like some sort of twisted pet!? Well fuck off you stupid giant! I'm not going to let you do that! If that's your plan you better kill me now or I'll do it myself!"
Will took another step back. "Please don't do that dude. I'm not going to imprison you! What do you think I am, some sort of monster?"
One look at the guy's face told Will the answer to that. 
"Well I'm not," Will continued. "I promise, I'm not going to hurt you in any way."
Now the guy seemed even more pissed off. God, what did he do to this tiny dude to piss him off so much?
"Hey asswipe! I may be small compared to you, but I'm not an idiot! I'm not going to fall for your pretending to be nice act! I know what you giants are like!"
"I'm not doing that I swea-"
"Quit with your fucking bullshit! If you giants were kind, my parents wouldn't be dead!"
That immediately shut Will up. God, what had this poor guy been through? 
"Listen," Will tried again, "I'm so sorry for  what my kind did to you, but I promise I would never do that to you."
"God would you just fucking shut up already!" The man screamed, radiating with anger. "Why do all of you giants have to be so fucking fake!? Fuck this, I'm not going to let you torture me to death!" 
Before Will could stop him, the man started sprinting towards the edge of the counter. Luckily, the man fainted right before he reached the edge. His thumbtack rolled off the counter and fell to the floor with a clink. 
What the hell?
Will picked up the thumbtack and shoved it in his pocket, then cautiously walked over to him trying to figure out why he passed out. When Will got a closer look, he immediately knew why. From far away he wasn't able to see it. But up close he saw how frail the man was. He looked like he hadn't had a proper meal in his entire life. Then Will realized, that's why he was on the counter. Instantly guilt filled him as he realised that the poor dude probably was looking for food. 
Will glanced over at the stale cereal he had forgotten to close the night before. Nope, no way was this dude's first decent meal gonna be shitty cereal. No, he was going to make the best meal ever as an apology for scaring this poor dude so badly. But what to make? He sighed and resolved to ask his best friend for advice, and pulled his phone out to text her. 
[Me] Hey Liv, I got an important question.. 
[Olivia] What's up dum dum, need some relationship advice?
Will glanced at the guy on his counter and then back to his phone.
[Me] Um kind of?
[Olivia] God, Will. What the fuck did you do?
[Me] Ummmm, I fucked up my first impression with him really badly. I was planning on making some food to make up for it. 
[Olivia] ... 
[Olivia] Of course you fucking did.
[Me] Livvvvvvv, I have no clue what to make! You gotta help me. 
[Olivia] Just do his favorite food dude. 
[Me] I just met him! I don't even know what he likes!
[Olivia] Just make some fucking pasta. Everyone likes pasta. 
[Me] You're only saying that because that's your girlfriend's favorite food!
[Olivia] Yeah? So what? You asked for advice and you got it.
[Olivia] ooh she's calling me. Ttyl! Hope you don't completely ruin this relationship like you did all the other ones!
Will angrily shoved his phone back in his pocket. God, why did he think texting Olivia was a good idea? He sighed, and decided to follow her advice anyway. If he fucked this up he could at least blame it on her then. 
Will glanced back at the tiny person resting on the counter. He showed no signs of waking. It was strange seeing someone who was so angry and afraid earlier look so peaceful. 
A small smile graced Will's lips as he gently picked him up. He wasn't sure what to do with him. He couldn't just leave him on the counter, Will was afraid that he might try and jump again. But Will also knew this person would be terrified if he woke up in his hands. 
Will bit his lip and decided to set him at the very back of the counter and keep an eye on him. He would make sure the person didn't try to jump again. 
For the next several minutes, Will kept an eye on him as he made some pasta. After he was done, he realized he had no clue what to dish it up on. It wasn't like he just had tiny plates around. 
Glancing around the kitchen, he saw some plastic water bottles and improvised. He took the lid from one of the bottles and decided it could work as a tiny plate. He then took a single bowtie shaped noodle and placed it on the lid. Then covered it with a tiny amount of sauce. 
Will pushed the bottle cap near his guest, took several steps back so he wouldn't startle the dude again, and then waited for him to wake up. 
~
In all honesty, after Ian passed out he didn't expect to wake up again. He spent several minutes laying on the counter, pretending to be asleep. He didn't want to open his eyes and be forced to accept that this terrifying nightmare was all too real. He lied there, heart beating far too fast in his chest, wondering what his fate was. 
God, why didn't the giant just kill him already!? Tears started to pool in his eyes as he realized the answer. The giant wanted to torture him. Of course he fucking did. It's no fun hurting someone when they're unconscious. Maybe, just maybe if he pretended to sleep awhile longer he could buy himself more time. He knew if he got up there would be no escape, he knew the giant would make sure of that. 
God poor Elissa, what was she going to do without him? She couldn't borrow in her state! If she did, she would definitely be caught! Oh no, he could handle dying but not Elissa. He hoped she was still in her room. She wouldn't be stupid enough to go out looking for him, would she?
"I know you're awake." a booming voice said somewhere around him. 
God why did his torture have to start now? Ian's heart beaded faster in his chest. He didn't want to be tortured! All the horror stories his parents had told him flashed through his mind. At least his parents had a quick death, Ian knew he wasn't going to get that. If the giant was that merciful, Ian would have been with his parents by now. 
"You don't have to pretend to be asleep you know. I know you don't believe me but I promise I would never harm you."
God, please shut up. Ian whimpered and prayed to a god he didn't even believe in. 
Please, just go away. 
"Listen, I know you're afraid of me, but you have no reason to be. I promise."
Your promises mean nothing. 
"I want to apologize for scaring you. I deeply regret how I acted earlier."
Stop lying. 
"Please, just open your eyes. I want to talk to you. Please."
Are you going to torture me if I don't?
"Okay it's fine, you don't have to. I'll just give you some space."
Ian heard footsteps retreating. But he wasn't fooled. The giant wasn't just going to leave him alone. They never did. 
For several minutes, Ian lied there, terrified on the counter. 
~
Elissa was worried. Why wasn't her brother back yet? He never took this long! She forced herself to get up from her bed (a bunch of cotton balls bundled together with some string). She knew Ian told her never to go out, but what if he was in danger? Oh god, did the giant capture him!
Tears sprang to her eyes. Please no, please don't let him be captured! She couldn't lose him too! Ian was all she had left. 
Elissa took a rocky step forward, and brushed her grimy blonde hair away from her face. She felt horrible, so weak, just from getting up. But she had to do this. Ian needed her. 
She peered out from the crack in the wall. The coast was clear, for now. With her heart hammering in her chest she cautiously wandered around the house, searching desperately for her brother. 
Where would he be? He would go to the kitchen right? That's where they were taught to look for food first. Please, Elissa prayed, please let Ian be there. 
When she walked into the kitchen, she let out a horrified gasp. The bean was home, and he was staring at the counter. Why would he be staring at it unless.. Oh god, the bean found Ian! No, this couldn't be happening. She couldn't lose him, not after her parents. 
So Elissa did the most reckless thing she had ever done in her life. She begged. 
"Hey!" she yelled at the bean, who turned around to stare at her in shock. Elissa was terrified, and it felt like her throat was on fire, but she needed to do this. "Please Mr. Giant! Please don't hurt him! I'll do anything! I'm begging you, please!"
Before the bean said a single word she heard her brother yelling from the counter. 
"God, El! What the fuck are you doing!? Get out of here!"
She didn't. 
The giant stepped closer. Elissa didn't move. 
"Get away from her!" she heard her brother screaming at the giant. 
The giant didn't listen. 
"Please, I'll do whatever you want! Don't hurt her!"
The giant moved closer, and Elissa didn't move as he scooped her up in his hands. 
"Let her go you monster!" her brother screamed. "Don't kill her! Please don't hurt her! I'll do whatever you want! Please!"
Elissa tried to stay still as she trembled in the giant's hands. This was it, she was going to die. She just hoped her brother would be alright. 
But the giant didn't kill her, instead he gently let her down on the counter next to her brother. Both of the borrowers stared at the giant in shock as they hugged eachother. 
"So um," the giant said awkwardly, "You want some pasta?"
Wait, what?
Part 2
65 notes · View notes